[论文分享]ConvMAE:Masked Convolution Meets Masked Autoencoders

news2024/11/26 8:47:19

论文题目:ConvMAE: Masked Convolution Meets Masked Autoencoders

论文地址:https://arxiv.org/abs/2205.03892

代码地址:https://github.com/Alpha-VL/ConvMAE

摘要

视觉变压器(Vision transformer, ViT)已成为广泛应用于各种视觉任务的架构。用于特征预训练的掩膜自编码多尺度混合卷积-变压器架构可以进一步释放ViT的潜力,从而在图像分类、检测和语义分割方面取得最先进的性能。在本文中,我们的ConvMAE框架证明了多尺度混合卷积-变压器通过掩码自编码方案可以学习更多的判别表示。然而,直接使用原始掩蔽策略会导致计算成本高和预训练微调差异。为了解决这个问题,我们采用了掩码卷积防止卷积块中的信息泄漏。为了保证计算效率,提出了一种简单的逐块屏蔽策略。我们还建议更直接地监督编码器的多尺度特征,以增强多尺度特征。与MAE-Base相比,ConvMAE-Base将ImageNet-1K微调精度提高了1.4%。在目标检测上,经过25个epoch微调的ConvMAEBase算法比经过100个epoch微调的MAE-Base算法分别高出2.9%的APbox和2.2%的AP mask。代码和预训练模型可在https://github.com/Alpha-VL/ConvMAE上获得。

介绍

文章出发点

MAE在各种下游视觉任务上实现了高性能,出优越的学习能力和可扩展性。MAE采用非对称编码器和解码器架构,其中编码器的mask部分由解码器重构。

局部归纳偏置和层次表示可以来提高ViT的性能。局部卷积和全局变换操作相结合,在多种图像任务上有明显的改进。基于局部和全局操作的性能良好的多尺度骨干主要以监督的方式进行训练。

此文章研究的出发点在于:具有局部和全局操作的多尺度骨干网是否可以利用在监督学习上表现良好的性能来增强掩码自编码范式

存在的问题

  • 当前掩码自动编码框架采用的掩码策略不能天真地用于ConvMAE,因为所有oken都需要保留在后面的transformer阶段。这导致预训练大型和庞大模型的计算成本难以承受,失去了MAE在 transformer编码器中省略掩码令牌的效率优势。

  • 此外,使用卷积 transformer编码器直接预训练会导致预训练微调差异,因为在微调阶段只处理可见标记。

提出解决方案

ConvMAE的编码器将输入图像逐步抽象为多尺度 token 嵌入,而解码器则对 mask token 对应的像素进行重构。

  • 对于早期的高分辨率 token 嵌入,采用卷积块对局部内容进行编码。

  • 对于后期的低分辨率 token 嵌入,转换器块用于聚合全局上下文。

因此,编码器在不同阶段获得局部和全局视场,并产生判别性的多尺度特征。ConvMAE编码器部分由强混合卷积transformer主干网驱动,专注于使基本的混合卷积-transformer架构适用于掩码自动编码

ConvMAE采用一种分块屏蔽策略,首先获得 transformer 后期的掩码,然后在早期卷积阶段逐步将掩码采样到更大的分辨率。这样,后期处理的 token 可以完全分离为屏蔽 token 和可见 token ,并继承了MAE的计算效率。

为了防止信息泄露,在早期的卷积块中加入了 mask 卷积,避免了后期掩模和可见区域的特征混淆,保证了训练的有效性,同时可以自然地集成到混合卷积-变压器体系结构中,以实现掩码自动编码。

ConvMAE的目标不是设计新的体系结构,而是通过mae风格的预训练和一些有见地的修改来释放混合体系结构所带来的强大表示。与以往掩码自编码的改进不同,ConvMAE将分层表示结构引入到MAE中。

创新点

  • 提出了强而高效的自监督框架ConvMAE,该框架易于实现,但在不同的任务上表现出色。

  • 所提出的ConvMAE自然生成分层表示,在目标检测方面表现出良好的性能。

  • 与mai - base相比,ConvMAE-Base在多个任务以及数据集上提高了精度

