专栏首页hadoop学习笔记HanLP-基于HMM-Viterbi的人名识别原理介绍
原创

HanLP-基于HMM-Viterbi的人名识别原理介绍

Hanlp自然语言处理包中的基于HMM-Viterbi处理人名识别的内容大概在年初的有分享过这类的文章,时间稍微久了一点,有点忘记了。看了 baiziyu 分享的这篇比我之前分享的要简单明了的多。下面就把文章分享给大家交流学习之用,部分内容有做修改。

本文主要介绍一下HanLP是如何利用HMM来做人名识别的。基本思想是把词语序列作为观测序列,将角色序列作为隐藏序列,当模型预测出最佳隐藏状态序列后,利用模式最大匹配法,匹配出人名实体。下边说一模型的三要素在这个应用中所对应的内容,因为训练阶段就是要求解这三个要素的值。

假设有下边的观测序列和其对应的隐藏序列

观察值序列:词1 词2 … 词n

隐变量序列:角色1 角色2 … 角色n

训练阶段:统计三个要素(三个矩阵的元素值)

初始概率分布:

各隐变量标记意义列于下表

状态转移概率分布:

观测概率分布:

有关这些概率值的计算都很简单,就是频率法,留在后边介绍隐马时候再写。

预测阶段:

根据训练得到的三个要素,利用Viterbi算法求解得到了最优隐藏变量序列 角色1* 角色2* ... 角色n*

最大模式匹配阶段:

利用下边的模式串匹配出人名

{ BBCD, BBE, BBZ, BCD, BEE,BE,BG,BXD,BZ,CD,EE,FB, Y,XD}

基于HMM-Viterbi标注的人名识别原理就介绍到这里,我想我应该把原理说清楚了,如果你还没有看明白,就等着后续的有关隐马的文章吧。基于隐马的人名识别会很容把以一个姓氏作为开头的词语识别为人名,特别是地名中有人名字的,因此,人工整理出一些非常用姓氏的人名,以及一些地名是必要的,后续如果整理出来了,我应该会放到专栏文章里,毕竟都是公开语料上做的,也就不涉及什么别的不方便。

原创声明,本文系作者授权云+社区发表,未经许可,不得转载。

如有侵权,请联系 yunjia_community@tencent.com 删除。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • HanLP分词命名实体提取详解

    分享一篇大神的关于hanlp分词命名实体提取的经验文章,文章中分享的内容略有一段时间(使用的hanlp版本比较老),最新一版的hanlp已经出来了,也可以去看看...

    IT小白龙
  • 自然语言处理工具HanLP-基于层叠HMM地名识别

    本篇接上一篇内容《HanLP-基于HMM-Viterbi的人名识别原理介绍》介绍一下层叠隐马的原理。

    IT小白龙
  • 7个优秀的开源中文分词库推荐,实用性强!

    纵观整个开源领域,陆陆续续做中文分词的也有不少,不过目前仍在维护的且质量较高的并不多。下面整理了一些个人认为比较优秀的中文分词库,以供大家参考使用。

    一墨编程学习
  • Hanlp等七种优秀的开源中文分词库推荐

    中文分词是中文文本处理的基础步骤,也是中文人机自然语言交互的基础模块。由于中文句子中没有词的界限,因此在进行中文自然语言处理时,通常需要先进行分词。

    IT小白龙
  • HanLP分词工具中的ViterbiSegment分词流程

    本篇文章将重点讲解HanLP的ViterbiSegment分词器类,而不涉及感知机和条件随机场分词器,也不涉及基于字的分词器。因为这些分词器都不是我们在实践中常...

    IT小白龙
  • 自然语言处理工具pyhanlp分词与词性标注

    Pyhanlp分词与词性标注的相关内容记得此前是有分享过的。可能时间太久记不太清楚了。以下文章是分享自“baiziyu”所写(小部分内容有修改),供大家学习参考...

    IT小白龙
  • 【分词】从why到how的中文分词详解,从算法原理到开源工具

    分词(word tokenization),也叫切词,即通过某种方式将句子中的各个词语识别并分离开来,使得文本从“字序列”的表示升级为“词序列”表示。分词技术不...

    zenRRan
  • HanLP中人名识别分析详解

    分词:给定一个字的序列,找出最可能的标签序列(断句符号:[词尾]或[非词尾]构成的序列)。结巴分词目前就是利用BMES标签来分词的,B(开头),M(中间),E(...

    IT小白龙
  • 基于分布式的短文本命题实体识别之----人名识别(python实现)

    据统计:未登录词中中文姓人名在文本中一般只占2%左右,但这其中高达50%以上的人名会产生切分错误。在所有的分词错误中,与人名有关的错误占到了将近90%,这中国人...

    流川疯

扫码关注云+社区

领取腾讯云代金券