1、摘要

  基于 transformer 的模型的巨大成功得益于强大的多头自我注意机制,该机制从输入中学习token依赖并编码语境信息。先前的工作主要致力于针对具有不同显著性度量的单个输入特性的贡献模型决策,但是他们没有解释这些输入特性如何相互作用以达到预测。这篇论文就提出了一种用于解释Transformer内部信息交互的自注意属性算法ATTATTR。文章以 BERT 模型为例进行了以下实验:
  (1)提取各层最依赖关系,构造属性图,揭示Transformer内部的层次交互;
  (2)用自我注意归因来识别重要的注意头,而其他的可以被裁剪,只有边际的性能退化;
  (3)证明了归因结果可以作为对抗模式来实施对 BERT 的非目标攻击。

2、拟解决问题

  提出了一种用于解释Transformer内部信息交互的自注意属性算法ATTATTR。

3、实验

3.1 归因

  归因?可能很多同学对这个词有点陌生,网上的解释:指人们对他人或自己行为原因的推论过程。 具体的说,就是观察者对他人的行为过程或自己的行为过程所进行的因果解释和推论。 文章中的归因意思大致相同,只不过这个对象不是人,而是模型的预测结果,即模型预测的结果的产生原因。比如将下图输入给分类模型。

  预测结果可能为猫,狗,鸟等等,预测每一个类别都会被某个/某些特征所决定,比如体型,眼睛等等。这些就是其预测结果的归因。这篇论文就是结合归因,得出某些token的归因分数,并进行可视化,让我们能够更加形象看到结果是由哪些原因造成的。那么这个归因分数是怎么计算的呢?

  首先,回顾下Transformer的注意力计算:

  对于以上公式不熟悉的同学可以读下论文《attention is all you need》这里就不做介绍了。

  之后,作者利用Transformer每个head的attention分数,去乘以该head的归因,就得到了归因分数矩阵,如下公式所示:

  在这里,我们可以理解为归因是一个系数,乘以Ah矩阵后,就得到了该head的归因分数。那这个公式中的归因值是怎么来的呢?文章主要引用了《Axiomatic Attribution for Deep Network》的计算归因的方法。这篇计算归因的文章讲解可以看某呼文章《积分梯度:一种新颖的神经网络可视化方法》。这篇文章无论是从是从原理角度,还是从公式角度讲的都比较清楚,这里就不细讲了。

  归因的具体计算就是将0-1的积分近似为平均来计算的,如下所示。相关的代码实现可以参考这里。

3.2、归因图

  这部分主要是作者将归因分数具体到每个token并可视化的一个过程,而且平常我们也基本用不到这种方法,而且实现较复杂,但没什么具体技术含量,在此就不多做讲解,感兴趣的可以阅读原文。

3.3、head剪枝

  这部分比较简单,其实就是利用归因分数的大小对head做了一个重要性排序,分数越高,重要性越大。论文中主要用了下面方法:

即取某个head的attention score矩阵中分数最大的值,然后在比较。E表示期望,x表示样本(验证集样本),就是说,从验证集中随机取一些数据,跑一遍,我们就可以得到在每条数据中每个head的归因最大分数,将每个head的这个分数求期望,然后排序。
  以下为在不同数据集上剪枝不同比例之后accuracy的结果对比。从结果可以看到,使用论文中的剪枝方法(蓝线),准确率衰减还是比较慢的。但本人认为,在工程实践时,大部分都不会裁剪过大比例(因为要保证准确率),所以相比Taylor expansion方法,几乎没什么区别。

  之后,作者提出,head重要性分数和数据是否存在什么关系,比如同领域的数据head重要性排序是否一致,同类型任务的head重要性排序是否一致等等。因此,论文通过实验做了对比,如下所示。横纵坐标都表示head的归因分数,即不同数据集下head归因分数统计,Pearon r表示皮尔逊系数,越大表示越相关。从图中可以看到,RTE、MRPC和MNLI都具有很大的相关性,RTE、MRPC和SST-2相关性很低,RTE、MRPC和MNLI都是2句分类的任务,区别在于一个和MNLI是同领域,一个不同,而SST-2是单句分类任务。这说明,归因分数方法得到的head重要性只跟任务类型有关,和数据是否同领域无关。

3.4、触发词攻击

  利用归因分数topK的词(最大不超过5)去替换测试集句子中的某些词,注意,替换词之间的相对位置要类似。那么这个归因分数怎么具体到这个token的呢?文章并没有具体说明,但是在之前构造归因图的时候,通过公式,应该是根据token关注的分数之和计算的。
攻击的例子:

攻击结果:

  反正意思就是利用论文中归因分数得到的token替换到其他句子中,会极大的影响句子原本的分类标签。整体的准确率下降很多,比如MNLI的entailment标签准确率下降了80%。进一步证明了归因分数对于解释Transformer内部信息解释的合理性。

4、结论

  提出了自我注意归因算法ATTATTR ,它解释了变压器内部的信息交互作用,使得自我注意机制更具解释性。然后利用分配得分推导出交互图,从而可视化变换器的信息流。对归因做了定量分析,以证明 ATTATTR 的有效性。在此基础上,利用所提出的方法对最重要的关注点进行识别,从而提出了一种新的关注点剪枝算法。最后,论文说明 ATTATTR 还可以用来构造对抗性触发器来实现非目标的攻击。在未来,可以应用这种方法来检查其他模型架构的信息交互,如 LSTM。