模型框架

ConvMAE的目标是学习判别性的多尺度视觉表示,并在将MAE应用于conv-transformer网络时防止预训练-微调差异。在conv-transformer 编码器的特征映射上直接应用原始掩蔽策略会使 transformer 在预训练过程中保留所有 token,影响训练效率。我们引入了一种分层屏蔽策略,并在卷积阶段引入了屏蔽卷积,以确保只有少量可见 token 输入到 transformer 层。

编码器由3个级组成,输出空间分辨率分别为H/4 × W/4、H/8 × W/8、H/16 × W/16,其中H × W为输入图像分辨率。

前两个卷积阶段使用卷积块将输入转换为标记嵌入E1(H/4 × W/4 ×C1)和E2H/8 × W/8 ×C2)。卷积块遵循 transformer块的设计原则,只将自注意运算替换为5 × 5深度卷积。 transformer第三级使用常用的自注意块获得令牌嵌入E3(H/16 × W/16 ×C3)。在每个阶段之间,使用stride-2卷积将令牌采样到之前空间分辨率的一半。

阶段1和阶段2的局部卷积视场相对较小,阶段3的变形块从粗粒度特征中聚集融合特征,将视场扩展到整个图像。在 transformer第3级输入处加入绝对位置嵌入可以获得最佳性能。显示影响有限的cls token在编码器中被删除

块掩码策略

从H/4×W/4特征映射中均匀地屏蔽阶段1的输入令牌将导致阶段3的所有令牌具有部分可见的信息,并且需要保留所有阶段3令牌。因此,首先生成随机掩码来屏蔽p%(例如,75%)的阶段3输入令牌,并将掩码上采样2倍和4倍,以分别获得屏蔽阶段2和阶段1输入的相应块掩码。在编码过程中丢弃三个阶段对应的掩码符号,并由解码器重建用于特征学习。这样,ConvMAE只需要在耗时的转换块中保留少至25%的令牌用于训练,并且不会影响ConvMAE的效率。

然而,前两个阶段的5 × 5深度卷积自然会导致接受域大于掩码补丁,并且在重建掩码令牌时导致信息泄漏。为了避免这种信息泄露,保证预训练的质量,在前两个阶段采用了掩码卷积,使被掩码区域不参与编码过程。掩码卷积的使用对ConvMAE的优异性能至关重要,通过从阶段中去除部分掩码令牌来防止预训练测试差异

解码与损失计算

原始MAE的解码器将来自编码器的可见令牌Ed和掩码令牌[mask]作为输入,并将它们转换成堆叠的变压器块用于图像重建。

ConvMAE编码器获得多尺度特征E1, E2, E3,同时捕获细粒度和粗粒度图像信息。为了更好地监督这种多粒度表示的预训练,我们使用stride-4和stride-2卷积将E1和E2下采样到与E3相同的大小,并通过线性层融合多粒度令牌以获得可见令牌Ed

使用来自MAE的相同损失来重建被掩盖的图像补丁,并且在目标函数中只考虑被掩盖的补丁的重建。

实验

下游任务:图像检测、语义分割、视频理解

消融实验

  • 随着预训练时间的延长,大多数下游任务的性能都有所提高

  • 用MAE的输入令牌随机屏蔽取代提出的块掩码策略。ImageNet1K微调精度从84.6%下降到84.2%,验证了所提出的简单块屏蔽策略可以缓解预训练-微调的差异

  • 掩模卷积可以防止由于卷积中的窗口重叠而导致的信息泄漏。去除掩模卷积后,ImageNet1K的微调精度从84.6%下降到81.5%,说明卷积阶段的信息泄漏阻碍了掩模自编码过程中的特征学习

  • 阶段1和阶段2的卷积核大小。较大的内核大小对ConvMAE在ImageNet-1K精度上的性能几乎没有影响。假设阶段3中的变压器块已经提供了一个全局FOV,可以抵消大内核带来的增益。

  • 多尺度解码器纳入ConvMAE-base中,并对200和1600 epoch进行预训练。结果表明融合多粒度令牌进行掩码重建可以产生强大的表示。

  • ConvMAE不仅获得了强大的最终结果,而且还显著提高了各种任务的收敛速度

