本文共 2108 字,大约阅读时间需要 7 分钟。
前言
这篇论文是关于NER的一片经典论文,由百度研究院2015年发表。前两篇论文笔记与其说是笔记,更多地却像是在做翻译,最近才开始系统接触NER,便选择了较经典的一篇,基础向。
该论文提出了几种基于LSTM的序列标注模型:LSTM,BiLSTM,LSTM-CRF,BiLSTM-CRF。该工作首次将BiLSTM-CRF应用于NLP基准序列标注数据集。
序列标注包括词性标注(POS)、词义组块(chunk)和命名实体识别(NER),是一个经典型的自然语言处理任务。
传统的命名实体识别就是一种序列标注任务,每个字符输入对应一个标注,如下面这个例子就包含三个实体 整句则可以被标注为 其中, PER:即person,人物 ORG:即organization,组织 LOC:即location,地点 MISC:即miscellaneous,杂项 B,I,E,O分别指示开始,中间,结束,其他由上面可以看到,每个输入字符对应一个标记输出,所以用普通的RNN就可以进行该任务,如图
同理LSTM,更善于捕获长期依赖 这里复习下LSTM,LSTM单元的内部结构如下,这里的是未展开的形式 对应的公式 可以看到图上有四个输入 x t x_t xt,其中一个产生新的候选值,三个输入对应三个门, i t , o t , f t i_t,o_t,f_t it,ot,ft分别对应输入门,输出门,遗忘门。 c t c_t ct代表长期记忆,也是新的候选值。例如,由公式可知若 f t f_t ft接近0,即表示遗忘之前的记忆, i t i_t it接近1,即表示输入门打开,则产生的新候选值仅依赖于当前位置的输入。 h t h_t ht代表短期记忆。 Pytorch的LSTM输出output, (h, c) = self.lstm(x)
其中output为最后一层每个时间步的输出,h为最后一个时间步的 h t h_t ht,c为最后一个时间步的 c t c_t ct。 进一步使用双向的LSTM,即BiLSTM,则可以同时利用前向和后向的输入特征
CRF即条件随机场,是一种判别式无向图模型。给定观测序列 𝒙 = { 𝑥 1 , 𝑥 2 , … , 𝑥 𝑛 } 𝒙=\{𝑥_1,𝑥_2,…,𝑥_𝑛 \} x={ x1,x2,…,xn}, 标记序列 𝒚 = { 𝑦 1 , 𝑦 2 , … , 𝑦 𝑛 } 𝒚=\{𝑦_1,𝑦_2,…,𝑦_𝑛 \} y={ y1,y2,…,yn},则CRF的目标为构建条件概率模型 𝑃 ( 𝒚 ∣ 𝒙 ) 𝑃(𝒚|𝒙) P(y∣x)。
如图,CRF可以应用于词性标注任务。使用势函数和团来定义条件概率 𝑃 ( 𝒚 ∣ 𝒙 ) 𝑃(𝒚|𝒙) P(y∣x),类似于马尔可夫随机场,其中包含两种团:单个标记变量 𝑦 𝑖 {𝑦_𝑖} yi,相邻的标记变量 { 𝑦 𝑖 − 1 , 𝑦 𝑖 } \{𝑦_{𝑖−1},𝑦_𝑖\} { yi−1,yi}
其中 𝑡 𝑗 ( 𝑦 𝑖 + 1 , 𝑦 𝑖 , 𝒙 , 𝑖 ) 𝑡_𝑗 (𝑦_{𝑖+1},𝑦_𝑖,𝒙,𝑖) tj(yi+1,yi,x,i)是两个相邻标记位置上的转移特征函数,表示相邻标记变量的相关关系和观测序列对它们的影响,如 表示第i个观测值为knock时,第i和第i+1个标记很可能分别是[V]和[P]。𝑠 𝑘 ( 𝑦 𝑖 , 𝒙 , 𝑖 ) 𝑠_𝑘 (𝑦_𝑖,𝒙,𝑖) sk(yi,x,i)是标记位置上的状态特征函数,表示观测序列对标记变量的影响,如
表示观测值为knock时,对应标记很可能为[V]。回到该论文,除了CRF还有另一种利用输出标签信息的方法,即先预测每一时间的标签分布,然后寻找最优的标签序列,如最大熵分类器和最大熵马尔可夫模型(MEMM) ,实验表明CRF效果更好。另外一提前者之于CRF类似于LSTM相对于BiLSTM。
结合LSTM与CRF,LSTM可利用过去的输入特征,CRF可利用句子级标签信息。
类似于LSTM-CRF,换成双向LSTM,可同时利用过去和未来的输入特征,可提高标注准确性。
该文用以上模型在三个NLP标注任务上做了性能测试:Penn TreeBank (PTB) POS标记,CoNLL 2000分块,CoNLL 2003命名实体标记。
从三个数据集中提取相同类型的特征,可分为拼写特征和上下文特征。
拼写特征即,该词是否以大写字母开头,是否全大写,是否混合数字等。 上下文特征单字特征,双字特征和三字特征。对比不同模型
消融实验,去掉拼写特征和上下文特征 词性标注性能对比 词义组块性能对比 命名实体识别性能对比该论文系统地对比了基于LSTM网络的序列标记模型,首次将BiLSTM-CRF模型应用于NLP基准序列标注任务。
转载地址:http://vhmgi.baihongyu.com/