Backbone | 谷歌提出LambdaNetworks:无需注意力让网络更快更强(文末获取论文源码)(一)

简介: Backbone | 谷歌提出LambdaNetworks:无需注意力让网络更快更强(文末获取论文源码)(一)

1 简介


本文提出新的层:Lambda Layers,一种自注意力的替代方法,主要用于捕获输入和Content结构化的信息(例如一个像素被其他像素包围)之间的远程交互。Lambda Layer通过将Content转换成称为Lambda的线性函数,并将这些线性函数分别应用于每个输入以捕获此类交互。

与线性注意类似,Lambda层绕过了复杂的注意力图,但是相反,它们对内容和基于位置的交互都进行了建模,这使它们可以应用于大型结构化输入(例如图像)。由此产生的神经网络体系结构LambdaNetworks在ImageNet分类,COCO目标检测和COCO实例分割方面明显优于其卷积和注意力,同时具有更高的计算效率。

image.png

此外,作者还设计了LambdaResNets,是一个跨尺度的混合体系结构,可显著改善图像分类模型的速度-准确性权衡。LambdaResNets在ImageNet上具有出色的准确性,而其速度是流行的EfficientNets的3.2-4.4倍。在使用额外的130M伪标签图像进行训练时,LambdaResNets在相应的EfficientNet精度上可实现高达9.5倍的加速。

Lambda Layer主要贡献:

  • 1、提出了Content-Based和Position-Based的交互建模的Lambda层,而且很容易通过einsum操作卷积核实现高效的操作;
  • 2、Lambda层提供了通Channel、Spatial和Linear Attention的统一视图;
  • 3、在ImageNet分类任务上Lambda层显著优于卷积和Attention,同时计算效率更高;
  • 4、Lambda层延迟低同时对于内存的需求也比较小
  • 5、提出混合模型方法作为最大限度地权衡Lambdanworks速度-精度的方法;
  • 6、通过结合Lambda Layer设计了LambdaResNets,并且达到SOTA水平;
  • 7、在半监督学习中,使用额外的1.3亿个伪标签图像进行训练,实现了9.5倍的加速;
  • 8、使用Mask-RCNN对LambdaResNets进行COCO对象检测和实例分割的评估。LambdaResNet在2个任务的均有所提升。

2 解决的问题


  • 1、模型精度的提升长期依赖于数据集;
  • 2、Self-Attention虽然一定程度上解决了问题1,但是其巨大的内存需求阻碍了其在长序列和多维数据上的应用。

本文提出Lambda层主要是解决上诉2个问题,它以降低内存成本的方式对查询和同一组结构化Content元素之间的远程交互进行建模。Lambda层将每个Content转换为一个线性函数,称为Lambda函数,然后直接应用于相应的查询。Self-Attention定义了查询和Content元素之间的相似Kernel,而Lambda层则将Content信息总结为一个固定大小的线性函数(即矩阵),从而绕过了对内存密集型注意映射的需求。

下图中说明了差异

image.png

Global Content中包含3个查询块及其Local Content的示例

image.png

Self-Attention将每个查询块与其Content的Attention分布联系起来

image.png

Lambda层将每个Content转换为相应查询块的线性函数Lambda函数

本文所提的Lambda层是通用的,可以实现为全局、局部或Mask Content中Content-Based和Position-Based的交互建模。由此设计产生的神经网络(LambdaNetworks)计算效率高,以很小的内存成本模拟了长期依赖关系,因此可以应用于高分辨率图像等大型结构化输入。


3 远程交互建模


3.1 定义说明

符号

表示一个集合的基数,该集合的元素用作索引;表示的第行,表示的第行、第列元素。在可能的情况下,采用self-attention来提高可读性,并突出差异。

Query和Context

这里使用向量来表示Query,使用结构化集合来表示Context;其中每个query 以为Context 和对应位置为特征;类似地,每个Context元素以其Context 和在Context的位置为特征。对可以指结构化元素之间的任何成对关系,例如图中像素之间的相对距离或节点之间边的相对距离。

interactions

这里使用映射函数和给定的Context C 将query 映射输出向量。当处理结构化输入时,此函数可作为神经网络中的一层。参考Context-Based的交互和 Position-Based的交互注意到,虽然绝对位置信息有时直接添加到query(或context元素)content,但作者认为这种类型的交互是Position-Based,因为它忽略了关系查询和Context元素之间的位置。

3.2 引入Keys来捕捉long-range interactions

在深度学习的背景下,优先考虑Fast batched linear操作和使用dot-product操作作为交互。这促使引入向量,这些向量可以通过dot-product操作与query交互,因此具有与query相同的维数。

特别是,Content-Based交互需要依赖于的维向量,通常称为关键。相反,Position-Based交互需要一个相对位置嵌入。由于 query/key 深度和context空间维度不在输出中,所以这些维度需要压缩作为层计算的一部分。

因此,每个捕获远程交互的层都可以根据它是先缩小query深度还是先缩小context位置来描述。

3.3 Attentional interactions

收缩查询深度首先在query元素和Context元素之间创建一个相似核(Attention Map),称为Attention操作。由于Context位置的数量越来越大,而输入和输出维度和保持不变,假设层输出是一个相对小维度的向量,则可以假设计算Attention Map是没必要的。

3.5 Lambda interactions

与Attentional interactions相反,对于一些线性函数来说,简单地将每个query映射为或许是更有效的。在这种情况下,Context被聚合成一个固定大小的线性函数。每个作为一个小的线性函数,独立于Context存在,并在应用到其关联的query 后被丢弃。

