本文作者:合肥工业大学 管理学院 钱洋 email:1563178220@qq.com 内容可能有不到之处,欢迎交流。

未经本人允许禁止转载
#原因
今天晚上,老师在看LDA数学八卦的时候,问我一个问题,如下图所示:

这里写图片描述

这个多项式分布的参数,采用极大估计是怎么求的呢?当时想了想还真不知道,于是在网上找了资料,学习了一下,特此记录。

#公式推导
很多情况下,假定一个变量XXXkkk个状态,其中k>2k>2k>2,每个状态假定的可能性为p1,p2,⋯ ,pkp_{1},p_{2},\cdots ,p_{k}p1,p2,,pk,且∑i=1kpi=1\sum _{i=1}^{k}p_{i}=1i=1kpi=1,独立进行nnn次实验,用n1,n2,⋯ ,nkn_{1},n_{2},\cdots ,n_{k}n1,n2,,nk表示每个状态发生的次数,发生的次数服从多项式分布:
p(n1,n2,⋯ ,nk∣p1,p2,⋯ ,pk)=n!∏i=1kni!∏i=1kpinip\left ( n_{1},n_{2},\cdots ,n_{k}|p_{1},p_{2},\cdots ,p_{k} \right )=\frac{n!}{\prod _{i=1}^{k}n_{i}!}\prod _{i=1}^{k}p_{i}^{n_{i}}p(n1,n2,,nkp1,p2,,pk)=i=1kni!n!i=1kpini

下面采用极大似然求解:

L(p1,p2,⋯ ,pk)=log(n!∏i=1kni!∏i=1kpini)L\left ( p_{1},p_{2},\cdots ,p_{k} \right )=log\left (\frac{n!}{\prod _{i=1}^{k}n_{i}!}\prod _{i=1}^{k}p_{i}^{n_{i}} \right )L(p1,p2,,pk)=log(i=1kni!n!i=1kpini)
=log(n!)−∑i=1klognk!+∑i=1klogpk=log\left ( n! \right )-\sum _{i=1}^{k}logn_{k}!+\sum _{i=1}^{k}logp_{k}=log(n!)i=1klognk!+i=1klogpk

对于有约束条件的极值求解问题可使用拉格朗日乘法:
Lagrange(p1,p2,⋯ ,pk,λ)=L(p1,p2,⋯ ,pk)−λ(∑i=1kpi−1) Lagrange\left ( p_{1},p_{2},\cdots ,p_{k},\lambda \right )=L\left ( p_{1},p_{2},\cdots ,p_{k} \right )-\lambda\left ( \sum _{i=1}^{k}p_{i}-1 \right ) Lagrange(p1,p2,,pk,λ)=L(p1,p2,,pk)λ(i=1kpi1)

求导(计算梯度):
∂Lagrange(p1,p2,⋯ ,pk,λ)∂pi=nipi−λ\frac{\partial Lagrange\left ( p_{1},p_{2},\cdots ,p_{k},\lambda \right )}{\partial p_{i}}=\frac{n_{i}}{p_{i} }-\lambdapiLagrange(p1,p2,,pk,λ)=piniλ

进而有:
pi=niλp_{i}=\frac{n_{i}}{\lambda }pi=λni

由于
∑i=1kniλ=1\sum _{i=1}^{k}\frac{n_{i}}{\lambda }=1i=1kλni=1

得到:
λ=n\lambda=nλ=n

进而有:
pi^=nin\hat{p_{i}}=\frac{n_{i}}{n}pi^=nni

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