深度学习之文本分类模型-基于attention机制

时间:2020-05-21 11:12:58   收藏:0   阅读:146

1、HAN

HAN(Hierarchical Attention Networks)是由Zichao Yang[1]等人提出的一种算法,其主要思想是利用attention机制,将单词进行编码,得到句子的向量s,接着用同样的方式对句子进行编码,最终得到文章的向量V,最终,可以在V上加入softmax,进而进行分类模型的构建。最终在多个数据集上达到了SOTA,其模型结构图如下所示:

技术分享图片

整体的架构包括四个部分:word encoder, word attention, sentence encoder, sentence attention。

技术分享图片
接下来,我们将每个单词双向的GRU输出拼接成一个向量$h_{it} =\left[\overrightarrow{h}_{i t}, \overleftarrow{h}_{i t}\right]$
技术分享图片
技术分享图片

2、inner-attention for NLI

这里介绍一个自然语言推测(NLI)的任务,NLI讲的是一个句子是否可以推测出另外一个句子,这种可以看做是一个分类任务,类别有三种,分别是Entailment (inferred to be true), Contradiction (inferred to be false) and Neutral (truth unknown),例如:
技术分享图片

Yang Liu[2]等人提出了将mean pooling 和 inner-attention方法加入到了这种任务中。其思想整体架构图如下所示
技术分享图片

其网络结构可以看做是孪生网络结构,我们输入"前提"句子和"假设"句子,通过共享的多层网络,最终得到两个句子的表达,最后将两个句子做一个拼接,最后加上一个softmax层,作为最终的分类。

其网络结构由三部分组成:sentence input,sentence encoding, sentence matching

其中Y表示双向LSTM的输出,\(R_{ave}\)表示的平均池化的输出,\(\alpha\)表示attention矩阵,这里论文中的参数介绍的并不是很详细,我理解之所以叫Inner attention是因为它用了内部的LSTM的表达。

3、Attentive Pooling

AP(Attentive Pooling)是用于QA的,其由IBM的Cicero dos Santos(3)等人提出的一种算法,其基本思想是利用一个权重矩阵,将问题Q和答案A进行信息的交互关联,也就是说Q的表达中包含A的一些信息,A的表达中又包含了Q的一些信息,在最后,我们各自提取每个维度的max pooling的值,各自经过softmax,得到相应的表达。总体的结构图如下所示
技术分享图片

由图所示,我们首先得到question和answer的表达,即各自的词向量WEs,接下来,我们利用LSTM或者是CNN提取深层次的特征,对于模型利用LSTM来说,我们叫AP-LSTM,对于利用CNN的模型来说,叫做AP-CNN,接着,我们得到对应的输出Q和A,接着建立一个向量矩阵G,我们利用\(tanh(Q^{T} G A)\)得到Q和A相关的表达G,接下来,利用max pooling,得到row的表达和column的表达,将这两个表达分别进行softmax,进而乘以各自的原始向量Q,A,得到表达\(r_{q}\)\(r_{a}\),我们利用向量相似性计算方式,得到两者的结果。

4、LEAM

LEAM是Guoyin Wang[4]等人提出的将单词和分类的label同时进行embedding,接着利用两者向量的cosin余弦值获得矩阵向量,利用"划窗"方法(这个名字是我自己取得)得到对应的向量,最后输出层依旧是softmax,进行分类预测。整体逻辑架构如下图所示
技术分享图片
这里(a)表示的是传统的分类方法,(b)是作者提出的算法。我们分别来进行讲解。

技术分享图片

5、DRCN

DRCN(Densely-connected Recurrent and Co-attentive neural Network )是由韩国人Seonhoon Kim[5]等人提出的一种算法,其整体思想是将embedding层,RNN隐藏层和经过attention之后的向量进行拼接,并进行多次这样的操作,最终通过一个AE,池化,和全连接操作,得到相应的结果。其主要包括Word Representation Layer、Densely connected Recurrent Networks、Densely-connected Co-attentive networks、Bottleneck component、Interaction and Prediction Layer。接下来我们一步一步来进行解释。

