张桐瑄 利用语法结构来进行命名实体识别
新闻来源:IR实验室       发布时间:2017/12/14 0:00:00


本篇论文《Leveraging Linguistic Structures for Named Entity Recognition with Bidirectional Recursive Neural Networks》是利用语法结构来进行命名实体识别,它使用的模型是:双向递归神经网络,本篇论文发表在EMNLP2017,作者分别来自于国立台湾大学、国立清华大学和国立中央研究院(台湾)。

1 引言

命名实体识别(Named Entity Recognition,简称NER),又称作“专名识别”,是指识别文本中具有特定意义的实体,主要包括人名、地名、机构名、专有名词等。NER的问题通常被抽象为序列标注(Sequence labeling)问题,是指对序列中每个成分赋予一个特定的标签,对每个词给出一个特定的实体标签来表明是某个特定类型的开始,结束等。

在本篇论文中,区别于主流的NER使用循环神经网络(recurrent neural network)进行序列标注的方法,作者使用双向的递归神经网络(recursive neural network)结合短语结构树,对每个树的节点进行分类来实体识别。以前常用的循环神经网络(recurrent neural network),是假设句子后面的词的信息和前面的词有关。而递归神经网络,假设句子是一个树状结构,该结构由几个部分(主语,谓语,宾语)组成,而每个部分又可以分成几个小部分,即某一部分的信息由它的子树的信息组成而来,整句话的信息由组成这句话的几个部分组成。

2 方法

该论文中提出了一个新的基于结构的双向RNN-CNN来进行命名实体识别模型,它使用递归神经网络,成功地利用了文本的语言结构;首先是从句法分析树中提取特征,然后使用递归的方法,将句法分析树中的每个成分进行分类。

为了能够使树节点包含更多的实体,在本篇论文中,作者提出了一个二叉树算法,将原始的树结构转化为二叉树结构,在后面的实验中,均是在二叉树结构上进行的,二叉树结构如图1所示:

1 左侧为原始数据结构树,右侧为转化后的二叉树结构

结构树中共存在四个特征:POS为词性信息;head为核心词,核心词的确定是由一个基于规则的核心词查找方法确定的[1]constword本身;还有一个第四个特征,它是一个词袋模型,将节点与SENNApersonsorganizationslocations)相匹配,得到一个三维向量。

论文方法中计算词嵌入的方法,通过GloVe方法,得到每个词的词向量;然后计算词的字符级词向量,由于one-hot字符级向量维数比较大,因此又经过一系列的卷积和highway层生成新的向量[2];最后将两个词向量拼接,作为一个词的最终词向量。

计算隐含特征:给定一个短语结构树,每一个节点代表一个组成部分,我们的网络递归为每个节点计算两个隐藏的状态特性。一个是自底向上,一个是自顶向下的。

2 自底向上和自顶向下的隐层二叉树

其中特征I由五个特征组成:当前节点和它的左右兄弟节点的词性特征向量;当前节点和它的左右兄弟节点的核心词的词向量;当前节点的词向量;当前节点的字典向量;句子的平均词向量表示。计算隐层的特征的公式如下,公式1为自底向上计算隐层的特征,公式2为自顶向下计算隐层的特征,当节点不存在时,用零向量代替。

最后利用一个Sigmoid函数进行二分类,求其隐层特征的概率分布,判断短语结构树中的所有节点是否是实体。

3 实验

作者实验使用的是公开数据集OntoNotes 5.0 http://conll.cemantix.org/2012/data.html),数据根据文本来源的不同,注释了18种类型的命名实体,同时,数据包含两类,一类是人为标记的句法树,另一类是自动生成的句法树。两类的句法树都是有效的。数据包含文档编号,部分编码(一些文件被划分为多个部分),单词数,单词it自体,单词词性,句法树结构,谓词引理,谓词框架集ID,词感,说话者/作者,命名实体等信息,数据形式如图3所示:

3 OntoNotes 5.0 部分数据截图

1中显示的是OntoNotes 5.0数据的统计数据,Token指树结构中的节点数,NE指命名实体数,Constituent显示的是实体在原始树结构转变为二叉树结构后节点所占百分比的变化,可以明显地看出,在二叉树结构中实体所占的比例有明显的提高,从二叉树中能识别出更多的实体。

1 OntoNotes5.0的数据统计

实验结果如表2所示,可以看出,本实验的实验结果比之前在相同数据集上的实验结果有所提高,超过了Chiu[3]提出的biLSTM-CNNS模型效果,参考文献中对实验过程有详细的描述。

2 OntoNotes 5.0的实验结果

本实验的代码也是公开的,可以下载获得:

https://github.com/jacobvsdanniel/tf_rnn

 

4 总结

在实验过程中,有一个公开的标准数据集很重要。标准数据集由领域专家进行标注,实验结果的准确性会比较高,能够客观地判断实验方法是否有效;其次,公开的数据集在做对比实验时更加有说服力。本文在解决命名实体识别问题时,将传统的序列标注方法变为分类方法,比较具有创新性。实验中没有使用常用的依存句法树和RNN循环神经网络,而是使用了短语结构树和递归神经网络,这也算是一个创新。将树形结构转换为二叉树结构,并对二叉树中的全部节点进行实体分类,判断其是否为实体,但这种方法比较依靠于原始树结构的构造。在未来的研究中,不光要关注当前流行的方法,也要关注一些传统方法,适合的才是最好的,并不是流行的才是最好的。

参考文献:

[1] Michael Collins. 1999. Head-Driven Statistical Models for Natural Language Parsing. Ph.D. thesis, University of Pennsylvania.

[2] Yoon Kim, Yacine Jernite, David Sontag, and Alexander M. Rush. 2016. Character-aware neural language models. In Thirtieth AAAI Conference on Artificial Intelligence.

[3] Jason P.C. Chiu and Eric Nichols. 2016. Named entity recognition with bidirectional LSTM-CNNs. Transactions of the Association for Computational Linguistics, 4:357–370.