Baum-Welch算法

✍ dations ◷ 2025-09-08 11:40:38 #估计理论,算法

在电气工程、计算机科学、统计计算和生物信息学中,Baum-Welch算法是用于寻找隐马尔可夫模型(HMM)未知参数的一种EM算法,它利用前向-后向算法来计算E-Step的统计信息。

Baum-Welch算法是以其发明者Leonard E. Baum和Lloyd R. Welch的名字命名的。Baum-Welch算法和隐马尔可夫模型在20世纪60年代末和70年代初由Baum和他的同事在国防分析研究所的一系列文章中首次描述。HMMs最初主要应用于语音处理领域。20世纪80年代,HMMs开始成为分析生物系统和信息,特别是遗传信息的有用工具。此后,它们成为基因组序列概率建模的重要工具。

隐马尔可夫模型描述了一组“隐含”变量和可观测到的离散随机变量的联合概率。它依赖于假设:第 i {\displaystyle i} 个隐藏变量只与第 i 1 {\displaystyle i-1} 个隐含变量相关,而与其他先前的隐藏变量无关,而当前观测到的状态仅依赖于当前的隐藏状态。

Baum-Welch算法利用EM算法,在给定一组观测特征向量的情况下,求出隐马尔可夫模型参数的最大似然估计。

记离散的隐含随机变量为 X t {\displaystyle X_{t}} ,它总共有 N {\textstyle N} 种状态( X t {\displaystyle X_{t}} N {\displaystyle N} 个不同的值)。设 P ( X t | X t 1 ) {\displaystyle P(X_{t}|X_{t-1})} 与时间无关,得到与时间无关的随机变量转移矩阵:

A = { a i j } = P ( X t = j | X t 1 = i ) {\displaystyle A=\{a_{ij}\}=P(X_{t}=j|X_{t-1}=i)}
初始的状态(即 t = 1 {\displaystyle t=1} )分布由下式给出:

π i = P ( X 1 = i ) {\displaystyle \pi _{i}=P(X_{1}=i)}

记观测到的变量为 Y t {\displaystyle Y_{t}} ,总共有 K {\displaystyle K} 种取值。同样假设由隐含变量得到的可观测变量与时间无关。在时间 t {\displaystyle t} ,由隐含变量 X t = j {\displaystyle X_{t}=j} 得到的可观察变量 Y t = y i {\displaystyle Y_{t}=y_{i}} 的概率是:

b j ( y i ) = P ( Y t = y i | X t = j ) {\displaystyle b_{j}(y_{i})=P(Y_{t}=y_{i}|X_{t}=j)}

由所有可能得 X t {\displaystyle X_{t}} Y t {\displaystyle Y_{t}} 的取值,我们可以得到 N × K {\displaystyle N\times K} 的矩阵 B = { b j ( y i ) } {\displaystyle B=\{b_{j}(y_{i})\}} ,其中 b j {\displaystyle b_{j}} 属于所有可能得隐含状态, y i {\displaystyle y_{i}} 属于所有的可观测状态。

给出可观测序列: Y = ( Y 1 = y 1 , Y 2 = y 2 , , Y T = y T ) {\displaystyle Y=(Y_{1}=y_{1},Y_{2}=y_{2},\cdots ,Y_{T}=y_{T})}

我们可以用 θ ( A , B , π ) {\textstyle \theta (A,B,\pi )} 描述隐马尔科夫链,Baum-Welch算法寻找 θ = arg m a x θ P ( Y | θ ) {\displaystyle \theta ^{*}=\arg {\underset {\theta }{max}}P(Y|\theta )} 的局部极大值,也就是能够使得观测到的序列出现的概率最大的HMM的参数 θ {\displaystyle \theta }

初始化参数 θ ( A , B , π ) {\displaystyle \theta (A,B,\pi )} ,可以随机初始化,或者根据先验知识初始化。

α i ( t ) = P ( Y 1 = y 1 , Y 2 = y 2 , , Y t = y t , X t = i | θ ) {\displaystyle \alpha _{i}(t)=P(Y_{1}=y_{1},Y_{2}=y_{2},\cdots ,Y_{t}=y_{t},X_{t}=i|\theta )} 是参数 θ {\displaystyle \theta } 的条件下,观测的序列是 y 1 , y 2 , , y t {\displaystyle y_{1},y_{2},\cdots ,y_{t}} ,时刻 t {\displaystyle t} 的状态是 i {\displaystyle i} 的概率。可以通过递归计算:

β i ( t ) = P ( Y t + 1 = y t + 1 , , Y T = y T | X t = i , θ ) {\displaystyle \beta _{i}(t)=P(Y_{t+1}=y_{t+1},\cdots ,Y_{T}=y_{T}|X_{t}=i,\theta )} 是参数是 θ {\displaystyle \theta } ,在时刻 t {\displaystyle t} 的状态是 i {\displaystyle i} 的条件下,余下部分的观测序列是 y t + 1 , , y T {\displaystyle y_{t+1},\cdots ,y_{T}} 的概率。

假设我们有一只会下蛋的鸡,每天中午我们都会去拾取鸡蛋。而鸡是否下蛋依赖于一些未知的隐含状态,这里我们简单的假设只有两种隐含状态会决定它是否下蛋。我们不知道这些隐含状态的初始值,不知道他们之间的转换概率,也不知道在每种状态下鸡会下蛋的概率。我们随机初始化他们来开始猜测。

假设我们得到的观测序列是(E=eggs, N=no eggs): N, N, N, N, N, E, E, N, N, N。

这样我们同时也得到了观测状态的转移:NN, NN, NN, NN, NE, EE, EN, NN, NN。

通过上面的信息来重新估计状态转移矩阵。

重新估计 S 1 {\displaystyle S_{1}} S 2 {\displaystyle S_{2}} 的转移概率为 0.22 2.4234 = 0.0908 {\displaystyle {\frac {0.22}{2.4234}}=0.0908} (下表中的"Pseudo probabilities"),重新计算所有的转移概率,得到下面的转移矩阵:

接下来重新估计Emission Matrix:

重新估计从隐含状态 S 1 {\displaystyle S_{1}} 得到观察结果E的概率是 0.2394 0.2730 = 0.8769 {\displaystyle {\frac {0.2394}{0.2730}}=0.8769} ,得到新的Emission Matrix

为了估计初始状态的概率,我们分别假设序列的开始状态是 S 1 {\displaystyle S_{1}} S 2 {\displaystyle S_{2}} ,然后求出最大的概率,再归一化之后更新初始状态的概率。

一直重复上面的步骤,直到收敛。

相关

  • 普沙托韦普沙托韦(GS-5806,化学式C24H30ClN7O3S)是一种抗病毒药,被开发用于治疗呼吸道合胞病毒感染。它作为一种融合抑制剂,在II期临床试验中显示出较好的疗效。
  • 稳定稳定同位素(Stable isotope),是指化学元素中,不发生放射性衰变或不易发生放射性衰变的同位素,稳定同位素即使会发生衰变,因半衰期太长而无法测量出。所有同位素中,只有前66个元素中
  • 可数集在数学上,可数集,或称可列集,是与自然数集的某个子集具有相同基数(等势)的集合。在这个意义下,可数集由有限可数集和可数无穷集组成。不是可数集的无穷集称为不可数集。这个术语是
  • 德尼·狄德罗德尼·狄德罗(法语:Denis Diderot,发音:.mw-parser-output .IPA{font-family:"Charis SIL","Doulos SIL","Linux Libertine","Segoe UI","Lucida Sans Unicode","Code2000","Gen
  • 平治之乱12月9日 大江家仲、平康忠等北面武士12月26日 平清盛12月9日 藤原信赖、源义朝、源光保、源季实、源重成12月26日 藤原信赖平治之乱是指1159年,在保元之乱中,为后白河天皇
  • 爱德华·詹纳爱德华·詹纳(英文:Edward Jenner,1749年5月17日-1823年1月26日),FRS,亦译作爱德华·金纳或琴纳,是一名英国医生,生于英国告罗士打郡伯克利牧区一个牧师家庭,以研究及推广牛痘疫苗,防止
  • 雷蒙德·阿姆斯·斯普鲁恩斯第一次世界大战第二次世界大战雷蒙德·艾姆斯·斯普鲁恩斯(Raymond Ames Spruance,1886年7月3日-1969年12月23日,或译为雷蒙德·史普劳恩斯),第二次世界大战时期美国海军将领(最终
  • 2016年夏季奥林匹克运动会摔跤比赛-男子古典式75公斤级2016年夏季奥林匹克运动会男子古典式75公斤级摔跤比赛于2016年8月14日在巴西里约热内卢卡里奥卡体育馆2举行。俄罗斯选手Roman Vlasov在决赛中以5比1击败丹麦选手Mark Madse
  • 飓风康妮飓风康妮是1955年8月在美国东部引发重大洪灾的强劲四级飓风,当地还在短短数天后受到飓风黛安袭击。气旋于8月3日经东大西洋的东风波发展而成并快速朝西北偏西移动,到8月4日已
  • 苏金奎苏金奎(高棉语:សូកាំ ខូយ,1915年2月2日-2008年11月14日)是高棉共和国的政治人物。苏金奎于1915年2月2日出生。于1940年入伍柬埔寨王家陆军。他在1953年获得中校军衔,后来