前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >用MLP代替掉Self-Attention

用MLP代替掉Self-Attention

作者头像
Mezereon
发布2021-05-17 12:20:05
1.9K0
发布2021-05-17 12:20:05
举报
文章被收录于专栏:MyBlogMyBlog

用MLP代替掉Self-Attention

这次介绍的清华的一个工作 “Beyond Self-attention: External Attention using Two Linear Layers for Visual Tasks”

用两个线性层代替掉Self-Attention机制,最终实现了在保持精度的同时实现速度的提升。

这个工作让人意外的是,我们可以使用MLP代替掉Attention机制,这使我们应该重新好好考虑Attention带来的性能提升的本质。

Transformer中的Self-Attention机制

首先,如下图所示:

self-attention

我们给出其形式化的结果:

其中, 同时

这里,我们给出一个简化版本,如下图所示:

simplified self-attention

也就是将 都以输入特征 代替掉,其形式化为:

然而,这里面的计算复杂度为 ,这是Attention机制的一个较大的缺点。

外部注意力 (External Attention)

如下图所示:

external-attention

引入了两个矩阵 以及 , 代替掉原来的

这里直接给出其形式化:

这种设计,将复杂度降低到, 该工作发现,当 的时候,仍然能够保持足够的精度。

其中的 操作是先对列进行Softmax,然后对行进行归一化。

实验分析

首先,文章将Transformer中的Attention机制替换掉,然后在各类任务上进行测试,包括:

  • 图像分类
  • 语义分割
  • 图像生成
  • 点云分类
  • 点云分割

这里只给出部分结果,简单说明一下替换后的精度损失情况。

图像分类

image-cls

语义分割

semantic-segmentation

图像生成

generation

可以看到,在不同的任务上,基本上不会有精度损失。

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 用MLP代替掉Self-Attention
    • Transformer中的Self-Attention机制
      • 外部注意力 (External Attention)
        • 实验分析
        领券
        问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档