总结

  • 通过transformer输入所需要的mask,逐层上采样到卷积层

  • 卷积块遵循 transformer的设计原则,只将自注意运算替换为5 × 5深度卷积,实现卷积中的mask

  • 特征多尺度融合

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/753704.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

如何使用 SVG 作为占位符和其他图像加载技术

从图像生成 SVG 可用于占位符。 一、说明 我们对图像性能优化和使图像在网络上快速加载充满热情。最有趣的探索领域之一是占位符:当图像尚未加载时要显示的内容。 在过去,我遇到了一些使用 SVG 的加载技术,我想在这篇文章中描述它们。 在这…

代码随想录算法训练营第52天 | 动态规划 part13 ● 300.最长递增子序列 ● 674. 最长连续递增序列 ● 718. 最长重复子数组

#300.最长递增子序列 自己想了20min没想出来。但没关系因为没接触过该题型。我想不出来的点就是,如果i-1的最后一个不要的话,我怎么找到上一个结束点。解决方案是:再搞一个循环,一个个找(下面的 j ) 下面…

性能测试 Linux 环境下模拟延时和丢包实现

在性能测试过程中,我们还需要模拟网络异常的情况下,是否会出现一些异常数据。最常见的就是写库操作,比如说我们下单的场景,如果出现网络异常的时候是否会出现数据对不上这种情况。 如我们JMeter发送成功的请求数量和最终数据库表…

龙蜥白皮书精选:面向 HTTP 3.0 时代的高性能网络协议栈

文/高性能网络 SIG 01 背景概述 随着互联网特别是移动互联网的快速发展,对互联网通信协议提出了新的诉求。经过多年的发展,QUIC 协议在 2021 年正式被 IEFT 标准化,成为 HTTP 3 的标准传输层协议。QUIC 是基于 UDP 实现的面向连接可靠有序…

基于虚拟同步发电机控制的双机并联MATLAB仿真模型

使用MATLAB2021b打开 主要内容: 功率计算模块、虚拟同步发电机控制模块、电压合成模块、电压电流双环控制模块! 1.两台VSG并联,开始各自带负载10KW,在0.3秒的时候加入公共负载10KW,稳定后两台VSG可以均分公共负载的…

大模型时代Embedding技术简介

Embeddings技术简介及其历史概要 在机器学习和自然语言处理中,embedding是指将高维度的数据(例如文字、图片、音频)映射到低维度空间的过程。embedding向量通常是一个由实数构成的向量,它将输入的数据表示成一个连续的数值空间中…

SciencePub学术 | 区块链类重点SCIEEI征稿中

SciencePub学术 刊源推荐: 区块链类重点SCIE&EI征稿中!信息如下,录满为止: 一、期刊概况: SCI-01 【期刊简介】IF:4.0-4.5,JCR2区,中科院3区; 【检索情况】SCIE&EI双检&…

另一个流行漏洞。

Microsoft Office 和 Windows HTML 中的 CVE-2023-36884 漏洞。该漏洞由供应商公开披露,但尚未修补。Microsoft 意识到利用该漏洞的针对性攻击。据了解,RomCom 组织曾在此类攻击中使用勒索软件 Industrial Spy 和 Cuba。 可能导致什么后果? …

奇迹MU架设教程:SQL Server 2008数据库的安装教程

不管是搭建什么游戏,都是有数据库的,奇迹MU用的是SQL 数据库,根据服务器系统选择SQL server版本,我比较喜欢用Windows server 2008R2系统,所以我安装的是SQL server 2008。作为架设奇迹很重要的数据库程序,…

python中文版下载安装教程,python中文版下载官网