相关文章
|
12月前
|
机器学习/深度学习 计算机视觉
RT-DETR改进策略【Neck】| ASF-YOLO 注意力尺度序列融合模块改进颈部网络,提高小目标检测精度
RT-DETR改进策略【Neck】| ASF-YOLO 注意力尺度序列融合模块改进颈部网络,提高小目标检测精度
413 3
RT-DETR改进策略【Neck】| ASF-YOLO 注意力尺度序列融合模块改进颈部网络,提高小目标检测精度
|
11月前
|
网络协议 物联网
VB6网络通信软件上位机开发,TCP网络通信,读写数据并处理,完整源码下载
本文介绍使用VB6开发网络通信上位机客户端程序,涵盖Winsock控件的引入与使用,包括连接服务端、发送数据(如通过`Winsock1.SendData`方法)及接收数据(利用`Winsock1_DataArrival`事件)。代码实现TCP网络通信,可读写并处理16进制数据,适用于自动化和工业控制领域。提供完整源码下载,适合学习VB6网络程序开发。 下载链接:[完整源码](http://xzios.cn:86/WJGL/DownLoadDetial?Id=20)
402 12
|
12月前
|
机器学习/深度学习 自然语言处理 计算机视觉
RT-DETR改进策略【Backbone/主干网络】| CVPR 2024 替换骨干网络为 RMT,增强空间信息的感知能力
RT-DETR改进策略【Backbone/主干网络】| CVPR 2024 替换骨干网络为 RMT,增强空间信息的感知能力
507 13
RT-DETR改进策略【Backbone/主干网络】| CVPR 2024 替换骨干网络为 RMT,增强空间信息的感知能力
|
12月前
|
机器学习/深度学习 计算机视觉
RT-DETR改进策略【Backbone/主干网络】| 替换骨干网络为2023-CVPR LSKNet (附网络详解和完整配置步骤)
RT-DETR改进策略【Backbone/主干网络】| 替换骨干网络为2023-CVPR LSKNet (附网络详解和完整配置步骤)
419 13
RT-DETR改进策略【Backbone/主干网络】| 替换骨干网络为2023-CVPR LSKNet (附网络详解和完整配置步骤)
|
12月前
|
机器学习/深度学习 计算机视觉 网络架构
RT-DETR改进策略【Backbone/主干网络】| CVPR 2024替换骨干网络为 UniRepLKNet,解决大核 ConvNets 难题
RT-DETR改进策略【Backbone/主干网络】| CVPR 2024替换骨干网络为 UniRepLKNet,解决大核 ConvNets 难题
844 12
RT-DETR改进策略【Backbone/主干网络】| CVPR 2024替换骨干网络为 UniRepLKNet,解决大核 ConvNets 难题
|
12月前
|
机器学习/深度学习 编解码 数据可视化
RT-DETR改进策略【Backbone/主干网络】| 替换骨干网络为2023-CVPR ConvNeXt V2 (附网络详解和完整配置步骤)
RT-DETR改进策略【Backbone/主干网络】| 替换骨干网络为2023-CVPR ConvNeXt V2 (附网络详解和完整配置步骤)
843 11
RT-DETR改进策略【Backbone/主干网络】| 替换骨干网络为2023-CVPR ConvNeXt V2 (附网络详解和完整配置步骤)
|
12月前
|
机器学习/深度学习 存储 大数据
RT-DETR改进策略【Backbone/主干网络】| ICLR-2023 替换骨干网络为:RevCol 一种新型神经网络设计范式
RT-DETR改进策略【Backbone/主干网络】| ICLR-2023 替换骨干网络为:RevCol 一种新型神经网络设计范式
376 11
RT-DETR改进策略【Backbone/主干网络】| ICLR-2023 替换骨干网络为:RevCol 一种新型神经网络设计范式
|
12月前
|
计算机视觉 Perl
RT-DETR改进策略【Backbone/主干网络】| 替换骨干网络为CVPR-2024 PKINet 获取多尺度纹理特征,适应尺度变化大的目标
RT-DETR改进策略【Backbone/主干网络】| 替换骨干网络为CVPR-2024 PKINet 获取多尺度纹理特征,适应尺度变化大的目标
320 10
RT-DETR改进策略【Backbone/主干网络】| 替换骨干网络为CVPR-2024 PKINet 获取多尺度纹理特征,适应尺度变化大的目标
|
12月前
|
机器学习/深度学习 编解码 移动开发
RT-DETR改进策略【Conv和Transformer】| TPAMI-2024 Conv2Former 利用卷积调制操作和大核卷积简化自注意力机制,提高网络性能
RT-DETR改进策略【Conv和Transformer】| TPAMI-2024 Conv2Former 利用卷积调制操作和大核卷积简化自注意力机制,提高网络性能
265 5
RT-DETR改进策略【Conv和Transformer】| TPAMI-2024 Conv2Former 利用卷积调制操作和大核卷积简化自注意力机制,提高网络性能
|
11月前
|
前端开发 Java 关系型数据库
基于ssm的网络直播带货管理系统,附源码+数据库+论文
该项目为网络直播带货网站,包含管理员和用户两个角色。管理员可进行主页、个人中心、用户管理、商品分类与信息管理、系统及订单管理;用户可浏览主页、管理个人中心、收藏和订单。系统基于Java开发,采用B/S架构,前端使用Vue、JSP等技术,后端为SSM框架,数据库为MySQL。项目运行环境为Windows,支持JDK8、Tomcat8.5。提供演示视频和详细文档截图。
321 10

热门文章

最新文章