《数学之美》第5章 隐含马尔可夫模型

本文探讨了通信模型的基本概念及其与自然语言处理的联系,并详细介绍了隐含马尔可夫模型的工作原理及训练方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1 通信模型

    通信的本质就是一个编解码和传输的过程。

    当自然语言处理的问题回归到通信系统中的解码问题时,很多难题就迎刃而解了。

    雅格布森通信六要素是:发送者(信息源),信道,接受者,信息, 上下文和编码。

    通信的解码就是根据接受到的信号还原出发送到信号。

    几乎所有的自然语言处理的问题都可以等价成通信的解码问题。

    只需要从所有的源信息中找到最可能产生出观测信号的那一个信息。

2 隐含马尔可夫模型

    隐含马尔可夫模型是马尔可夫链的一个扩展:任一时刻t的状态St是不可见的。所以观察者没法通过观察到一个序列状态S1,S2,S3,...,St 来推测转移概率等参数。但是,隐含马尔可夫模型在每个时刻t会输出一个符号Ot,而且Ot跟St相关而且仅跟St相关。这个称为独立输出假设。

    针对不同的应用,P(S1,S2,S3,...|O1,O2,O3,...)名称页各不相同,在语音识别中它被称为“声学模型”,在机器翻译中是“翻译模型”,而在拼写纠正中是“纠正模型”。

3 隐含马尔可夫模型的训练

    三个基本问题:

        给定一个模型,如何计算某个特定的输出序列的概率。(Forward-Backward算法)

        给定一个模型和某个特定的输出序列,如何找到最可能产生这个输出的状态序列。(维特比算法)

        给定足够量的观测数据,如何估计隐含马尔可夫模型的参数。

    要利用隐含马尔可夫模型解决实际问题,需要事先知道从前一个状态St-1进入当前状态St的概率P(St|St-1),也称为转移概率,和每个状态St产生相应输出符号Ot的概率P(Ot|St),也称为生成概率。这些概率称为隐含马尔可夫模型的参数,而计算或者估计这些参数的过程称为模型的训练。

    训练隐含马尔可夫模型更实用的方式是仅仅通过大量观测到的信号O1,O2,O3,...就能推算模型参数的P(St|St-1)和P(Ot|St)的方法,这类方法称为无监督的训练方法,其中主要使用的是鲍姆-韦尔奇算法。

        首先找到一组能够产生输出序列O的模型参数。

        接下来,不断寻找模型,直到模型的质量不再有明显提高为止。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值