隐含马尔科夫模型(数学之美)
2017-10-09 19:39
375 查看
背景
在自然语言的处理或者语音识别方面,我们可以跟编码解码进行类比,比如说从汉语到英语的翻译,说话者讲的是汉语,从汉语到英语的翻译过程可以理解为编码。翻译成英文的效果根据上文中统计语言模型提到的概率来评价,概率越大,翻译的效果越好。所以只要找到条件概率最大即为翻译后的结果。公式表示如下:s1,s2,s3,...=Maxall s1,s2,s3...P(s1,s2,s3...|o1,o2,o3...)
利用贝叶斯公式:
Maxall s1,s2,s3...P(s1,s2,s3...|o1,o2,o3...)=Maxall s1,s2,s3...P(o1,o2,o3,...|s1,s2,s3,...)P(s1,s2,s3,...)P(o1,o2,o3,...)
其中P(o1,o2,o3,...|s1,s2,s3,...)表示信息s1,s2,s3,...在翻译前是o1,o2,o3,...的可能性。P(s1,s2,s3,...)表示s1,s2,s3,...是一个合乎情理的句子的可能性。而P(o1,o2,o3,...)表示要翻译o1,o2,o3,...的可能性。
因为一般来说P(o1,o2,o3,...)的可能性是固定的,所以上面的式子可以简化为:
Maxall s1,s2,s3...P(o1,o2,o3,...|s1,s2,s3,...)P(s1,s2,s3,...)
隐含马尔科夫模型
针对上面提出的公式,其实可以使用隐含马尔科夫模型来估计。马尔科夫链
举个例子来说,长江水面高度的监控其实是一件很重要的事情,长江水面的高度可能跟前些天的水面高度以及是否下雨等天气相关。所以要预测长江水面高度是一件很复杂的事情。马尔科夫为了简化问题,提出了一种假设—-假设当前的状态只与它的前一个状态相关,即P(st|s1,s2,s3,...st−1)=P(st|st−1).这个假设就是马尔科夫假设。而符合这个假设的随机过程称为马尔科夫过程,也称为马尔科夫链。
举例
如上图所示,表示一个简单的离散马尔科夫链。其中四个长方形表示四个状态,每条边表示状态转换,边上的权值表示转换概率。从上图可知从p1到p2的转换概率为1,即P(st+1=p2|st=p1)=1。p2到p3的概率为0.7,即P(st+1=p3|st=p2)=0.7。
综述(计算转移概率)
因为马尔科夫链中每个状态只与前一个状态相关,所以我们在看到一个马尔科夫链时,可以根据统计的方式来计算概率,比如说P(st+1|st),如果计算这个概率我们只需要统计st出现的次数nt,以及从st转换到st+1的次数nt,t+1,最终的结果为P(st+1|st)=ntnt,t+1
隐含马尔科夫模型
隐含马尔科夫模型是马尔科夫模型的拓展,即任意时刻的状态是不可观测的。所以我们无法直接观测一个马尔科夫链,以及根据根据马尔科夫链计算后续的转移概率。但是隐含马尔科夫模型在任意时刻会输出一个状态ot,且这个状态只与st相关,这个被称为独立输出假设。具体如下图所示:基于马尔科夫假设和独立输出假设,可以计算出某个特定的状态序列s1,s2,s3...产生输出状态o1,o2,o3...的概率:
P(s1,s2,s3...,o1,o2,o3...)=∏tP(st|st−1)P(ot|st)
最后
在一开始提出的式子Maxall s1,s2,s3...P(o1,o2,o3,...|s1,s2,s3,...)P(s1,s2,s3,...)中,根据上面的介绍可得:P(o1,o2,o3,...|s1,s2,s3,...)=∏tP(ot|st)
P(s1,s2,s3,...)=∏tP(st|st−1)
最后至于最大值的求解可以使用维特比算法。
相关文章推荐
- 数学之美——隐含马尔科夫模型
- 数学之美--隐含马尔科夫模型
- 数学之美 系列三 -- 隐含马尔可夫模型在语言处理中的应用
- 数学之美 系列三 -- 隐含马尔可夫模型在语言处理中的应用
- 数学之美 系列三 -- 隐含马尔可夫模型在语言处理中的应用(转载) 发表者:吴军,Google 研究员
- 数学之美 系列三 -- 隐含马尔可夫模型在语言处理中的应用
- 数学之美 系列三 -- 隐含马尔可夫模型在语言处理中的应用
- 数学之美 系列三 -- 隐含马尔可夫模型在语言处理中的应用
- 数学之美 系列三 -- 隐含马尔可夫模型在语言处理中的应用
- 数学之美 系列三 隐含马尔可夫模型在语言处理中的应用
- 数学之美 系列三 -- 隐含马尔可夫模型在语言处理中的应用(转)
- 隐马尔科夫模型(HMMs)之二:隐含模式
- 数学之美 系列三 -- 隐含马尔可夫模型在语言处理中的应用
- 数学之美 系列三 -- 隐含马尔可夫模型在语言处理中的应用
- 数学之美 系列三 -- 隐含马尔可夫模型在语言处理中的应用
- 数学之美系列三:隐含马尔可夫模型在语言处理中的应用(语音识别,机器翻译,自动纠错)
- 数学之美系列三:隐含马尔可夫模型在语言处理中的应用
- 数学之美系列三:隐含马尔可夫模型在语言处理中的应用
- 数学之美笔录(3):隐含马尔可夫模型(详解)
- 数学之美 系列三 -- 隐含马尔可夫模型在语言处理中的应用