3、 IAN
本文作者认为目标和情境都可以单独建模,需要通过交互学习来学习它们自己的表现形式。在此基础上,提出了交互式注意网络(interactive attention networks, IAN),实现了目标和语境的注意力交互学习,并分别生成目标和语境的注意力表征。具体的,本文提出了基于长短期记忆网络(LSTM)和注意力机制的交互式注意力网络(Interactive Attention Networks,IAN)模型。情感分类网络利用与目标相关的注意力机制从上下文中获取重要信息,并计算上下文表示来进行情感分类。此外,网络利用上下文的交互信息监督目标的建模,这有助于判断情感。最后,将目标表示和上下文表示连接起来,IAN预测了目标在其上下文中的情感极性。
图4 IAN结构图
IAN模型由两部分组成,对目标和上下文进行交互建模。以单词嵌入为输入,采用LSTM网络来分别获得目标和其上下文在单词层面的隐藏状态。使用目标的隐藏状态和上下文的隐藏状态的平均值来监督注意力向量的生成,通过注意力机制来捕捉上下文和目标中的重要信息。通过这种设计,目标和上下文可以交互地影响其表示的生成。最后,串联目标表征和上下文表征作为最终表征,并被送入softmax函数用于属性级情感分类。
单词嵌入层:将每个单词嵌入到一个低维实值向量中。词的嵌入可以看作是神经网络的参数,也可以看作是通过语言模型从适当的语料库中预先训练出来的。
LSTM隐藏层:
得到上下文语境的隐藏状态、目标隐藏状态,以及上下文和目标的初始表征:
注意力层:将上下文与目标的表征分别送入注意力层,考虑目标对上下文的影响和上下文对目标的影响:
最终,得到目标与上下文的表征:
最后,将目标表征和上下文表征连接成一个向量d作为分类器。这里,使用一个非线性层将d投射到目标C类的空间中:
当前SOTA!平台收录IAN共3个模型实现。
项目 | SOTA!平台项目详情页 |
IAN |
前往 SOTA!模型平台获取实现资源:https://sota.jiqizhixin.com/project/ian |
4、 AF-LSTM
本文主要是针对ATAE-LSTM的改进,提出了AF-LSTM。通过增加一个Word- Aspect Fusion(aspect与word融合层)分离各层的职责,使模型首先对aspect和words之间的关系进行建模,然后使注意力层专注于学习已经经过融合的上下文words的相对重要性。
图5 AF-LSTM整体架构
Word-Aspect Fusion Attention Layer:模型输入是句子向量和aspect向量 s,句子长度为 L, 词向量维度为 k。
LSTM layer:句子向量作为LSTM模型的输入,输出是隐藏层向量H,模型参数向量维度为 d。
Word-Aspect Fusion Attention Layer:这一层是模型的重点。首先,对于LSTM的每个输出向量hiϵ H,都会学习word与aspect的联合表示,结果记为miϵR^d 。它对上下文单词h_i和aspect之间的关系进行了编码,为了学习h和s的联合表示,论文使用了associative memory operators 来得到m_i 。随后,经过编码的联合表示m1 ,m2,...,mL作为注意力层的输入,得到的结果进入Weighted Sum层进行加权求和。相对于ATAE-LSTM模型,这里最大的不同就是增加了一个word-aspect融合层,代替了原来的直接拼接的操作。这个操作就是用来建模acpect与words的关系,论文中对于这个操作定义了两个运算符,circular correlation和circular convolution ,分别定义如下:
总的来说,关联层的输出定义如下:
在学习h_i 和s的关联之前,还使用了一个可选的归一化层。接下来,将每个隐藏状态h_t和属性向量s通过关联运算符的组成用于学习注意力:
最终表示如下:
将句子的加权表示r传递到最后一层,该层将加权表示r转换为概率分布。这一层也包括一个线性转换层,然后是一个softmax函数。最后一层定义如下:
采用交叉熵损失函数进行优化:
当前SOTA!平台收录AF-LSTM共1个模型实现。
项目 | SOTA!平台项目详情页 |
AF-LSTM |
前往 SOTA!模型平台获取实现资源:https://sota.jiqizhixin.com/project/af-lstm |
前往 SOTA!模型资源站(sota.jiqizhixin.com)即可获取本文中包含的模型实现代码、预训练模型及API等资源。
网页端访问:在浏览器地址栏输入新版站点地址 sota.jiqizhixin.com ,即可前往「SOTA!模型」平台,查看关注的模型是否有新资源收录。
移动端访问:在微信移动端中搜索服务号名称「机器之心SOTA模型」或 ID 「sotaai」,关注 SOTA!模型服务号,即可通过服务号底部菜单栏使用平台功能,更有最新AI技术、开发资源及社区动态定期推送。