论文链接:《Self-Attention Attribution:
Interpreting Information Interactions Inside Transformer》

论文笔记 -《Self-Attention Attribution: Interpreting Information Interactions Inside Transformer》相关推荐

  1. 论文笔记之Understanding and Diagnosing Visual Tracking Systems

    Understanding and Diagnosing Visual Tracking Systems 论文链接:http://dwz.cn/6qPeIb 本文的主要思想是为了剖析出一个跟踪算法中到 ...

  2. 《Understanding and Diagnosing Visual Tracking Systems》论文笔记

    本人为目标追踪初入小白,在博客下第一次记录一下自己的论文笔记,如有差错,恳请批评指正!! 论文相关信息:<Understanding and Diagnosing Visual Tracking ...

  3. 论文笔记Understanding and Diagnosing Visual Tracking Systems

    最近在看目标跟踪方面的论文,看到王乃岩博士发的一篇分析跟踪系统的文章,将目标跟踪系统拆分为多个独立的部分进行分析,比较各个部分的效果.本文主要对该论文的重点的一个大致翻译,刚入门,水平有限,如有理解错 ...

  4. 目标跟踪笔记Understanding and Diagnosing Visual Tracking Systems

    Understanding and Diagnosing Visual Tracking Systems 原文链接:https://blog.csdn.net/u010515206/article/d ...

  5. 追踪系统分模块解析(Understanding and Diagnosing Visual Tracking Systems)

    追踪系统分模块解析(Understanding and Diagnosing Visual Tracking Systems) PROJECT http://winsty.net/tracker_di ...

  6. ICCV 2015 《Understanding and Diagnosing Visual Tracking Systems》论文笔记

    目录 写在前面 文章大意 一些benchmark 实验 实验设置 基本模型 数据集 实验1 Featrue Extractor 实验2 Observation Model 实验3 Motion Mod ...

  7. Understanding and Diagnosing Visual Tracking Systems

    文章把一个跟踪器分为几个模块,分别为motion model, feature extractor, observation model, model updater, and ensemble po ...

  8. CVPR 2017 SANet:《SANet: Structure-Aware Network for Visual Tracking》论文笔记

    理解出错之处望不吝指正. 本文模型叫做SANet.作者在论文中提到,CNN模型主要适用于类间判别,对于相似物体的判别能力不强.作者提出使用RNN对目标物体的self-structure进行建模,用于提 ...

  9. ICCV 2017 UCT:《UCT: Learning Unified Convolutional Networks forReal-time Visual Tracking》论文笔记

    理解出错之处望不吝指正. 本文模型叫做UCT.就像论文题目一样,作者提出了一个基于卷积神经网络的end2end的tracking模型.模型的整体结构如下图所示(图中实线代表online trackin ...

  10. CVPR 2018 STRCF:《Learning Spatial-Temporal Regularized Correlation Filters for Visual Tracking》论文笔记

    理解出错之处望不吝指正. 本文提出的模型叫做STRCF. 在DCF中存在边界效应,SRDCF在DCF的基础上中通过加入spatial惩罚项解决了边界效应,但是SRDCF在tracking的过程中要使用 ...

最新文章

  1. css html span 块状不换行
  2. 2017年深度学习必读31篇论文(附下载地址)
  3. 算法转AI平台工程师记录-0
  4. IOS之学习笔记二(块)
  5. 【REPERTOIRE】Rastaman Vibration
  6. Venn网络展示富集分析结果
  7. uc for linux,在uClinux文件系统中增加应用程序
  8. 解决Linux里面未启用网卡的问题
  9. c语言程序100例第4题 参考了参考答案
  10. POJ 3421 X-factor Chains
  11. Git:常用命令(自用)
  12. hp DV4 声卡驱动 IDT声卡补丁1.1
  13. 从日文输入法项目看心理模型和实现模型
  14. 美通社企业新闻汇总 | 2019.3.1 | 东京是亚洲商务休闲最佳目的地;贺恩霆担任赛诺菲中国区总裁...
  15. 微信小程序踩坑-Cookie登陆失败
  16. 侯宁彬出席“春风拂槛”唐文化论坛并发表主题演讲
  17. macOS 入门指南
  18. C语言/C++编程学习,新手初学者篇
  19. MybatisPlus整合SpringBoot全教程,用起来不要太方便
  20. verlay虚拟化技术_Overlay介绍

热门文章

  1. 单片机计算机加减乘除汇编,运用单片机进行加减乘除法的运算
  2. android wifi 广播吗,Android WIFI开发之广播监听
  3. PHP开源网站管理系统
  4. Vue中使用Cesium.js的库
  5. OSChina 周一乱弹 —— 最励志演讲
  6. 诛仙3游戏服务器获取玩家角色信息,《诛仙2》角色数据转移工作4日启动
  7. 2人反应堆:情人节约会推荐小游戏
  8. 正则匹配字符串中汉字及中文标点符号
  9. java 英文单词拼写纠正框架(Word Checker)
  10. Vue2.x全家桶学习笔记