本文作者:合肥工业大学 管理学院 钱洋 email:1563178220@qq.com 内容可能有不到之处,欢迎交流。
未经本人允许禁止转载。
#原因
今天晚上,老师在看LDA数学八卦的时候,问我一个问题,如下图所示:
这个多项式分布的参数,采用极大估计是怎么求的呢?当时想了想还真不知道,于是在网上找了资料,学习了一下,特此记录。
#公式推导
很多情况下,假定一个变量
X
X
X有
k
k
k个状态,其中
k
>
2
k>2
k>2,每个状态假定的可能性为
p
1
,
p
2
,
⋯
 
,
p
k
p_{1},p_{2},\cdots ,p_{k}
p1,p2,⋯,pk,且
∑
i
=
1
k
p
i
=
1
\sum _{i=1}^{k}p_{i}=1
∑i=1kpi=1,独立进行
n
n
n次实验,用
n
1
,
n
2
,
⋯
 
,
n
k
n_{1},n_{2},\cdots ,n_{k}
n1,n2,⋯,nk表示每个状态发生的次数,发生的次数服从多项式分布:
p
(
n
1
,
n
2
,
⋯
 
,
n
k
∣
p
1
,
p
2
,
⋯
 
,
p
k
)
=
n
!
∏
i
=
1
k
n
i
!
∏
i
=
1
k
p
i
n
i
p\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,⋯,nk∣p1,p2,⋯,pk)=∏i=1kni!n!i=1∏kpini
下面采用极大似然求解:
L
(
p
1
,
p
2
,
⋯
 
,
p
k
)
=
l
o
g
(
n
!
∏
i
=
1
k
n
i
!
∏
i
=
1
k
p
i
n
i
)
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=1∏kpini)
=
l
o
g
(
n
!
)
−
∑
i
=
1
k
l
o
g
n
k
!
+
∑
i
=
1
k
l
o
g
p
k
=log\left ( n! \right )-\sum _{i=1}^{k}logn_{k}!+\sum _{i=1}^{k}logp_{k}
=log(n!)−i=1∑klognk!+i=1∑klogpk
对于有约束条件的极值求解问题可使用拉格朗日乘法:
L
a
g
r
a
n
g
e
(
p
1
,
p
2
,
⋯
 
,
p
k
,
λ
)
=
L
(
p
1
,
p
2
,
⋯
 
,
p
k
)
−
λ
(
∑
i
=
1
k
p
i
−
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=1∑kpi−1)
求导(计算梯度):
∂
L
a
g
r
a
n
g
e
(
p
1
,
p
2
,
⋯
 
,
p
k
,
λ
)
∂
p
i
=
n
i
p
i
−
λ
\frac{\partial Lagrange\left ( p_{1},p_{2},\cdots ,p_{k},\lambda \right )}{\partial p_{i}}=\frac{n_{i}}{p_{i} }-\lambda
∂pi∂Lagrange(p1,p2,⋯,pk,λ)=pini−λ
进而有:
p
i
=
n
i
λ
p_{i}=\frac{n_{i}}{\lambda }
pi=λni
由于
∑
i
=
1
k
n
i
λ
=
1
\sum _{i=1}^{k}\frac{n_{i}}{\lambda }=1
i=1∑kλni=1
得到:
λ
=
n
\lambda=n
λ=n
进而有:
p
i
^
=
n
i
n
\hat{p_{i}}=\frac{n_{i}}{n}
pi^=nni