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

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

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

_

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

观察值序列:词1 词2 … 词n
隐变量序列:角色1 角色2 … 角色n
训练阶段:统计三个要素(三个矩阵的元素值)
初始概率分布:
_1

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

状态转移概率分布:
_3

观测概率分布:
_4

有关这些概率值的计算都很简单,就是频率法,留在后边介绍隐马时候再写。
预测阶段:
根据训练得到的三个要素,利用Viterbi算法求解得到了最优隐藏变量序列 角色1 角色2 ... 角色n*
最大模式匹配阶段:
利用下边的模式串匹配出人名
{ BBCD, BBE, BBZ, BCD, BEE,BE,BG,BXD,BZ,CD,EE,FB, Y,XD}
基于HMM-Viterbi标注的人名识别原理就介绍到这里,我想我应该把原理说清楚了,如果你还没有看明白,就等着后续的有关隐马的文章吧。基于隐马的人名识别会很容把以一个姓氏作为开头的词语识别为人名,特别是地名中有人名字的,因此,人工整理出一些非常用姓氏的人名,以及一些地名是必要的,后续如果整理出来了,我应该会放到专栏文章里,毕竟都是公开语料上做的,也就不涉及什么别的不方便。

相关文章
|
6天前
|
自然语言处理 Python
【Python自然语言处理】文本向量化的六种常见模型讲解(独热编码、词袋模型、词频-逆文档频率模型、N元模型、单词-向量模型、文档-向量模型)
【Python自然语言处理】文本向量化的六种常见模型讲解(独热编码、词袋模型、词频-逆文档频率模型、N元模型、单词-向量模型、文档-向量模型)
315 0
|
6天前
|
机器学习/深度学习 移动开发 自然语言处理
基于BiLSTM-CRF模型的分词、词性标注、信息抽取任务的详解,侧重模型推导细化以及LAC分词实践
基于BiLSTM-CRF模型的分词、词性标注、信息抽取任务的详解,侧重模型推导细化以及LAC分词实践
基于BiLSTM-CRF模型的分词、词性标注、信息抽取任务的详解,侧重模型推导细化以及LAC分词实践
|
9月前
|
数据采集 机器学习/深度学习 自然语言处理
nlp入门之基于贝叶斯算法的拼写错误检测器
基于贝叶斯思想简单的实现了一个拼写错误检测器
|
6天前
|
机器学习/深度学习 人工智能 自然语言处理
【一起从0开始学习人工智能0x02】字典特征抽取、文本特征抽取、中文文本特征抽取
【一起从0开始学习人工智能0x02】字典特征抽取、文本特征抽取、中文文本特征抽取
43 1
|
机器学习/深度学习 自然语言处理 搜索推荐
基于GCN和句法依存分析的情感分析
(1)构建/利用图结构 核心问题:针对某个特定任务构建一个图来使用潜在的信息。 因为有些任务中,图数据是给定的(如引用网络、社交网络、推荐系统的图数据等),但是有些图结构并不明显,所以需要转为一个图上可以解决的问题(如节点分类、链路预测等)。
512 0
基于GCN和句法依存分析的情感分析
|
自然语言处理 算法 索引
【自然语言处理】hmm隐马尔可夫模型进行中文分词 代码
【自然语言处理】hmm隐马尔可夫模型进行中文分词 代码
181 0
|
机器学习/深度学习 数据采集 存储
【英文文本分类实战】之四——词典提取与词向量提取
【英文文本分类实战】之四——词典提取与词向量提取
198 0
【英文文本分类实战】之四——词典提取与词向量提取
|
机器学习/深度学习 算法
基于机器学习knn算法的手写拼音识别
基于机器学习knn算法的手写拼音识别
96 0
基于机器学习knn算法的手写拼音识别
|
机器学习/深度学习 算法 数据挖掘
K近邻算法(KNN)(包含手写体识别、约会类型识别的代码)
是有监督学习、属于判别模型 、支持多分类以及回归、非线性、有预测函数、无优化目标、无优化求解算法。(算法地图) 对应每个训练数据xi有对应的标签yi--监督学习;
137 0
K近邻算法(KNN)(包含手写体识别、约会类型识别的代码)
|
自然语言处理
自然语言处理---------jieba调整词频与词性标注
自然语言处理---------jieba调整词频与词性标注
110 0
自然语言处理---------jieba调整词频与词性标注