EM算法:入门案例
概率分布
4种实验结果 | \(E_1\) | \(E_2\) | \(E_3\) | \(E_4\) |
---|---|---|---|---|
记录它们发生的次数 | \(y_1\) | \(y_2\) | \(y_3\) | \(y_4\) |
记录次数结果 | 125 | 18 | 20 | 34 |
4种结果发生的概率 | \(\frac{1}{2}-\frac{\theta}{4}\) | \(\frac{1}{4}-\frac{\theta}{4}\) | \(\frac{1}{4}+\frac{\theta}{4}\) | \(\frac{\theta}{4}\) |
求\(\theta\)的估计值?
法 1:采用最大似然估计
\[L(\theta) = \frac{(y_1+y_2+y_3+y_4)!}{y_1! y_2! y_3!y_4!}(\frac{1}{2}-\frac{\theta}{4})^{y_1}(\frac{1}{4}-\frac{\theta}{4})^{y_2}(\frac{1}{4}+\frac{\theta}{4})^{y_3}(\frac{\theta}{4})^{y_4} = C\times (\frac{1}{2}-\frac{\theta}{4})^{y_1}(\frac{1}{4}-\frac{\theta}{4})^{y_2}(\frac{1}{4}+\frac{\theta}{4})^{y_3}(\frac{\theta}{4})^{y_4}
\]
\[\ln L(\theta) = \ln [C\times (\frac{1}{2}-\frac{\theta}{4})^{y_1}(\frac{1}{4}-\frac{\theta}{4})^{y_2}(\frac{1}{4}+\frac{\theta}{4})^{y_3}(\frac{\theta}{4})^{y_4}]
\]
\[\ln L(\theta) = \ln C+y_1\ln (\frac{1}{2}-\frac{\theta}{4}) + y_2\ln (\frac{1}{4}-\frac{\theta}{4})+y_3\ln (\frac{1}{4}+\frac{\theta}{4})+y_4 \ln (\frac{\theta}{4})
\]
\[\frac{\partial \ln L(\theta) }{\partial\theta}=-\frac{y_1}{2-\theta}-\frac{y_2}{1-\theta}+\frac{y_3}{1+\theta}+\frac{y_4}{\theta}=0
\]
\[-\frac{125}{2-\theta}-\frac{18}{1-\theta}+\frac{20}{1+\theta}+\frac{34}{\theta}=0
\]
上面估计\(\theta\)的方程是一个关于\(\theta\)的一元三次方程,问题是不容易求解。
问题转化求解:EM算法
引入隐藏变量\(Z\),从新对概率分布进行分配。
4种实验结果 | \(E_1\) | \(E_2\) | \(E_3\) | \(E_4\) | ||
---|---|---|---|---|---|---|
记录它们发生的次数 | \(y_1\) | \(y_2\) | \(y_3\) | \(y_4\) | ||
记录次数结果 | 125 | 18 | 20 | 34 | ||
4种结果发生的概率 | \(\frac{1}{2}-\frac{\theta}{4}\) | \(\frac{1}{4}-\frac{\theta}{4}\) | \(\frac{1}{4}+\frac{\theta}{4}\) | \(\frac{\theta}{4}\) | ||
隐藏变量 | \(z_1\) | \(z_2\) | \(z_3\) | \(z_4\) | \(z_5\) | \(z_6\) |
发生的概率 | \(\frac{1}{4}-\frac{\theta}{4}\) | \(\frac{1}{4}\) | \(\frac{1}{4}-\frac{\theta}{4}\) | \(\frac{\theta}{4}\) | \(\frac{1}{4}\) | \(\frac{\theta}{4}\) |
存在的关系为:\(y_1=z_1+z_2\; ;y_2=z_3\;;y_3=z_4+z_5\;;y_4=z_6\)
从新计算似然函数
\[L(\theta) = \frac{(z_1+z_2+z_3+z_4+z_5+z_6)!}{z_1! z_2! z_3!z_4!z_5!z_6!}(\frac{1}{4}-\frac{\theta}{4})^{z_1} (\frac{1}{4})^{z_2}(\frac{1}{4}-\frac{\theta}{4})^{z_3}(\frac{\theta}{4})^{z_4} (\frac{1}{4})^{z_5}(\frac{\theta}{4})^{z_6}
\]
\[\ln L(\theta) = \ln C + z_1\ln (\frac{1}{4}-\frac{\theta}{4})+z_2\ln (\frac{1}{4})+z_3\ln(\frac{1}{4}-\frac{\theta}{4})+z_4\ln(\frac{\theta}{4})+z_5\ln(\frac{1}{4})+z_6\ln(\frac{\theta}{4})
\]
\[\frac{\partial \ln L(\theta) }{\partial\theta}=-\frac{z_1+z_3}{1-\theta}+\frac{z_4+z_6}{\theta}=0
\]
求解上式,我们发现由原来的一元三次方程变为了非常容易求解的方程,求解难度减少。
\[\theta^* = \frac{z_4+z_6}{z_4+z_6+z_1+z_3}=\frac{z_4+y_4}{z_4+y_4+z_1+y_2}=\frac{z_4+34}{z_4+34+z_1+18}
\]
求解难度降低了,但是我们发现\(z_1\;;z_4\)不知道,我们该如何解决呢?
根据 \(y_1=z_1+z_2\; ;y_2=z_3\;;y_3=z_4+z_5\;;y_4=z_6\);可以得知
\[z_1\sim B(y_1, \frac{\frac{1}{4}-\frac{\theta}{4}}{\frac{1}{2}-\frac{\theta}{4}}=\frac{1-\theta}{2-\theta})
\]
\[z_4 \sim B(y_3, \frac{\frac{\theta}{4}}{\frac{1}{4}+\frac{\theta}{4}}=\frac{\theta}{1+\theta})
\]
- 第一步:(E步骤)目的是消去潜在变量 \(z_1\;;z_4\)\[E(z_1)= y_1\times \frac{1-\theta}{2-\theta}=125\times \frac{1-\theta}{2-\theta} \]\[E(z_4)= y_3\times \frac{\theta}{1+\theta}=20\times \frac{\theta}{1+\theta} \]令 \(z_1 = E(z_1)\;; z_4=E(z_4)\)
- 第二部:(M步骤)目的是最大化估计值\(\theta^*\)\[\theta^* =\frac{z_4+34}{z_4+34+z_1+18}=\frac{20\times \frac{\theta}{1+\theta}+34}{20\times \frac{\theta}{1+\theta}+34+125\times \frac{1-\theta}{2-\theta}+18} \]
- 采用迭代法求解\(\theta^*\)
\[\theta^{i+1} =\frac{20\times \frac{\theta^i}{1+\theta^i}+34}{20\times \frac{\theta^i}{1+\theta^i}+34+125\times \frac{1-\theta^i}{2-\theta^i}+18}
\]
任取 \(\theta \in (0,1)\) ,开始迭代。
eg: \(\theta^0=0.5\) 开始,计算出\(\theta^1\;;\theta^2\;;\theta^3\;;\cdots\) 直到收敛