从三大顶会论文看百变Self-Attention

本文探讨了三篇EMNLP 2019会议中关于Self-Attention结构改进的论文,包括结合结构性位置表示增强Self-Attention的句子结构建模能力,多粒度Self-Attention用于短语建模,以及通过“Constituent Attention”实现树结构效果的Tree Transformer。研究发现,Self-Attention的结构可以通过各种方式优化,以提高对句子结构和语义的理解,同时,一些Transformer头部可能并不必要,且减少头部数量甚至可以提高性能。
摘要由CSDN通过智能技术生成

640

作者丨刘朋伯

学校丨哈尔滨工业大学硕士生

研究方向丨自然语言处理

研究背景

本人维护了一个 NLP 论文集仓库:

https://github.com/PengboLiu/NLP-Papers

首先简单讲一下 Self Attention。

Self Attention 原本是 Transformer 中的一个结构,现在很多时候也被单独拿出来作为一个特征抽取器。输入是一个 Query 向量,一个 Key 向量和一个 Value 向量。在 Self Attention 中,三者相同。640?wx_fmt=png是模型维度。


640?wx_fmt=png

如果是 Multi-Head Attention,那就把多个 Attention 拼在一起。

640

简单粗暴又有效,那么能不能对这种结构进行一些改进呢?

首先是 EMNLP 2019 中,腾讯 AI Lab 的三篇关于改进 SANs 的论文(本文中,Self Attention Networks 简记为 SANs)。

640?wx_fmt=png

640?wx_fmt=png

在 Transformer 中,SANs 本身不能表示句子结构的,句子的序列信息是靠 “position encoding” 得到的。

本文对此进行改进,在 SANs 中融合了结构性的位置表示信息,以此增强 SANs 对句子潜在结构的建模能力。当然并没有舍弃原有的 position encoding,本文是把序列信息和结构信息一并使用

结构化位置表示:position encoding 是根据句子中单词的实际位置建模,而本文引入了依存句法树表示单词之间的关系。直觉上来说,这种方法能挖掘出更多关于句子中各个词语之间的依存信息。

本文介绍了两种位置:绝对结构位置和相对结构位置(使用 Stanford Parser):

1. 绝对结构位置:把主要动词作为原点,然后计算依存树上每个单词到原点的距离;

2. 相对结构位置:根据以下规则计算每两个单词之间的距离:

  • 在依存树的一条边上,两个单词的绝对结构位置之差就是相对结构位置; 

  • 如果不在同一条边,两个单词的绝对结构位置之和乘 1(两个单词在句子中正序)或 -1(两个单词在句子中正序逆序)或 0 (同一个单词)

最后,序列绝对位置和结构绝对位置通过非线性函数结合在一起得到绝对位置的表示。至于相对位置,因为每个时间步的单词都不同,方法和绝对位置表示也不一样。这里,作者参考了 Self-Attention with Relative Position Representations [1] 中的方法。

作者在 NMT 和 Linguistic Probing Evaluation 两个任务上进行试验,结果表明无论是相对结构位置还是绝对结构位置都能更好地在句法和语义层面上建模,从而达到更好的效果。


640?wx_fmt=png

640?wx_fmt=png

上一篇论文是利用 Parser 生成依存句法树进而改变 SANs 的输出,这篇论文则在 SANs 的结构做了一些改动,目的类似,也是为了增加句子的句法结构信息。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值