论文阅读《Named Entity Recognition using an HMM-based Chunk Tagger》

Motivation

命名实体识别(NER)是识别文本中基于特定意义的实体,例如人名、地名、机构名等。因为命名实体是信息抽取的关键步骤,而目前大多数的方法都是人为构造特征例如构造正则表达式。这种基于规则的NER方法只能用于某一种特定语言,其鲁棒性和迁移性较差。因此本文提出一种基于HMM的机器学习方法实现命名实体识别。

 

核心思想:

隐马尔可夫模型经常用于标注问题,这时状态对应着标记,标注问题是给定观测的序列预测其对应的标记序列。NER对应的数学公式表达为:

论文阅读《Named Entity Recognition using an HMM-based Chunk Tagger》(1)

其中论文阅读《Named Entity Recognition using an HMM-based Chunk Tagger》,是标记序列,也就是我们最终想获得的输出;论文阅读《Named Entity Recognition using an HMM-based Chunk Tagger》,是观测序列即输入。为了简化计算,假设每个标记之间是独立的,所以第二项可化为:

论文阅读《Named Entity Recognition using an HMM-based Chunk Tagger》(2)

将(2)带入(1)得最终要最大化的目标表达式:

论文阅读《Named Entity Recognition using an HMM-based Chunk Tagger》(3)

 

具体步骤:

1、训练:根据训练数据,使用back-off model训练一个HMM模型。输入:每个单词及其特征论文阅读《Named Entity Recognition using an HMM-based Chunk Tagger》,例如g1=<MonthDATE, july>。输出:边界标签,实体类别和单词特征,例如t1=<0, DATE, MonthDATE >。训练之后,得到隐马尔可夫模型

                                                                       论文阅读《Named Entity Recognition using an HMM-based Chunk Tagger》

A,B,C分别为状态转移矩阵、观测转移矩阵和初始状态概率向量。(具体怎么使用back-off model更新参数还不太清楚)

2、测试:利用维特比算法,生成命名实体识别的结果。

 

实验结果:

模型实现的效果:

                                  论文阅读《Named Entity Recognition using an HMM-based Chunk Tagger》

  1. f1: 词语的简单确定性的内在特征,如大写、数字;
  2. f2 : 重要triggers的内部语义特征;
  3. f3: 地名特征.;
  4. f4: 是关于遇到的NE是否以及如何出现在文档中已经识别的NEs列表中

--以上四种特征具体模式可以参考论文原文。

本方法和其他模型的比较:

          论文阅读《Named Entity Recognition using an HMM-based Chunk Tagger》

 

启发:

  1. 利用HMM进行NER往往会遇到数据稀疏问题,因此如何解决数据稀疏问题对模型的表现力至关重要;
  2. 一段文本中,同一个NE在第一次用到时可能比较正式,在后面的使用可能会简化(Gates和Bill Gates),这叫做name alias,设计有效的name alias算法也会提高模型的效果。