概率论和数理统计是一对兄弟:概率论负责在已知分布函数的情况下研究样本;数理统计负责在已知样本的情况下,反推分布函数的特性。假设我们获取了样本数据,同时知道分布函数的大概形式,只是不知道分布函数的参数,那么可以使用数理统计中的点估计方法来估计分布函数的参数。点估计包括矩估计和极大似然估计。极大似然估计是很重要的点估计方法。
GMM模型即高斯混合模型,根据大数定律,在日常生活中,很多概率事件都服从高斯分布,因此GMM模型可以应用在这些概率事件的分析上。GMM模型由K个独立的高斯分布混合而成。我们可以这样直观求解GMM模型:
1、定义GMM模型为P(x,θ)=∑Kk=1pk12π√σke−|x−μk|22σ2k=∑Kk=1piN(x,μk,σk)其中θ=p1,p2,...,μ1,μ2,...,σ1,σ2,...,pi是K个独立高斯分布的权重。我们需要求取这三类参数。它们可以随机分配初值。不同的初值可能有不同结果,都是满足条件的。
2、这里有个很不同的地方,就是优化要加约束条件∑Kk=1pk=1,GMM的似然函数是
log∏n=1N[∑k=1KpkN(xn|μk,σk)]+λ[∑k=1Kpk−1]=∑n=1Nlog∑k=1KpkN(xn|μk,σk)+λ[∑k=1Kpk−1]
,其中xn是GMM曲线中第n个点的样本值。 3、对μk求导得到
∑n=1NpkN(xn|μk,σk)1σ2k(xn−μk)∑Kk=1pkN(xn|μk,σk)=0∑n=1NpkN(xn|μk,σk)(xn−μk)∑Kk=1pkN(xn|μk,σk)=0
因为我们这里不关心σ,所以可以当做一个常数消去。令γnk=pkN(xn|μk,σk)∑Kk=1pkN(xn|μk,σk),则有∑n=1Nγnkxn=μk∑n=1Nγnk→μk=∑Nn=1γnkxn∑Nn=1γnk
γnk是根据当前的参数θ和样本xn算出来的数值,这是各个分量的统计量。很明显直接把当前的μk代入后,拿到了一个新的μk值,这个等式两边的μk并不是一个东西。数学家证明了这样更新参数可以最优化分布函数。 继续对σk求导有
∑n=1Npk[−1/σN(xn|μk,Σk)+N(xn|μk,Σk)(xn−μk)21/σ3]∑Kk=1pkN(xn|μk,Σk)⋅2=0∑n=1Nγnk[−1+(xn−μk)21/σ2]=0→σ2=∑Nn=1γnk(xn−μk)2∑Nn=1γnk
注意由于γnk前面还有一个关于n的求和,所以不能约掉。 最后求导pk得到
∑n=1NN(xn|μk,σk)∑Kk=1pkN(xn|μk,σk)+λ=0∑n=1NpkN(xn|μk,σk)∑Kk=1pkN(xn|μk,σk)=−λpk∑n=1Nγnk=−λpk
这里的技巧是,对k求和,等到∑k=1K∑n=1Nγnk=∑n=1N∑Kk=1pkN(xn|μk,σk)∑Kk=1pkN(xn|μk,σk)=N=−λ∑k=1Kpk=−λλ=−N
代入原式得到pk=∑Nn=1γnkN
不得不感叹,还没到证明部分,这些数学技巧都这么炫目啊。