0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

cosFormer:重新思考注意力机制中的Softmax

深度学习自然语言处理 来源:我爱计算机视觉 作者:多模态研究组 - 商 2022-03-30 16:18 次阅读

导读:Transformer在自然语言处理、计算机视觉音频处理方面取得了巨大成功。作为其核心组成部分之一,Softmax Attention模块能够捕捉长距离的依赖关系,但由于Softmax算子关于序列长度的二次空间和时间复杂性,使其很难扩展。

针对这点,研究者提出利用核方法以及稀疏注意力机制的方法来近似Softmax算子,从而降低时间空间复杂度。但是,由于误差的存在,效果往往不尽如人意。

商汤多模态研究组认为,近似操作本身存在的误差使得其效果很难超越Softmax Attention。我们的观点是,与其近似Softmax,不如设计一种方式代替Softmax,并且同时降低时间空间复杂度。

因此,本文提出了名为cosFormer的方法,在时间空间复杂度关于序列长度为线性复杂度的同时,其性能接近或者超越Softmax Attention,并在LRA benchmark上取得SOTA结果。我们的设计核心理念基于两点,首先是注意力矩阵的非负性,其次是对局部注意力的放大(非极大值抑制)。

本文主要介绍已收录于ICLR 2022的一篇文章 cosFormer : Rethinking Softmax in Attention。

06f3c082-afe8-11ec-aa7f-dac502259ad0.jpg

070b788a-afe8-11ec-aa7f-dac502259ad0.png

Part 1

背景

0723e71c-afe8-11ec-aa7f-dac502259ad0.gif

1. Softmax Attention

为了引出我们的方法,对Softmax Attention的计算方式进行一定的推广:

073c17f6-afe8-11ec-aa7f-dac502259ad0.png

其中表示相似度计算函数,如果,上式即变为Softmax Attention(不考虑除以的缩放操作)。注意到计算的时间复杂度为,的时间复杂度为,所以总时间复杂度为,即关于序列长度是二次的。

2. 线性 Attention

通过分析我们发现,性能瓶颈的主要原因是操作,如果相似度函数可以表示为:

0750d6dc-afe8-11ec-aa7f-dac502259ad0.png

那么:

07600c4c-afe8-11ec-aa7f-dac502259ad0.png

根据矩阵运算的结合律:

077434e2-afe8-11ec-aa7f-dac502259ad0.png

上式可以变换为(编者修正:下方公式未变换,请参照论文):

07600c4c-afe8-11ec-aa7f-dac502259ad0.png

经过计算后可以得到该方法的时间复杂度为,即关于序列长度是一次的。

Softmax Attention和线性Attention的计算方式可以用下图概括:

07a1f260-afe8-11ec-aa7f-dac502259ad0.png

所以接下来将介绍的选择,以及核心的reweighting操作。

3. Softmax 的两大性质

我们经过分析以及实验,归纳出Softmax Attention中比较重要的性质,这两个性质可以指导我们的模型设计:

1. 注意力矩阵的非负性

2. 局部注意力的放大(非极大值抑制)

对于第一点,我们有如下实验进行验证(模型结构为RoBERTa):

07bdb856-afe8-11ec-aa7f-dac502259ad0.png

这里Loss表示验证集损失(越低越好),其余指标均为准确率(越高越好)。可以看到,当保证了注意力矩阵的非负性之后,可以达到较好的效果。基于该实验,我们选择为ReLU函数。

对于第二点,我们的方式是在注意力矩阵中引入先验locality信息,观察Softmax注意力矩阵,如下图所示,我们发现其注意力矩阵的权重在对角线附近很集中:

07ce07ce-afe8-11ec-aa7f-dac502259ad0.png

所以我们的方法需要在加了reweighting操作后也更加集中在对角线附近。注意并非所有的有类似权重的函数均适用,这个reweighting的函数需要跟前面的QK一样可以拆分成两个矩阵的乘法的形式。

至此,就可以引入我们的cosFormer了。

Part 2

cosFormer

0723e71c-afe8-11ec-aa7f-dac502259ad0.gif

1. 方法