首先我们先放上论文中模型的结构图。
技术分享图片

其中\(e_{p_{i}}^{fix}\)表示第二部分,固定词向量。\(e_{p_{i}}^{tr}\)表示第二部分,可训练词向量。\(c_{p_{i}}\)表示第三部分,字符级别向量。\(f_{p_{i}}\)表示第四部分。最后将这些向量进行拼接,得到输入向量。

在每一个步骤中,我们都会得到两个句子的RNN隐藏层表达,分别为\(h_{p_{i}}\)\(h_{q_{j}}\),我们初始化有一个attention权重矩阵\(\alpha_{ij}\)表示第一个句子第\(i\)个单词和第二个句子第\(j\)个单词的权重,首先,我们根据权重矩阵\(\alpha_{ij}\)和第二个句子\(h_{q_{j}}\)得到第一个句子相应的表达\(\alpha_{p_{i}}\),接下来,我们更新权重矩阵\(\alpha_{ij}\),首先我们获得\(h_{p_{i}}\)\(h_{q_{j}}\)\(\cosin\)余弦值以及\(h_{p_{i}}\)和其他单词的余弦值,但其实这里我有个疑问,就是在第一轮的时候,后面的RNN隐藏层单元还没有得到,这里我们怎么计算余弦值?这里先空着,如果后续有答案了再补上。最终,我们将上面两个部分得到的向量进行拼接,最终得到新的输入向量。
技术分享图片

6、ABCNN

ABCNN(attention based CNN)是由Wenpeng Yin[6]等人提出,其目的是将attention机制加入到CNN中,实验结果取得了SOTA的效果。其模型总共由三个,分别是ABCNN-1,ABCNN-2,ABCNN-3。下面分别来进行介绍。

这两节主要介绍了文本匹配,其实文本匹配在形式上也是一种分类任务,在输出端为二分类,表示相关和不相关,所以将其放在文本分类中进行讲解。

7、Multiway Attention Networks

这篇论文是Chuanqi Tan[7]等人发表的,这篇论文的主要思路是使用了四种attention的方式对句子进行表达,分别是Concat Attention、Bilinear Attention、Dot Attention、Minus Attention四种attention方式,模型整体架构如图所示分为编码层,多方式attention匹配层,聚合层、预测输出层。
技术分享图片

8、aNMM

aNMM(Attention-Based Neural Matching Model)是由Liu Yang[8]等人提出的一种方法,其主要创新点是应用了一个Value-shared Weighting的方式将变长的矩阵转换成固定维度的矩阵,其整体逻辑结构如下图所示

技术分享图片

主要部分有word embedding,QA Matching Matrix,Value-shared Weighting,Question Attention Network四个部分,接下来我们一一进行讲解

参考文献
[1]Zichao Yang(2016)Hierarchical Attention Networks for Document Classification.
[2]Yang Liu(2016)Learning Natural Language Inference using Bidirectional LSTM model and Inner-Attention
[3]Cicero dos Santos(2016)Attentive Pooling Networks.
[4]Guoyin Wang(2018)Joint Embedding of Words and Labels for Text Classification.
[5]Seonhoon Kim(2018)Semantic Sentence Matching with Densely-connected Recurrent and Co-attentive Information
[6]Wenpeng Yin(2018)ABCNN: Attention-Based Convolutional Neural Network for Modeling Sentence Pairs
[7]Chuanqi Tan.Multiway Attention Networks for Modeling Sentence Pairs
[8]Liu Yang(2019)aNMM: Ranking Short Answer Texts with Attention-Based Neural Matching Model.

原文:https://www.cnblogs.com/stephen-goodboy/p/12867236.html

评论(0
© 2014 bubuko.com 版权所有 - 联系我们:wmxa8@hotmail.com
打开技术之扣,分享程序人生!