您的位置:首页 > 其它

命名实体识别 | NLP系列学习

2018-07-30 18:00 106 查看

正文共2573张图,1张图,预计阅读时间15分钟。


在自然语言处理中,分词,词性标注,命名实体识别和句法情感分析是非常关键的分支,因为最近需要对此有一些应用,便去了解了一下特定领域目前使用的方法以及一些困难,特此进行总结。


1、命名实体识别概念


命名实体识别指识别文本中具有特定意义的实体,如人名、机构名、地名等专有名词和有意义的时间等,是信息检索、问答系统等技术的基础任务。如在“小明在夏威夷度假。”中,命名实体有:“小明——人名”、“夏威夷——地名”。


按照ACE2003的语料标注说明,我们将实体分为五大类,分别是人名,组织机构名,地名,行政区名和设施名,但是每一类当中还有若干的子类,这里就不细说了,有兴趣可以自行查找。


相对于英文,中文命名实体没有明显的形式标志,还存在分词的干扰,导致中文命名实体识别难度也高于英文。现如今我们使用的实体检测与识别的途径主要有两种,一种是先进行实体检测,再去对已经检测的实体进行识别,另一种是将实体与识别的对象结合到一个模型里,同时得到字符的位置进行标记和类别标记。


2、命名实体识别的困难


和英语相比,汉语命名实体识别任务更加复杂,由于分词等因素的影响难度较大,其难点主要表现在如下几个方面:


(1)命名实体类型多样,数量众多,不断有新的命名实体涌现,如新的人名、地名等,难以建立大而全的姓氏库、名字库、地址库等数据库。


(2)命名实体构成结构比较复杂,并且某些类型的命名实体词的长度没有一定的限制,不同的实体有不同的结构,比如组织名存在大量的嵌套、别名、缩略词等问题,没有严格的规律可以遵循;人名中也存在比较长的少数民族人名或翻译过来的外国人名,没有统一的构词规范。因此,对这类命名实体识别的召回率相对偏低。


(3)在不同领域、场景下,命名实体的外延有差异,存在分类模糊的问题。不同命名实体之间界限不清晰,人名也经常出现在地名和组织名称中,存在大量的交叉和互相包含现象,而且部分命名实体常常容易与普通词混淆,影响识别效率。在个体户等商户中,组织名称中也存在大量的人名、地名、数字的现象,要正确标注这些命名实体类型,常常要涉及上下文语义层面的分析,这些都给命名实体的识别带来困难。


(4)在不同的文化、领域、背景下,命名实体的外延有差异。对命名实体的定界和类型确定,目前还没有形成共同遵循的严格的命名规范。


3、进行命名实体识别的方法


命名实体识别的主要技术方法分为:基于规则和词典的方法、基于统计的方法、二者混合的方法等。


1、基于规则和词典的方法


基于规则的方法多采用语言学专家构造规则模板,选用特征包括统计信息、标点符号、关键字、指示词和方向词、位置词、中心词等方法,以模式和字符串相匹配为主要手段,这类系统大多依赖于知识库和词典的建立。基于规则和词典的方法是命名实体识别中最早使用的方法,一般而言,当提取的规则能比较精确地反映语言现象时,基于规则的方法性能要优于基于统计的方法。


但是这些规则往往依赖于具体语言、领域和文本风格,编制过程耗时且难以涵盖所有的语言现象,特别容易产生错误,系统可移植性不好,对于不同的系统需要语言学专家重新书写规则。基于规则的方法的另外一个缺点是代价太大,存在系统建设周期长、移植性差而且需要建立不同领域知识库作为辅助以提高系统识别能力等问题。


2、基于统计的方法


基于统计机器学习的方法主要包括:隐马尔可夫模型、最大熵、支持向量机、条件随机场等。


在这4种学习方法中,最大熵模型结构紧凑,具有较好的通用性,主要缺点是训练时间复杂性非常高,有时甚至导致训练代价难以承受,另外由于需要明确的归一化计算,导致开销比较大。而条件随机场为命名实体识别提供了一个特征灵活、全局最优的标注框架,但同时存在收敛速度慢、训练时间长的问题。


一般说来,最大熵和支持向量机在正确率上要比隐马尔可夫模型高一些,但是隐马尔可夫模型在训练和识别时的速度要快一些,主要是由于在利用维特比算法求解命名实体类别序列的效率较高。隐马尔可夫模型更适用于一些对实时性有要求以及像信息检索这样需要处理大量文本的应用,如短文本命名实体识别。


基于统计的方法对特征选取的要求较高,需要从文本中选择对该项任务有影响的各种特征,并将这些特征加入到特征向量中。依据特定命名实体识别所面临的主要困难和所表现出的特性,考虑选择能有效反映该类实体特性的特征集合。主要做法是通过对训练语料所包含的语言信息进行统计和分析,从训练语料中挖掘出特征。


有关特征可以分为具体的单词特征、上下文特征、词典及词性特征、停用词特征、核心词特征以及语义特征等。


基于统计的方法对语料库的依赖也比较大,而可以用来建设和评估命名实体识别系统的大规模通用语料库又比较少。


3、混合方法


自然语言处理并不完全是一个随机过程,单独使用基于统计的方法使状态搜索空间非常庞大,必须借助规则知识提前进行过滤修剪处理。目前几乎没有单纯使用统计模型而不使用规则知识的命名实体识别系统,在很多情况下是使用混合方法:


3.1 统计学习方法之间或内部层叠融合。


3.2 规则、词典和机器学习方法之间的融合,其核心是融合方法技术。


在基于统计的学习方法中引入部分规则,将机器学习和人工知识结合起来。


3.3 将各类模型、算法结合起来,将前一级模型的结果作为下一级的训练数据,并用这些训练数据对模型进行训练,得到下一级模型。


这种方法在具体实现过程中需要考虑怎样高效地将两种方法结合起来,采用什么样的融合技术。由于命名实体识别在很大程度上依赖于分类技术,在分类方面可以采用的融合技术主要包括如Voting, Grading等。


4、测试方法


主要根据两个评价指标衡量信息抽取系统的性能:召回率和准确率。召回率(REC)等于系统正确抽取的结果占所有可能正确结果的比例;准确率(PRE)等于系统正确抽取的结果占所有抽取结果的比例。为了综合评价系统的性能,通常还计算召回率和准确率的加权几何平均值,即F指数,计算公式如下:


F-Measure=


其中,beta是召回率和准确率的相对权重。beta等于1时,二者同样重要;beta大于1时,准确率更重要一些;beta小于1时,召回率更重要一些。


5、参考文献


1、《统计自然语言处理》 宗成庆


2、基于规则和条件随机场的中文命名实体识别方法研究 程志刚


3、命名实体识别研究进展综述 孙镇


原文链接:https://www.jianshu.com/p/3c2b18920616

查阅更为简洁方便的分类文章以及最新的课程、产品信息,请移步至全新呈现的“LeadAI学院官网”:www.leadai.org


请关注人工智能LeadAI公众号,查看更多专业文章 大家都在看

LSTM模型在问答系统中的应用基于TensorFlow的神经网络解决用户流失概览问题最全常见算法工程师面试题目整理(一)最全常见算法工程师面试题目整理(二)TensorFlow从1到2 | 第三章 深度学习革命的开端:卷积神经网络
装饰器 | Python高级编程
今天不如来复习下Python基础

阅读更多
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: