高斯分布/概率分布总结

  • Post author:
  • Post category:其他




频率派——统计机器学习

频率派认为



θ

\theta






θ





是未知的变量,



X

X






X





服从概率分布,然后通过极大似然估计求参。

似然:



P

(

X

θ

)

P(X|\theta)






P


(


X





θ


)





,X是确定的,而



θ

\theta






θ





是变量,它描述对于不同的



θ

\theta






θ







X出现的概率是多少

。所以我们需要最大化似然函数



P

(

X

θ

)

P(X|\theta)






P


(


X





θ


)





,来求出最适合的参数。



高斯分布

在实际生活中,很多问题的数据可以被建模成

包含一定噪声的高斯分布模型


高斯分布模型是具有如下概率分布的模型:



θ

:

(

u

,

o

)

\theta:(u,o)






θ




:








(


u


,




o


)









p

(

x

θ

)

=

1

2

Π

e

x

p

(

x

u

)

2

2

o

2

p(x|\theta)=\frac{1}{\sqrt{2Π}}exp^{-\frac{(x-u)^2}{2o^2}}






p


(


x





θ


)




=



































































1





















e


x



p


























2



o









2






















(


x





u



)









2






































,它代表随机变量



x

i

x_i







x










i





















取不同值的概率大小,u表示高斯分布的均值,o代表分布的标准差。

假设有一批n个样本的数据服从高斯分布,



d

a

t

a

=

(

x

1

,

x

2

.

.

.

x

n

)

n

,

p

data=(x_1,x_2…x_n)_{n,p}






d


a


t


a




=








(



x










1


















,





x










2






















x










n



















)











n


,


p






















每个



x

i

x_i







x










i





















的似然函数是



p

(

x

i

θ

)

p(x_i|\theta)






p


(



x










i





















θ


)





,它表达每个样本在不同



θ

\theta






θ





下的出现的概率。

那么所有data的对数似然是



l

o

g

P

(

X

θ

)

=

l

o

g

i

=

1

n

P

(

x

i

θ

)

=

i

=

1

n

l

o

g

P

(

x

i

θ

)

=

l

o

g

1

2

Π

e

x

p

(

x

u

)

2

2

o

2

logP(X|\theta)=log\prod_{i=1}^nP(x_i|\theta)=\sum_{i=1}^nlogP(x_i|\theta)=\sum log\frac{1}{\sqrt{2Π}}exp^{-\frac{(x-u)^2}{2o^2}}






l


o


g


P


(


X





θ


)




=








l


o


g

















i


=


1









n




















P


(



x










i





















θ


)




=





















i


=


1









n




















l


o


g


P


(



x










i





















θ


)




=













l


o


g





























































1





















e


x



p


























2



o









2






















(


x





u



)









2







































下面我们需要极大化似然函数来求参



θ

(

方差,标准差

)

\theta:(方差,标准差)






θ





(


方差,标准差


)










a

r

g

m

a

x

l

o

g

i

=

1

n

P

(

x

i

θ

)

argmaxlog\prod _{i=1}^nP(x_i|\theta)






a


r


g


ma


x


l


o


g

















i


=


1









n




















P


(



x










i





















θ


)





等价于

极小化负对数似然





m

i

n

:

l

o

g

i

=

1

n

P

(

x

i

θ

)

min:-log\prod_{i=1}^n P(x_i|\theta)






min




:











l


o


g

















i


=


1









n




















P


(



x










i





















θ


)





,简写:



m

i

n

:

l

o

g

i

=

1

n

P

(

x

i

)

=

i

=

1

n

l

o

g

k

K

p

k

y

=

i

=

1

n

k

=

1

K

y

k

l

o

g

p

k

min:- log\prod_{i=1}^nP(x_i)=-\sum_{i=1}^n log\prod_k^K p_k^y=-\sum_{i=1}^n \sum_{k=1}^K y_k*logp_k






min




:











l


o


g

















i


=


1









n




















P


(



x










i


















)




=


























i


=


1









n




















l


o


g
















k








K





















p










k








y




















=


























i


=


1









n

































k


=


1









K





















y










k





























l


o


g



p










k






















其中



P

(

x

i

)

=

k

=

1

K

p

k

y

P(x_i)=\prod_{k=1}^Kp_k^{y}






P


(



x










i


















)




=





















k


=


1









K





















p










k









y
























注意:




p

k

代表该样本预测为类别

k

的概率

p_k代表该样本预测为类别k的概率







p










k


















代表该样本预测为类别


k


的概率





, 本质上等于交叉熵损失函数



关于高斯分布的理解:

我们假设数据服从高斯分布,开始并不知道分布的均值和方差,那我们就需要求这个数据的均值和方差,那怎么求呢?

我们可以通过算法(EM,感知机)来用模型去拟合数据,模型提供预测概率分布,数据服从真实概率分布,随着模型的训练,预测概率分布在逐渐拟合真实概率分布,那如何衡量两个分布的差异?我们用到KL散度,似然函数,交叉熵。接下来我们需要使得两个分布更加接近, 那就需要最小化两个分布的差异(最小化交叉熵…)。模型参数在不断更新,在这个过程中(最小化损失函数)也是在最大化每个预测样本的似然函数,使每个样本更接近真实分布。本质上是在更新预测概率分布的均值和方差,直到最后收敛,我们可以找到最接近真实概率分布的均值和方差了。

如果有两个类别的数据,那么这两个类别的数据分布是不一样的,我们最终要求的是两个高斯分布分别的均值和方差。

模型的EM训练过程,直观的来讲是这样:我们通过观察样本的真实概率值和模型预测概率值的接近程度,来判断一个模型是否拟合良好。然后我们通过调整模型以让新模型更适配采样的真实概率值。反复迭代这个过程很多次,直到两个概率值非常接近时,我们停止更新并完成模型训练。

现在我们要将这个过程用算法来实现,所使用的方法是模型生成的数据来决定似然值,即通过模型来计算数据的期望值。通过更新参数μ和σ来让期望值最大化。这个过程可以不断迭代直到两次迭代中生成的参数变化非常小为止。该过程和k-means的算法训练过程很相似(k-means不断更新类中心来让结果最大化),只不过在这里的高斯模型中,我们需要同时更新两个参数:分布的均值和标准差.



版权声明:本文为weixin_42887772原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。