序列标注-1:命名实体识别

1.命名实体研究历史

        国外对于英文命名实体识别的研究开始比较早。1991年Rau在第7届IEEE人工智能应用会议上发表了“抽取和识别公司名称”的有关研究文章, 首次描述了抽取和识别公司名称的系统, 该系统主要采用启发式算法和手工编写规则的方法,1996年, 命名实体评测作为信息抽取的一个子任务被引入MUC-6 ,在其后的MUC-7的MET-2 以及IEER-99、CoNLL-2002、CoNLL-2003、IREX、LREC等一系列国际会议中, 命名实体识别都被作为其中的一项指定任务。

        由于中文内在的特殊性决定了在文本处理时首先必须进行词法分析, 中文命名实体识别的难度要比英文的难度大。中文命名实体识别起步较晚, 20世纪90年代初期开始, 国内一些学者对中文命名实体(如:地名、人名、组织机构名等)识别进行了一些研究。如:孙茂松等在国内比较早开始进行中文人名识别, 他们主要采用统计的方法计算姓氏和人名用字概率。张小衡等对中文机构名称进行识别与分析, 主要采用人工规则对高校名进行了实验研究。Intel中国研究中心的Zhang等在ACL2000上演示了他们开发的一个抽取中文命名实体以及这些实体间相互关系的信息抽取系统, 该系统利用基于记忆的学习(MemoryBased Learning, MBL)算法获取规则, 用以抽取命名实体及它们之间的关系。

2.命名实体识别研究内容

        早期的命名实体识别工作,主要识别一般的专有名词,包括三类名词:人名、地名、机构名。这也是MUC-6 最早定义的任务要识别的名词。随着研究的进行,人们对这些名词进行更细致的划分。对于地名,可以进行细分为:国家名、省/州、城市名、街道名等。类似的人名可以细分为:政客、演员等。除了识别一般的专有名词, 人们也开始关注对于特定领域的命名实体识别。在生物医学领域,对于基因名、蛋白质名的识别已经有许多工作在开展,也取得了不错的效果。针对社交媒体文本中存在大量的电影、歌曲等, 识别电影名、歌曲名、邮件地址等实体。随着研究范围的扩大,针对不同的特定问题特定领域, 越来越多的实体类型被提出。

3.技术方法

        早期的研究大多采用基于人工构造规则的方法,而现在大多使用监督的机器学习方法。监督学习方法的思想是在大量标注的文档上学习命名实体正例和负例的特征并设计捕获给定类型本质的规则。而语料库的缺乏和构造这些资源的高昂成本导致了两种可替代的学习方法,半监督学习无监督学习

3.1. 基于规则和词典的方法

        基于规则的方法多采用语言学专家手工构造规则模板, 选用特征包括统计信息、标点符号、关键字、指示
词和方向词、位置词(如尾字)、中心词等方法, 以模式和字符串相匹配为主要手段, 这类系统大多依赖于知
识库和词典的建立。一般而言, 当提取的规则能比较精确地反映语言现象时, 基于规则的方法性能要优于基于统计的方法。但是这些规则往往依赖于具体语言、领域和文本风格,编制过程耗时且难以涵盖所有的语言现象, 特别容易
产生错误, 系统可移植性不好, 对于不同的系统需要语言学专家重新书写规则。基于规则的方法的另外一个缺点是代价太大, 存在系统建设周期长、移植性差而且需要建立不同领域知识库作为辅助以提高系统识别能力等问题。

3.2 监督学习

        目前,命名实体识别所使用的主流技术是监督学习。监督学习包括隐马尔科夫模型、决策树、最大熵模型、支持向量机、条件随机场等,这些方法都是命名实体识别系统的变体,这些系统都是读取大量的标注语料,存储一系列实体,并且构造基于特征的判别规则。通常提出的基本监督方法包括标注测试语料库的词,这些词在训
练集中被注释为实体。系统的性能依赖于同时出现在训练语料库和测试语料库中的词所占的比例,通常称之为词汇转移。

        最大熵模型结构紧凑, 具有较好的通用性, 主要缺点是训练时间复杂性非常高,有时甚至导致训练代价难以承受, 另外由于需要明确的归一化计算, 导致开销比较大。而条件随机场为命名实体识别提供了一个特征灵活、全局最优的标注框架, 但同时存在收敛速度慢、训练时间长的问题。一般说来, 最大熵和支持向量机在正确率上要比隐马尔可夫模型高一些, 但是隐马尔可夫模型在训练和识别时的速度要快一些, 主要是由于在利用Viterbi算法求解命名实体类别序列的效率较高。隐马尔可夫模型更适用于一些对实时性有要求以及像信息检索这样需要处理大量文本的应用, 如短文本命名实体识别 。

        基于统计的方法对特征选取的要求较高, 需要从文本中选择对该项任务有影响的各种特征, 并将这些特征加入到特征向量中。依据特定命名实体识别所面临的主要困难和所表现出的特性, 考虑选择能有效反映该类实体特性的特征集合。主要做法是通过对训练语料所包含的语言信息进行统计和分析, 从训练语料中挖掘出特征。有关特征可以分为具体的单词特征、上下文特征、词典及词性特征、停用词特征、核心词特征以及语义特征等。张祝玉等针对条件随机场的特征选取与组合进行了比较研究, 通过实验比较得出在训练时应优先选择贡献度大的特征, 同时还表明使用组合特征可以提升系统的性能。

3.3.半监督学习

        由于可用标注语料库的匮乏以及大量未标注语料库的存在,研究人员提出了一种半监督学习方法,也称为弱监督学习。主要的半监督学习方法被称为“bootstrapping”,它只需要提供少量的标注数据,例如一组种子用于开始的学习。然后,系统搜索包含这些已提供数据的句子并尝试发现出现在相似上下文中实体的其他实例。接着将学习过程应用于新发现的例子以发现新的相关上下文。通过重复这一过程收集大量命名实体和大量上下文信息。半监督方法只需要较少的已标注数据,从而在大量无标注数据的条件下获得可以与监督学习方法相媲美的性能。

4.评估指标

        对命名实体识别系统的发展来说,对系统的全面评估是必不可少的,许多系统被要求根据它们标注文本的能力来对系统进行排序。目前,通常采用的评估指标主要有正确率、召回率和F 值,它们的定义如下:
​ $正确率P= 识别出的正确实体数/ 识别出的实体数$
​ $召回率R= 识别出的正确实体数/ 样本中的实体数。$
        两者的取值都在0 和1 之间,数值越接近1,正确率或召回率就越高。正确率和召回率有时会出现矛盾的情况,这时需要综合考虑它们的加权调和平均值,也就是F 值,其中最常用的F1 值,当F1 值较高时说明试验方法比较有效。

F1 值定义如下:
​ $ F1 =(2 \times P \times R)/(P+ R) $

参考:

  1. 命名实体识别研究发展综述_周玉新
  2. 命名实体识别研究进展综述_孙镇
  3. 命名实体识别综述_陈基

本文标题:序列标注-1:命名实体识别

文章作者:goingcoder

发布时间:2018年01月16日 - 22:01

最后更新:2018年01月23日 - 14:01

原始链接:https://goingcoder.github.io/2018/01/16/ner/

许可协议: 署名-非商业性使用-禁止演绎 4.0 国际 转载请保留原文链接及作者。

-------------本文结束感谢您的阅读-------------