EM算法的主要步骤
对于一个存在隐状态的序列,假设存在一个已知的观测序列Y,未知的隐状态序列Z,未知参数集合θ;
θ的作用:给定参数θ的时候,可以求得下面这些量:
P(Z|θ) 实际上即求得Z在给定θ时的分布;
P(Y|Z,θ) 可求得给定θ和隐状态Z的情况下,出现现在Y序列的概率;
那么ΣP(Z|θ)P(Y|Z,θ) 就是给定θ时,出现目前观测序列Y的概率;
取对数似然表达式L(θ) = log ΣP(Z|θ)P(Y|Z,θ)
我们的目标是根据现在的观测序列,去估计一组参数,如果我们希望获得一个最优的参数序列,那么当然要使得在这组参数下当前观测序列出现的概率最大。
首先随机初始化一组θ记为θ(i),再假设一组我们未知的θ,对于这两组θ,求取L(θ) - L(θ(i))。我们希望未知组的表达式大于已知组的表达式,即前述式子大于0。(1)
(省略掉中间的算式——由琴生不等式变换可以求得这个式子的下限,并提取出其中和未知组θ有关的部分,就得到了我们下文中所说的Q函数)
Q(θ) = ΣP(Z|Y,θ(i))log P(Z|θ)P(Y|Z,θ); (此处不作进一步简化)(2)
有了这个式子,我们实际上就是要求Q函数的极大值所对应的θ;(3)
获得了这个θ之后,我们将它代回到(1)中,作为已知组的θ、被减数,然后重复(2)(3)步即可不断迭代优化。
浙公网安备 33010602011771号