• 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{ heta}{4}) (frac{1}{4}-frac{ heta}{4}) (frac{1}{4}+frac{ heta}{4}) (frac{ heta}{4})

    ( heta)的估计值?

    法 1:采用最大似然估计

    [L( heta) = frac{(y_1+y_2+y_3+y_4)!}{y_1! y_2! y_3!y_4!}(frac{1}{2}-frac{ heta}{4})^{y_1}(frac{1}{4}-frac{ heta}{4})^{y_2}(frac{1}{4}+frac{ heta}{4})^{y_3}(frac{ heta}{4})^{y_4} = C imes (frac{1}{2}-frac{ heta}{4})^{y_1}(frac{1}{4}-frac{ heta}{4})^{y_2}(frac{1}{4}+frac{ heta}{4})^{y_3}(frac{ heta}{4})^{y_4} ]

    [ln L( heta) = ln [C imes (frac{1}{2}-frac{ heta}{4})^{y_1}(frac{1}{4}-frac{ heta}{4})^{y_2}(frac{1}{4}+frac{ heta}{4})^{y_3}(frac{ heta}{4})^{y_4}] ]

    [ln L( heta) = ln C+y_1ln (frac{1}{2}-frac{ heta}{4}) + y_2ln (frac{1}{4}-frac{ heta}{4})+y_3ln (frac{1}{4}+frac{ heta}{4})+y_4 ln (frac{ heta}{4}) ]

    [frac{partial ln L( heta) }{partial heta}=-frac{y_1}{2- heta}-frac{y_2}{1- heta}+frac{y_3}{1+ heta}+frac{y_4}{ heta}=0 ]

    [-frac{125}{2- heta}-frac{18}{1- heta}+frac{20}{1+ heta}+frac{34}{ heta}=0 ]

    上面估计( heta)的方程是一个关于( heta)的一元三次方程,问题是不容易求解

    问题转化求解: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{ heta}{4}) (frac{1}{4}-frac{ heta}{4}) (frac{1}{4}+frac{ heta}{4}) (frac{ heta}{4})
    隐藏变量 (z_1) (z_2) (z_3) (z_4) (z_5) (z_6)
    发生的概率 (frac{1}{4}-frac{ heta}{4}) (frac{1}{4}) (frac{1}{4}-frac{ heta}{4}) (frac{ heta}{4}) (frac{1}{4}) (frac{ heta}{4})

    存在的关系为:(y_1=z_1+z_2; ;y_2=z_3;;y_3=z_4+z_5;;y_4=z_6)

    从新计算似然函数

    [L( heta) = 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{ heta}{4})^{z_1} (frac{1}{4})^{z_2}(frac{1}{4}-frac{ heta}{4})^{z_3}(frac{ heta}{4})^{z_4} (frac{1}{4})^{z_5}(frac{ heta}{4})^{z_6} ]

    [ln L( heta) = ln C + z_1ln (frac{1}{4}-frac{ heta}{4})+z_2ln (frac{1}{4})+z_3ln(frac{1}{4}-frac{ heta}{4})+z_4ln(frac{ heta}{4})+z_5ln(frac{1}{4})+z_6ln(frac{ heta}{4}) ]

    [frac{partial ln L( heta) }{partial heta}=-frac{z_1+z_3}{1- heta}+frac{z_4+z_6}{ heta}=0 ]

    求解上式,我们发现由原来的一元三次方程变为了非常容易求解的方程,求解难度减少。

    [ heta^* = 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_1sim B(y_1, frac{frac{1}{4}-frac{ heta}{4}}{frac{1}{2}-frac{ heta}{4}}=frac{1- heta}{2- heta}) ]

    [z_4 sim B(y_3, frac{frac{ heta}{4}}{frac{1}{4}+frac{ heta}{4}}=frac{ heta}{1+ heta}) ]

    • 第一步:(E步骤)目的是消去潜在变量 (z_1;;z_4)

      [E(z_1)= y_1 imes frac{1- heta}{2- heta}=125 imes frac{1- heta}{2- heta} ]

      [E(z_4)= y_3 imes frac{ heta}{1+ heta}=20 imes frac{ heta}{1+ heta} ]

      (z_1 = E(z_1);; z_4=E(z_4))
    • 第二部:(M步骤)目的是最大化估计值( heta^*)

      [ heta^* =frac{z_4+34}{z_4+34+z_1+18}=frac{20 imes frac{ heta}{1+ heta}+34}{20 imes frac{ heta}{1+ heta}+34+125 imes frac{1- heta}{2- heta}+18} ]

    • 采用迭代法求解( heta^*)

    [ heta^{i+1} =frac{20 imes frac{ heta^i}{1+ heta^i}+34}{20 imes frac{ heta^i}{1+ heta^i}+34+125 imes frac{1- heta^i}{2- heta^i}+18} ]

    任取 ( heta in (0,1)) ,开始迭代。
    eg: ( heta^0=0.5) 开始,计算出( heta^1;; heta^2;; heta^3;;cdots) 直到收敛

  • 相关阅读:
    小小不爽一下
    银行家算法的讨论
    【转】C字符串处理函数的实现
    Oracle物理存储结构文件
    RAC和ASM环境下修改控制文件control file
    TNS01190: The user is not authorized to execute the requested listener comm (oracle”用户没有启动lisener的权限?)
    RAC环境ASM存储新增控制文件的方法
    Oracle RAC 修改 spfile 文件位置
    Rman通过duplicate创建standby
    rman恢复手册
  • 原文地址:https://www.cnblogs.com/brightyuxl/p/11396127.html
Copyright © 2020-2023  润新知