大家好,本文将围绕python中文版软件下载百度网盘展开说明,python中文版下载安装教程是一个很多人都想弄明白的事情,想搞清楚python中文最新版下载需要先了解以下几个事情。 1、python下载安装教程_百度知道 python下载安装教程:自…

Linux中ssh登陆慢的两种原因

useDNS配置导致登陆慢 如果ssh server的配置文件(通常是 /etc/ssh/sshd_config )中设置 useDNS yes ,可能会导致 ssh 登陆卡住几十秒。将该配置项设为 no,然后重启 ssh 服务,再次登陆就恢复正常。将useDND配置为yes会…

Effective Java笔记(7)消除过期的对象引用

当你从手工管理内存的语言(比如 C 或 C++)转换到具有垃圾回收功能的比如 Java 语言时,程序员的工作会变得更加容易,因为当你用完了对象之后,它们会被自动回收 。 当你第一次经历对象回收功能的时…

中国人民大学与加拿大女王大学金融硕士——引领你走在金融行业前沿

金融是现代经济的血脉,而金融行业高质量发展取决于金融人才。新常态下,中国经济进入新的阶段,同时也对金融人才培养提出了新的要求。针对在金融行业沉淀多年的在职人士而言,是否需要更加系统化的学习金融知识呢,中国人…

Python自动化之win32利器pywin32

文章目录 前言一、GUI1.1 获取、关闭窗口1.2 窗口截图1.3 创建窗口 二、文件、目录2.1 查找2.2 创建2.3 复制/移动2.4 删除2.5 读取/写入 三、服务3.1 查找3.2 安装 四、案例4.1 自动发送微信消息4.2 Excel 操作4.3 监控文件夹 参考 前言 PyWin32 是一个Python库,用…

【vue】路由的搭建以及嵌套路由

目的:学习搭建vue2项目基础的vue路由和嵌套路由 1.npm 安装 router npm install vue-router3.6.52.src下新建文件夹router文件夹以及文件index.js index.js import Vue from vue import VueRouter from "vue-router" import Home from ../views/Home.…

【Linux】- 组管理和权限管理

组管理和权限管理 1.1 Linux 组基本介绍1.2 权限的基本介绍 1.1 Linux 组基本介绍 在 linux 中的每个用户必须属于一个组,不能独立于组外。在 linux 中每个文件 有所有者、所在组、其它组的概念。 所有者所在组其它组改变用户所在的组 文件/目录 所有者 一般为文…

关于Windows 11 docker desktop 运行doris 容器时vm.max_map_count=2000000的设置问题

需要一个简单的测试环境,于是准备用docker启动一个1fe 1be的简单玩一下 如果be容器启动后再去修改 /etc/sysctl.conf sysctl -w vm.max_map_count2000000 这个参数是没用的,be仍然会启动失败 这时可以打开cmd wsl --list C:\Users\pc>wsl --list …

Docker基础——初识Docker

Docker架构 Docker 使用客户端-服务器 (C/S) 架构模式,使用远程API来管理和创建Docker容器。 Docker 客户端(Client) : Docker 客户端通过命令行或者其他工具使用 Docker SDK (https://docs.docker.com/develop/sdk/) 与 Docker 的守护进程通信。Docker 主机(Host…

MMDeploy部署YOLOX-x模型

环境搭建 本文初始环境为PyTorch 2.0.0、Python 3.8(ubuntu20.04)、Cuda 11.8 OpenMMLab基础环境 首先安装OpenMMLab基础环境,以下代码均在命令窗口下输入 pip install openmim mim install mmcv-full mim install "mmengine0.7.2"git clone https://…

太阳能供电户外视频远程监控4G无线物联网工业路由器ZR3000

太阳能供电技术常被应用于环保节能的项目中,太阳能具备节能环保、寿命长、性能稳定、维护成本低等特点,被各行各业采纳使用。大多数太阳能应用于户外,存在监控点距离较远、取电困难、宽带光纤布线成本高、环境恶劣等问题,现场还有…