《数学之美》吴军 著 第二版 ——读书笔记
原理
通信模型:
…
几乎所有的自然语言处理问题等可以等价成通信的编码问题。
在通信中,如何根据接收端的观测信号
o1,o2,...
来推测信号源发送的信息
s1,s2,...
呢?只需要从所有的源信息中找到最可能产生出观测信息的那一个信息。即求
P(s1,s2,...|o1,o2,...)
达到最大值的那个信息串s1,s2,…
利用贝叶斯变换成:
P(o1,o2,...|s1,s2,...)⋅P(s1,s2,...)P(o1,o2,...)
因为一旦信息
o1,o2,...
产生,
P(o1,o2,...)
就是一个可以忽略的常数。因此上面公式等价为
P(o1,o2,...|s1,s2,...)⋅P(s1,s2,...) ...1
这个公式可以由隐含马尔科夫模型来估计。
隐含马尔科夫模型(Hidden Markov Model)其实并不是19世纪俄罗斯数学家马尔科夫发明的,而是美国数学家鲍姆等人六七十年代发表的一系列论文中提出的。
马尔科夫链。到了19世纪,概率论的发展从对随机变量的研究发展到对随机变量的时间序列
s1,s2,...
,即随机过程的研究。举一个例子,我们可以把
s1,s2,...,st,...
看成北京每天的最高气温,这里面每个状态st都是随机的。第二,任一状态st的取值都可能和周围其它状态相关。这样随机过程就有了两个维度的不确定性。马尔科夫为了简化问题,提出了一种简化的假设,即随机过程中各个状态
st
的概率分布,只与它的前一个状态
st−1
有关,
即
P(st|s1,s2,...,st−1)=P(st|st−1).
这个假设后来被命名为马尔科夫假设,而符合这个假设的随机过程称为马尔科夫过程,也称马尔科夫链。
扫描二维码关注公众号,回复:
1508407 查看本文章
马尔科夫链:
![1](https://img-blog.csdn.net/20180517165244378?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2xpbmdweQ==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70)
隐含马尔科夫模型是上述马尔科夫链的一个扩展:任一时刻t的状态
st
是不可见的。
隐含马尔科夫模型在每个时刻t会输出一个符号
ot
,而且
ot
跟
st
相关且仅跟
st
相关。这个被称为独立输出假设。
隐含马尔科夫模型(y代表s,x代表o):
![2](https://img-blog.csdn.net/20180517165254698?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2xpbmdweQ==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70)
基于马尔科夫假设和独立输出假设,我们可以计算出某个特定的状态序列
s1,s2,...
产生出输出符号
o1,o2,...
的概率。
P(s1,s2,...,o1,o2,...)=∏tP(st|st−1)⋅P(ot|st) ...2
公式2与公式1形态上相似,它是由下面两个公式带入公式1得到:
P(o1,o2,...|s1,s2,...)=∏tP(ot|st)P(s1,s2,...)=∏tP(st|st−1)
应用
语音识别 机器翻译 图像处理 基因序列分析 拼写纠错等
其它资源
知乎理解-如何用简单易懂的例子解释隐马尔可夫模型
CSDN-马尔科夫模型学习
【NLP】揭秘马尔可夫模型神秘面纱系列文章(一)