是时候给你的产品配一个AI问答助手了! (3)

当biLSTM模型在问题和答案上长距离传播依赖关系时,隐藏向量的固定宽度成为瓶颈。通过动态调整问题答案的更多信息部分,可以使用注意力机制来缓解这种弱点。在max/mean pooling前,每个biLSTM输出向量将乘以softmax权重,该权重由biLSTM的问题嵌入得到。

2.2.3 Attentive Pooling Networks[15]

​ QA_LSTM with attention中attention的设计是通过问题对答案的影响进行特征加权,但是它忽略了答案对问题的影响。Attentive pooling networks同时将attention应用到问题和答案,提高算法的准确率。通过同时学习两种输入的表示以及它们之间的相似性测量,其创新点在于将Q和A这两个输入通过参数矩阵U投射到一个共同的表示空间,用Q和A的representation构造了一个矩阵G,分别对G的row和column做max pooling, 这样就能分别能得到Q和A的attention vector。AP_BILSTM模型框架图如下:

img

AP_BILSTM模型的设计首先将问题和答案经过BILSTM抽取特征,然后通过两者的特征计算soft alignment,得到的G矩阵表示了问题和答案相互作用的结果。对该矩阵的列取最大,即为答案对问题的重要性得分,同理对该矩阵行取最大即为问题对答案的重要性得分。这两个向量再作为attention向量分别和问题和答案表示相乘后得到问题和答案新的表示,最后再做匹配。

2.2.4 AICNN[16]

之前关于答案选择的研究通常忽略了数据中普遍存在的冗余和噪声问题。 在本文中,设计一种新颖的注意力交互式神经网络(AI-NN),以专注于那些有助于回答选择的文本片段。 问题答案的表示首先通过卷积神经网络(CNN)或其他神经网络架构来学习。然后AI-NN学习两个文本的每个配对片段的相互作用。 之后使用逐行和逐列池化来收集交互信息。之后采用注意机制来衡量每个细分的重要性,并结合相互作用来获得问答的固定长度表示。 模型框架图如下:

img

2.2.5 MVFNN[17]

​ 上述基于神经网络的方法通过计算注意力来考虑信息的几个不同方面。 这些不同类型的注意力总是简单地总结并且可以被视为“单一视图”,不能从多个方面来审视问题和候选答案,导致严重的信息丢失。 要克服这个问题,此模型提出了一种多视图融合神经网络,其中每个关注组件生成QA对的不同“视图”,并且融合QA本身的特征表示以形成更整体的表示。模型框架图如下:

img

img

对于一个问题,可能会有一堆视图来模拟其相应的答案。 在此模型中,根据直觉构建了四个视图。 这四个视图被命名为查询类型视图,查询主动词视图,查询语义视图和co-attention视图。最后使用fusion RNN模型来对这些视图进行融合。通过不同视图的融合,能对两个对象进行更准确的建模。

2.2.6 BiMPM[18]

针对基于交互这一类方法,一般是先对两个句子的单元相互匹配,之后再聚集为一个向量后做匹配。这种方式可以捕捉到两个句子之间的交互特征,但是之前的方式只是基于词级别的匹配但是忽略了其他层级的信息。此外,匹配只是基于一个方向忽略了相反的方向。一种双向的多角度匹配模型bilateral multi-perspective matching(BiMPM)解决了这方面的不足。模型框架如下图:

img

模型自下而上一共包含五层,分别为单词表示层、上下文表示层、匹配层、聚合层和预测层,其中匹配层为模型的核心,共提出了四种匹配策略,这里的匹配可以看成是attention机制。

单词表示层:使用GloVe模型训练向量,对字符embedding进行随机初始化,单词中的字符组成单词的向量表示作为LSTM网络的输入。

上下文表示层:使用BiLSTM对p和q进行表示。

匹配层:模型的核心层,包含四种匹配策略,分别是:Full-Matching、Maxpooling-Matching、Attentive-Matching和 Max-Attentive-Matching。四种匹配策略如下图:

img

聚合层:利用BiLSTM对匹配层的输出向量进行处理,取得p、q前向和后向最后一个time step的输出进行连接后输入到预测层。

预测层:softmax层,softmax函数分类。

​ 上述是对近几年部分深度文本匹配模型的总结,接下来则介绍基于深度模型的FAQBot。

三、基于深度学习的FAQBot实现

3.1 模型化流程

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/zypyzp.html