赞
踩
中文命名实体识别 (NER) 算法按照输入的类型,可以大致分为 Character-based (字符) 和 Word-based (单词) 两种。这两种方法都存在一些缺陷,Character-based 不能利用词汇和词汇序列信息;Word-based 需要分词,分词的错误会对 NER 结果产生较大影响。因此新加坡的研究者在 2018 年提出了一种 Lattice LSTM 的算法,可以利用词汇信息,也可以避免分词错误对模型的影响。
如上图所示,中文命名实体识别 NER 主要有 Character-based (基于字符) 方法和 Word-based (基于单词) 方法:基于单词的方法首先会利用分词模型对句子分词,然后把分好的单词序列传递到 NER 模型中预测实体。基于字符的方法不对句子分词,每一个 token 就是一个汉字,直接将 token 序列传递到 NER 模型预测实体。但是这两种方法都存在一些问题:
基于上面的原因,新加坡的研究人员于 2018 年提出了 Lattice LSTM 模型,论文《Chinese NER Using Lattice LSTM》。Lattice LSTM 会利用词典匹配句子中的单词,然后构造出字符和单词的网格 (Lattice)。Lattice LSTM 的神经元会同时接收字符和单词的信息,自动选择合适的字符或单词,实现消除歧义的功能,如下图所示。
上图展示了 Lattice LSTM 的结构,可以看成是 Char-LSTM 的扩展版。Lattice LSTM 在 Char-LSTM 的基础上增加了 word-base cell 和额外的门结构,用于控制和选择信息流。
Lattice LSTM 用到的一些数学符号如下图所示:
我们首先看一下传统 Char-LSTM 的计算公式,对于 LSTM 不熟悉的童鞋可以参考之前的文章《循环神经网络 RNN、LSTM、GRU》。Char-LSTM 输出主要包括 cell state c 和 hidden state h,计算公式如下:
上面是 Char-LSTM 的计算公式,Lattice LSTM 在这基础上增加了 word-base cell,用于计算单词子序列的 cell state c。下面的图展示了 word-base cell 的结构:
Word-base cell 计算公式如下,生成一个包含单词信息的 cell state:
在上式中,word-base cell 是不包括输出门向量的,因为 Lattice LSTM 只在 Char-LSTM 上输出。得到 word-base 的 cell state 后,Lattice 需要融合到 Char-LSTM 的 cell state 上,这一过程需要增加一个输入门向量,并且要对输入门向量进行归一化,如下所示:
最终 Lattice LSTM 得到第 j 个字符的 cell state 如下:
Lattice LSTM 的 hidden state h 计算公式和 Char-LSTM 是一样的,最终把 h 传递到 CRF 层即可进行命名实体识别。
Lattice LSTM 优点:
Lattice LSTM 缺点:
Chinese NER Using Lattice LSTM
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。