混合高斯模型和EM算法
一、单个一维高斯参数学习
数据集X={ x 1 , x 2 . . . . . . . x N x_1,x_2.......x_N x1,x2.......xN},参数为θ={μ, σ 2 σ^2 σ2},图像为:
一维高斯函数的分布如下所示:
p ( x ) = 1 2 π σ e x p ( 1 2 σ 2 ( x − μ ) 2 ) (1.1) \begin{aligned} p(x)=\frac{1}{\sqrt {2π}σ}exp(\frac{1}{2σ^2}(x-μ)^2) \tag{1.1}\\ \end{aligned} p(x)=2πσ1exp(2σ21(x−μ)2)(1.1)
我们通过极大似然法来求解高斯分布的参数θ,即μ和 σ 2 σ^2 σ2。
我们可以通过数据集直接得到log似然函数:
P ( X ∣ θ ) = ∑ i = 1 N l o g 1 2 π σ e x p ( 1 2 σ 2 ( x i − μ ) 2 ) = ∑ i = 1 N ( − 1 2 l o g ( 2 π ) − l o g σ − 1 2 σ 2 ( x i − μ ) 2 ) (1.2) \begin{aligned} P(X|θ)=&\displaystyle\sum_{i=1}^{N} log\frac{1}{\sqrt {2π}σ}exp(\frac{1}{2σ^2}(x_i-μ)^2) \\ &=\displaystyle\sum_{i=1}^{N} (-\frac{1}{2}log(2π)-logσ-\frac{1}{2σ^2}(x_i-μ)^2)\tag{1.2} \end{aligned} P(X∣θ)=i=1∑Nlog2πσ1exp(2σ21(xi−μ)2)=i=1∑N(−21log(2π)−logσ−2σ21(xi−μ)2)(1.2)
得到了对数似然函数的表达式,我们就可以根据求导为零得到函数的最优解,并且解出参数的最优值。
例:我们这边求一个μ。
∂ P ( X ∣ θ ) ∂ μ = ∑ i = 1 N ( x i − μ ) = 0 (1.3) \begin{aligned} \frac{\partial P(X|θ)}{\partial μ}=\displaystyle\sum_{i=1}^{N}(x_i-μ)=0 \tag{1.3}\\ \end{aligned} ∂μ∂P(X∣θ)=i=1∑N(xi−μ)=0(1.3)
解出
μ = ∑ i = 1 N x i N (1.4) \begin{aligned} μ=\frac{\displaystyle\sum_{i=1}^{N}x_i}{N} \tag{1.4}\\ \end{aligned} μ=Ni=1∑Nxi(1.4)
二、单个D维高斯分布的参数求解问题数据集X={ x 1 , x 2 . . . . . . . x N x_1,x_2.......x_N x1,x2.......xN},参数为θ={μ, Σ \Sigma Σ},图像为:
我这边只给出2维的高斯分布图,再高维的不能进行可视化了
D维高斯函数的分布如下所示:
p ( x ) = 1 ( 2 π ) D 2 ∣ Σ ∣ 1 2 e x p ( − 1 2 ( x − μ ) T Σ − 1 ( x − μ ) ) (2.1) \begin{aligned} p(x)=\frac{1}{(2π)^\frac{D}{2}|\Sigma|^\frac{1}{2}}exp(-\frac{1}{2}(x-μ)^T\Sigma^{-1}(x-μ)) \tag{2.1}\\ \end{aligned} p(x)=(2π)2D∣Σ∣211exp(−21(x−μ)TΣ−1(x−μ))(2.1)
我们通过极大似然法来求解高斯分布的参数θ,即μ和 Σ \Sigma Σ。
首先写出似然函数:
P ( X ∣ θ ) = ∏ i = 1 N p ( x i ∣ θ ) \begin{aligned} P(X|θ)=\displaystyle\prod_{i=1}^{N} p(x_i|θ) \end{aligned} P(X∣θ)=i=1∏Np(xi∣θ)
他所对应的对数似然函数为:
P ( X ∣ θ ) = ∑ i = 1 N l o g p ( x i ∣ θ ) (2.2) \begin{aligned} P(X|θ)=\displaystyle\sum_{i=1}^{N} logp(x_i|θ) \tag{2.2}\\ \end{aligned}