我们的方法基于线性Attention,首先给出符号定义:

08068432-afe8-11ec-aa7f-dac502259ad0.png

根据之前的分析,我们选择了:

081836fa-afe8-11ec-aa7f-dac502259ad0.png

可得:

08299756-afe8-11ec-aa7f-dac502259ad0.png

为了进行reweighting操作,并且同时保证线性Attention的计算方式依然成立,我们选择了cos函数:

0846632c-afe8-11ec-aa7f-dac502259ad0.png

展开可得:

085b3eaa-afe8-11ec-aa7f-dac502259ad0.png

为了便于展示,我们把它记作:

0872566c-afe8-11ec-aa7f-dac502259ad0.png

最终得到:

088c78ee-afe8-11ec-aa7f-dac502259ad0.png

上式和线性Attention的计算方式一致,经过分析不难得出时间复杂度依然是。

2. 实验结果

我们在单向模型、双向模型以及LRA benchmark上测试了我们的方法,均取得了非常不错的效果。

单向语言模型,指标表示困惑度(越低越好):

08a330ac-afe8-11ec-aa7f-dac502259ad0.png

双向语言模型,指标表示准确率(越高越好):

08be1890-afe8-11ec-aa7f-dac502259ad0.png

LRA benchmark:

1)性能实验,指标表示准确率(越高越好):

08d4c996-afe8-11ec-aa7f-dac502259ad0.png

2)内存速度实验,指标表示速度(越高越好,如果内存溢出,则标记为叉):

08f4b97c-afe8-11ec-aa7f-dac502259ad0.png

审核编辑 :李倩

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 函数
    +关注

    关注

    3

    文章

    4331

    浏览量

    62618
  • 计算机视觉
    +关注

    关注

    8

    文章

    1698

    浏览量

    45993
  • Softmax
    +关注

    关注

    0

    文章

    9

    浏览量

    2512

原文标题:ICLR'22 | cosFormer:重新思考注意力机制中的Softmax

