hmm 流程图_一种基于HMM的词性标注方法与流程

一种基于HMM的词性标注方法,通过与最大熵模型结合,提高了标注效率和新词识别率。利用词库进行正向最大匹配切分,HMM获取参数,最大熵模型处理新词,Viterbi算法计算最优标注结果。
摘要由CSDN通过智能技术生成

4e6aad49712d5d8f6fe9501adbddec54.gif

本发明涉及一种基于HMM的词性标注方法,属于信息处理技术领域。

背景技术:

现代社会,随着信息技术的快速发展,词性标注成为了自然语言处理中一个具有重要意义的研究方向,它作为自然语言处理的一项基础性工作,是后续语法分析、语音识别、文本分类、机器翻译等任务的必要准备。

一般地,基于HMM的词性标注效果虽然不错,但是对预测信息不足,识别新词能力差,从而使得词性标注的准确率不高;同样地,基于最大熵模型的词性标注虽然能有效地利用上下文信息,有较好的预测作用,但是存在着标注速度慢以及标注偏置等问题。

技术实现要素:

本发明要解决的技术问题是针对现有技术的局限和不足,提供一种基于HMM的词性标注方法,引入了HMM和最大熵模型的结合对词性标注方法进行改进,解决了单一的词性标注方法速度慢,对新词识别率低,从而使得标注结果准确率低的现象,以提高词性标注的高效性与准确性。

本发明的技术方案是:一种基于HMM的词性标注方法,利用HMM和最大熵模型的结合对词性标注方法进行改进,具体步骤为:

①输入待标注的词串,待标注的词串可以为任意词串;

②使用词库用正向最大匹配的方法对输入的待标注的词串进行切分,得到初次分词结果;

③以标注好的语料库作为训练集和测试集,获得HMM的三个参数,从而得到HMM中若干可观测状态;

④进行二次分词,将初次分词结果中未查找到的词在HMM中若干可观测状态中进行查找,若仍存在未查找到的词,则作为新词引入最大熵模型进行标注;

⑤用viterbi算法计算出HMM的最优隐藏序列,再与最大熵模型标注的结果结合即为最终词性标注结果。

步骤②所述的词库使用unicode码排序,以便在分词时匹配词库时能实现快速查找。

所述的快速查找为二分法,在初次分词时,首先将词库读到内存中,然后将词串用正向最大匹配的方法匹配词库;由于词库按照unicode码排序,所以可以采用二分法快速查找词组,查找时,首先读取原始句子的第一个字,找到该字在词库中的起始位置和结束位置,然后进用二分法进行快速查找,在查找的过程中记录起始和结束位置之间所有词的最大长度,然后从最大长度开始查找词库,长度逐一递减,直到找到为止。

步骤③所述的获得HMM的三个参数为(PI,A,B),PI表示词性的先验概率,A表示词性之间的状态转移矩阵,B表示词性到词的混淆矩阵,获得以上三种参数的方式为有监督的方式,即通过统计语料库中的相关信息来训练参数。

所述的统计语料库中的相关信息为每个词性出现的次数,每个词性及其后继词性出现的次数和词性对应的词。统计完这些信息之后就可以用频率代替概率获得三个参数的值。

所述的词性的先验概率PI的计算公式为:

其中,N表示语料库中词性的总次数,N(St)表示词性St在语料库出现的次数。

所述的词性之间的状态转移矩阵A的计算公式为:

其中,P(St-1,St)表示不同的两个词性前后出现的概率,P(St-1)表示词性St-1出现的概率,N(St-1,St)表示不同的两个词性前后出现的次数。

所述的词性到词的混淆矩阵B的计算公式为:

其中,P(Ot,St)表示某个词和某个词性同时出现的概率,N(Ot,St)表示某个词和某个词性同时出现的次数。

步骤④所述的引入最大熵模型为已经训练好的模型。

步骤⑤所述的HMM的最优隐藏序列并不是HMM的标注结果,而是需要保存每一步计算过程中选择的最优状态,最后回溯后的结果才为HMM的标注结果。

本发明的有益效果是:与现有技术相比,通过引入HMM和最大熵模型的结合,主要解决了单一的词性标注方法速度慢,对新词识别率低,从而使得标注结果准确率低的现象,以提高词性标注的高效性与准确性。

附图说明

图1是本发明步骤流程图;

图2是本发明步骤②步骤流程图;

图3是本发明步骤③步骤流程图;

图4是本发明步骤④步骤流程图;

图5是本发明步骤⑤步骤流程图。

具体实施方式

下面结合附图和具体实施方式,对本发明作进一步说明。

实施例1:一种基于HMM的词性标注方法,该方法引入了HMM和最大熵模型的结合对词性标注方法进行改进,具体包括以下5个步骤:

①输入待标注的词串。

②使用词库用正向最大匹配的方法对输入的待标注的词串进行切分,得到初次分词结果。

③以人民日报1998年1月标注好的语料库作为训练集和测试集,获得HMM的三个参数,从而得到HMM中若干可观测状态。

④进行二次分词,将初次分词结果中未查找到的词在HMM中若干可观测状态中进行查找,若仍存在未查找到的词,则作为新词引入最大熵模型进行标注。

⑤用viterbi算法计算出HMM的最优隐藏序列,再与最大熵模型标注的结果结合即为最终词性标注结果。

进一步地,步骤①所述的待标注的词串可以为任意词串。

进一步地,步骤②所述的词库使用unicode码排序,以便在分词时匹配词库时能实现快速查找。

进一步地,所述的快速查找为二分法。在初次分词时,首先将词库读到内存中,然后将词串用正向最大匹配的方法匹配词库。由于词库按照unicode码排序,所以可以采用二分法快速查找词组。查找时,首先读取原始句子的第一个字,找到该字在词库中的起始位置和结束位置,然后进用二分法进行快速查找。在查找的过程中记录起始和结束位置之间所有词的最大长度,然后从最大长度开始查找词库,长度逐一递减,直到找到为止。

进一步地,步骤③所述的获得HMM的三个参数为(PI,A,B),PI表示词性的先验概率,A表示词性之间的状态转移矩阵,B表示词性到词的混淆矩阵,获得以上三种参数的方式为有监督的方式,即通过统计语料库中的相关信息来训练参数。

进一步地,所述的统计语料库中的相关信息为每个词性出现的次数,每个词性及其后继词性出现的次数和词性对应的词。统计完这些信息之后就可以用频率代替概率获得三个参数的值。

进一步地,所述的词性的先验概率PI的计算公式为:

其中N表示语料库中词性的总次数,N(St)表示词性St在语料库出现的次数。

进一步地,所述的词性之间的状态转移矩阵A的计算公式为:

其中P(St-1,St)表示不同的两个词性前后出现的概率,P(St-1)表示词性St-1出现的概率,N(St-1,St)表示不同的两个词性前后出现的次数。

进一步地,所述的词性到词的混淆矩阵B的计算公式为:

其中P(Ot,St)表示某个词和某个词性同时出现的概率,N(Ot,St)表示某个词和某个词性同时出现的次数。

进一步地,步骤④所述的引入最大熵模型为已经训练好的模型。

进一步地,步骤⑤所述的HMM的最优隐藏序列并不是HMM的标注结果,而是需要保存每一步计算过程中选择的最优状态,最后回溯后的结果才为HMM的标注结果。

以上结合附图对本发明的具体实施方式作了详细说明,但是本发明并不限于上述实施方式,在本领域普通技术人员所具备的知识范围内,还可以在不脱离本发明宗旨的前提下作出各种变化。

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值