CNN LSTM并行网络 cnn和lstm结合效果不好_CNN LSTM并行网络

一、前言

本篇论文主要是改进LatticeLSTM的两个缺点:

1、基于LSTM的模型,不能并行处理,效率低;

2、LatticeLSTM不能解决词汇冲突问题,比如下面句子中的“长”,根据前面的“广州市”很容易判断为O,然而整体观察后发现正确是B-GPE

CNN LSTM并行网络 cnn和lstm结合效果不好_神经网络_02

对应的改进方案是:

1、使用CNN来替换LSTM来实现并行化;

2、使用rethinking机制,通过高层特征的语义来优化词向量权重

二、LR-CNN模型

下面看一下具体是如何做的?模型结构如下图所示:

CNN LSTM并行网络 cnn和lstm结合效果不好_神经网络_03

LR-CNN模型主要包括「Lexicon-Based CNNs」和「Refining Networks with Lexicon Rethinking」两部分

2.1、Lexicon-Based CNNs

        假设句子长度为m个字符C = {c1, c2, · · · , cM },Cm代表第m字符的embedding,可能从词典里构成的词使用wml = {cm, · · · , cm+l−1}表示,cm表示词的第一个字符,l表示词的长度。比如上图w12 =广州, w13 =广州市, w32 =市长。模型的第一层是字符输入,此后每层依次都是n-gram的输入,比如第二层就是bi-gram,第三层是tri-gram,以此类推。

      每一层的计算方式如下:

CNN LSTM并行网络 cnn和lstm结合效果不好_自然语言处理_04

      其中〈A, B〉 = Tr(ABT )表示Frobenius内积,比如矩阵A的Frobenius范数定义为矩阵A各项元素的绝对值平方的总和开根。

      使用attention模块( vector-based attention )去融合词典特征。

CNN LSTM并行网络 cnn和lstm结合效果不好_CNN LSTM并行网络_05

 

2.2、Refining Networks with Lexicon Rethinking

        因为CNN的结果所限,在底层的隐藏词汇特征无法获取在高层时隐藏词汇带来的信息。

       对于CNN顶层的特征,

CNN LSTM并行网络 cnn和lstm结合效果不好_神经网络_06

作为high-level features,本文使用这些特征,通过在每个CNN层添加一个反馈层来重新调整词汇注意模块的权重:

CNN LSTM并行网络 cnn和lstm结合效果不好_深度学习_07

       其中

CNN LSTM并行网络 cnn和lstm结合效果不好_ico_08

都是可训练参数,同时为了避免过拟合是注意力模块中的重用参数以减少参数数量,

CNN LSTM并行网络 cnn和lstm结合效果不好_ico_09

代表顶层CNN得到的特征。

       同时利用multi-scale feature attention来适应性地选取句子中同一位置的不同尺度:

CNN LSTM并行网络 cnn和lstm结合效果不好_CNN LSTM并行网络_10

经过处理后

CNN LSTM并行网络 cnn和lstm结合效果不好_ico_11

作为CRF层的输入。

三、LR-CNN实验

3.1、对四个公开数据集对P、R、F1的对比

CNN LSTM并行网络 cnn和lstm结合效果不好_深度学习_12

CNN LSTM并行网络 cnn和lstm结合效果不好_深度学习_13

CNN LSTM并行网络 cnn和lstm结合效果不好_ico_14

CNN LSTM并行网络 cnn和lstm结合效果不好_CNN LSTM并行网络_15

       结论:从上面四个公开的数据集的实验表明LR-CNN的模型性能均优于LatticeLSTM

3.2、解码速度对比

CNN LSTM并行网络 cnn和lstm结合效果不好_神经网络_16

CNN LSTM并行网络 cnn和lstm结合效果不好_自然语言处理_17

       结论:LR-CNN比LatticeLSTM模型的解码速度更快,在Weibo数据集上是3.21倍;而且随着句子长度增加,句子解码速度下降比LatticeLSTM缓慢。

3.3、LR-CNN模型中Rethink机制与Lexicon作用的对比

CNN LSTM并行网络 cnn和lstm结合效果不好_CNN LSTM并行网络_18

结论:多尺度的CNN作用下加入Lexicon的作用非常明显,而Rethink机制在此基础上进一步优化模型性能。