02-NLP-05-隐式马尔科夫链

在初始状态确定的情况下,(1 0)状态下,马尔科夫链的结果最终会趋于稳态分布。

即最终结果会得到一个固定的稳态分布。

没有办法给出完整的判断,这个时候就需要多一条马尔科夫链。

先设置一个牛市和熊市的马尔科夫链,然后牛市对应涨跌,熊市也对应涨跌。从而得到一个双层结构的马尔科夫链。

能观测到的最外侧的涨跌(显性的状态集合),而牛市和熊市没办法直接观测得到为隐式。

通过能观测的显性求解出整个双层马尔科夫链集合,这就是隐马尔科夫链。

由于每次掷骰子的时候只能得到黑盒输出的数字(可见状态链:1,6,8,5,4),

并不能直接知道是哪一种骰子得到的,只能推测出(隐形状态链:D4,D6,D8,D6,D4)。(根据上述可见状态连的结果来对应推测出隐形状态链)

在这里假设三种骰子出现的概率都是三分之一,因此上图中每条线上,他们之间的转换概率都是三分之一。

 每一种骰子都能产生出一种,因此在上述隐式马尔科夫链外面加上一层显式的喷射(投射)的可见状态并对应相应的概率值。

展开的隐式马尔科夫链,横向是时间表示每个节点就是每一次选的骰子并掷出一定的数值。

此图类似于展开的RNN中有一个记录状态,每个状态能射出不同的数值。

 

三种问题中,观测结果是一定会已知能观测出来的。

问题1:Evaluation:O表示可以直观看到的观测序列;模型为λ=(A状态转移矩阵,B观测的概率分布,π初始概率分布)。然后计算出在模型确定情况下观测值出现的概率。

问题2:Recognition:已知观测序列和模型,如何选择一个相关的状态序列(就是隐层的马尔科夫链)Q来最好地描述观测值的产生。

例如,HMM在语音识别问题中,同一句话有不同的语音,通过不同的语音想要识别出背后真正传达的含义。

问题3:Training:已知观测值,如何通过调整模型的参数(模型未知)找到最好的A,B,π使得该模型对应的观测序列值最大化。

三种观测值和两种天气状态的组合情况:2^3=6种,分别进行计算。例如:

P(R,R,R,W,S,C) = P(1R) P(W|1R) P(2R) P(S|2R) P(3R) P(C|3R) = 0.6*0.1*0.7*0.4*0.1*0.5

将所有可能的路径,全部算出来相应的概率值。

先预设Q的值,然后猜测对于一个样本序列Q而言,此概率P(O|Q,λ)的大小:将所有时间节点都连乘起来。b表示q状态喷射出来的观测值相应概率。

P(O,Q|λ)表示模型已知情况下,O,Q显示观测值和隐式值同时出现的概率。

可以将所有隐Q加起来

P(Q|λ)表示出此天气的权重

虽然思路简单,但时间复杂度较高,计算量很大。

 

猜你喜欢

转载自www.cnblogs.com/Josie-chen/p/9140721.html