赞
踩
本文提出了一种用于中文NER的LSTM的格子模型,与传统使用字向量的模型相比,本文提出的模型显式地利用了字序列之间的关系。与传统使用词向量的模型相比,本文提出的模型能够很好的避免分词错误带来的影响。
作为信息抽取任务的基本步骤,NER一直受到NLP学界的广泛关注。传统方法一般把NER看作是一个序列标记问题,同时预测序列中的实体边界以及实体所属的类别。
中文NER问题很大程度上取决于分词的效果,比如实体边界和单词的边界在中文NER问题中经常是一样的。所以在中文NER问题中,学者们通常先对文本进行分词然后再预测序列中单词的类别。这样一来会导致一个问题,即在分词中造成的错误会影响到NER的结果。
那么基于字向量的模型是不是就完美解决上述问题了呢?显然不会,因为如果单纯采用字向量的话会导致我们拆开了很多并不应该拆开的词语,从而丢失了它们本身的内在信息(比如“上海”这个词如果拆成字向量就成了“上”和“海”,这两个字的单独含义明显与它们组合起来的词的含义大相庭径)。
为了解决这个问题,本文提出了一种新型的格子结构(lattice structure),它能够将单词本身的含义加入基于字向量的模型中(比如LSTM-CRF)。
如上图所示,格子结构最终会包含一个我们自动学出来的词典里的词(比如图中的“南京”,“市长”,“长江”,“大桥”,“南京市”,“长江大桥”),这样一来,我们的模型就会避免一些使用字向量造成的歧义,比如上图如果按照一个个字来组合的话还能组成“南京”,“市长”,“江大桥”这样的组合,由于“江大桥”不在词格中,我们的模型就很好的避免了这种歧义。
如上图所示,如果图中每条路径都去考虑的话,那么路径的个数是指数级增长的,所以我们利用模型来控制从头到尾的信息流。
如上图所示,模型中的LSTM门结构会控制每条路径到其它路径的信息流。
与其它模型相比,本文提出的模型老牛逼了。
本文提出的模型是基于在英文NER领域取得了最佳效果的LSTM-CRF模型改进的。
首先,我们以字为基本单位定义一个输入句子s为:
s又可以用词为基本单位被表示为:
我们设
接下来我们来比较三种模型的特点
基于词向量的模型
如上图所示,原理和字向量的大同小异,就是将输入由字序列改成了词序列而已,本文不做赘述。
词格模型(Lattice Model)
如图所示,和基于字向量的模型有些不同,
在得到所有隐含层的输出
其中
最后再使用first-order Viterbi算法找到概率最大的序列,就是最终的输出。
在给定人工标记的训练数据
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。