文章出处:【微信号:zenRRan,微信公众号:深度学习自然语言处理】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    ADS1299S是否推荐有与DEMO匹配的传感器头?

    我们目前有个项目主要用于检测幼儿的注意力,请问一下,TI ADS1299S是否推荐有与DEMO匹配的传感器头?如果有,请推荐。
    发表于 11-26 08:30

    什么是LLM?LLM在自然语言处理的应用

    所未有的精度和效率处理和生成自然语言。 LLM的基本原理 LLM基于深度学习技术,尤其是变换器(Transformer)架构。变换器模型因其自注意力(Self-Attention)机制而闻名,这种机制使得模型能够捕捉文本
    的头像 发表于 11-19 15:32 579次阅读

    一种基于因果路径的层次图卷积注意力网络

    机电系统数据驱动故障检测模型的性能和可解释性。引入了一种混合因果发现算法来发现监测变量之间的继承因果关系。顺序连接因果变量的因果路径用作接收场,使用多尺度卷积来提取特征。基于分层注意力机制来聚合
    的头像 发表于 11-12 09:52 276次阅读
    一种基于因果路径的层次图卷积<b class='flag-5'>注意力</b>网络

    一种创新的动态轨迹预测方法

    本文提出了一种动态轨迹预测方法,通过结合历史帧和历史预测结果来提高预测的稳定性和准确性。它引入了历史预测注意力模块,以编码连续预测之间的动态关系,并通过三重因子注意力模块实现了最先进的性能。本方法能够生成准确且稳定的未来轨迹,这对于自动驾驶系统落地至关重要。
    的头像 发表于 10-28 14:34 413次阅读
    一种创新的动态轨迹预测方法

    2024 年 19 种最佳大型语言模型

    ,当时一篇题为“通过联合学习对齐和翻译的神经机器翻译”的研究论文中引入了注意力机制(一种旨在模仿人类认知注意力的机器学习技术)。2017年,另一篇论文“注意力就是你
    的头像 发表于 08-30 12:56 531次阅读
    2024 年 19 种最佳大型语言模型

    【《大语言模型应用指南》阅读体验】+ 基础知识学习

    并捕捉长距离依赖关系的神经网络结构。Transformer通过编码器(Encoder)和解码器(Decoder)两部分实现语言的编码和解码。 注意力机制:Transformer注意力
    发表于 08-02 11:03

    Transformer模型在语音识别和语音生成的应用优势

    随着人工智能技术的飞速发展,语音识别和语音生成作为人机交互的重要组成部分,正逐渐渗透到我们生活的各个方面。而Transformer模型,自其诞生以来,凭借其独特的自注意力机制和并行计算能力,在
    的头像 发表于 07-03 18:24 1111次阅读

    【大规模语言模型:从理论到实践】- 阅读体验

    再次感谢电子发烧友提供的书籍试读机会。今天来分享下我在学习大模型训练 注意力机制 的心得体会。 虽然注意力机制可以显著提高模型处理长序列数
    发表于 06-07 14:44

    浪潮信息发布源2.0-M32开源大模型,模算效率大幅提升

    5月28日,浪潮信息发布“源2.0-M32”开源大模型。“源2.0-M32”在基于”源2.0”系列大模型已有工作基础上,创新性地提出和采用了“基于注意力机制的门控网络”技术
    的头像 发表于 05-29 09:34 431次阅读
    浪潮信息发布源2.0-M32开源大模型,模算效率大幅提升

    浪潮信息发布“源2.0-M32”开源大模型

    浪潮信息近日推出了革命性的“源2.0-M32”开源大模型。该模型在源2.0系列基础上,引入了“基于注意力机制的门控网络”技术,构建了一个包含32个专家的混合专家模型(MoE),有效提升了模型算效率。
    的头像 发表于 05-29 09:08 650次阅读

    采用单片超构表面与元注意力网络实现快照式近红外光谱成像

    日前,北京理工大学王涌天教授、黄玲玲教授团队联合张军院士、边丽蘅教授团队,采用单片超构表面与元注意力网络实现快照式近红外光谱成像。
    的头像 发表于 04-25 09:08 1145次阅读
    采用单片超构表面与元<b class='flag-5'>注意力</b>网络实现快照式近红外光谱成像

    阿里巴巴发布AtomoVideo,兼容多款文生图模型的高保真图像视频框架

    AtomoVideo运用预设的 T2I 模型,在每个空间卷积层和注意力层后新增一维时空卷积和注意力模块。现有的 T2I 模型参数固定不变,它们只会训练新增的时空层,而输入的串联图像信息由 VAE 编码解析
    的头像 发表于 03-07 11:22 799次阅读

    【研究动态】万物纵横杨帆博士在Applied Soft Computing发表石化生产异常工况预警的人工智能算法研究成果

    近日,计算机科学领域著名期刊《Applied Soft Computing》(SCI一区, Top期刊)刊载了四川万物纵横 杨帆博士 与四川大学合作的最新工业智能研究成果《基于注意力机制的催化裂化装置异常工况预警》
    的头像 发表于 01-23 13:32 601次阅读
    【研究动态】万物纵横杨帆博士在Applied Soft Computing发表石化生产异常工况预警的人工智能算法研究成果

    OneFlow Softmax算子源码解读之BlockSoftmax

    写在前面:笔者这段时间工作太忙,身心俱疲,博客停更了一段时间,现在重新捡起来。本文主要解读 OneFlow 框架的第二种 Softmax 源码实现细节,即 block 级别的 Softmax
    的头像 发表于 01-08 09:26 716次阅读
    OneFlow <b class='flag-5'>Softmax</b>算子源码解读之BlockSoftmax

    OneFlow Softmax算子源码解读之WarpSoftmax

    写在前面:近来笔者偶然间接触了一个深度学习框架 OneFlow,所以这段时间主要在阅读 OneFlow 框架的 cuda 源码。官方源码基于不同场景分三种方式实现 Softmax,本文主要介绍其中一种的实现过程,即 Warp 级别 Softmax,适用于矩阵宽度不超过 1
    的头像 发表于 01-08 09:24 857次阅读
    OneFlow <b class='flag-5'>Softmax</b>算子源码解读之WarpSoftmax