NeurIPS 2022 | 改进何恺明的MAE!GreenMIM:将Swin与MAE结合,训练速度大大提升!

本文主要是介绍NeurIPS 2022 | 改进何恺明的MAE!GreenMIM:将Swin与MAE结合,训练速度大大提升!,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

点击下方卡片,关注“CVer”公众号

AI/CV重磅干货,第一时间送达

点击进入—> CV 微信技术交流群

杨净 发自 凹非寺
转载自:量子位(QbitAI)

自何恺明MAE横空出世以来,MIM(Masked Image Modeling)这一自监督预训练表征越来越引发关注。

但与此同时, 研究人员也不得不思考它的局限性。

MAE论文中只尝试了使用原版ViT架构作为编码器,而表现更好的分层设计结构(以Swin Transformer为代表),并不能直接用上MAE方法。

于是,一场整合的范式就此在研究团队中上演。

代表工作之一是来自清华、微软亚研院以及西安交大提出SimMIM,它探索了Swin Transformer在MIM中的应用。

但与MAE相比,它在可见和掩码图块均有操作,且计算量过大。有研究人员发现,即便是SimMIM的基本尺寸模型,也无法在一台配置8个32GB GPU的机器上完成训练。

基于这样的背景,东京大学&商汤&悉尼大学的研究员,提供一个新思路。

9d3762ef64e3370e75df3e6fd188b3d9.png

Green Hierarchical Vision Transformer for Masked Image Modeling

论文链接:
https://arxiv.org/abs/2205.13515
GitHub链接(刚刚开源):
https://github.com/LayneH/GreenMIM

不光将Swin Transformer整合到了MAE框架上,既有与SimMIM相当的任务表现,还保证了计算效率和性能——

将分层ViT的训练速度提高2.7倍,GPU内存使用量减少70%。

来康康这是一项什么研究?

当分层设计引入MAE

这篇论文提出了一种面向MIM的绿色分层视觉Transformer。

即允许分层ViT丢弃掩码图块,只对可见图块进行操作。

9ab838a168679d0f2f16f4c017f030fd.png

具体实现,由两个关键部分组成。

首先,设计了一种基于分治策略的群体窗口注意力方案。

将具有不同数量可见图块的局部窗口聚集成几个大小相等的组,然后在每组内进行掩码自注意力。

45366d4768567d290530fb6205fa1206.png

其次,把上述分组任务视为有约束动态规划问题,受贪心算法的启发提出了一种分组算法。

a9315203460747cbd0e58fab33da01f8.png

它可以自适应选择最佳分组大小,并将局部窗口分成最少的一组,从而使分组图块上的注意力整体计算成本最小。

表现相当,训练时间大大减少

结果显示,在ImageNet-1K和MS-COCO数据集上实验评估表明,与基线SimMIM性能相当的同时,效率提升2倍以上。

41ed8e61c97b839a99fc0fcaa927ed40.png

而跟SimMIM相比,这一方法在所需训练时间大大减少,消耗GPU内存也小得多。具体而言,在相同的训练次数下,在Swin-B上提高2倍的速度和减少60%的内存。

a052836d2f15d09ede5debcbab16706f.png

值得一提的是,该研究团队在有8个32GB V100 GPU的单机上进行评估的,而SimMIM是在2或4台机器上进行评估。

研究人员还发现,效率的提高随着Swin-L的增大而变大,例如,与SimMIM192相比,速度提高了2.7倍。

实验的最后,提到了算法的局限性。其中之一就是需要分层次掩码来达到最佳的效率,限制了更广泛的应用。这一点就交给未来的研究。

65c2c1c48edc7db2b91c3b350fe2ca9e.png

而谈到这一研究的影响性,研究人员表示,主要就是减轻了MIM的计算负担,提高了MIM的效率和有效性。

 

上面论文和代码下载

后台回复:GreenMIM即可下载上面的论文和代码

目标检测和Transformer交流群成立
扫描下方二维码,或者添加微信:CVer6666,即可添加CVer小助手微信,便可申请加入CVer-目标检测或者Transformer 微信交流群。另外其他垂直方向已涵盖:目标检测、图像分割、目标跟踪、人脸检测&识别、OCR、姿态估计、超分辨率、SLAM、医疗影像、Re-ID、GAN、NAS、深度估计、自动驾驶、强化学习、车道线检测、模型剪枝&压缩、去噪、去雾、去雨、风格迁移、遥感图像、行为识别、视频理解、图像融合、图像检索、论文投稿&交流、PyTorch、TensorFlow和Transformer等。
一定要备注:研究方向+地点+学校/公司+昵称(如目标检测或者Transformer+上海+上交+卡卡),根据格式备注,可更快被通过且邀请进群▲扫码或加微信: CVer222,进交流群
CVer学术交流群(知识星球)来了!想要了解最新最快最好的CV/DL/ML论文速递、优质开源项目、学习教程和实战训练等资料,欢迎扫描下方二维码,加入CVer学术交流群,已汇集数千人!▲扫码进群
▲点击上方卡片,关注CVer公众号整理不易,请点赞和在看

这篇关于NeurIPS 2022 | 改进何恺明的MAE!GreenMIM:将Swin与MAE结合,训练速度大大提升!的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/332695

相关文章

Spring 中的切面与事务结合使用完整示例

《Spring中的切面与事务结合使用完整示例》本文给大家介绍Spring中的切面与事务结合使用完整示例,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考... 目录 一、前置知识:Spring AOP 与 事务的关系 事务本质上就是一个“切面”二、核心组件三、完

深度剖析SpringBoot日志性能提升的原因与解决

《深度剖析SpringBoot日志性能提升的原因与解决》日志记录本该是辅助工具,却为何成了性能瓶颈,SpringBoot如何用代码彻底破解日志导致的高延迟问题,感兴趣的小伙伴可以跟随小编一起学习一下... 目录前言第一章:日志性能陷阱的底层原理1.1 日志级别的“双刃剑”效应1.2 同步日志的“吞吐量杀手”

Java利用@SneakyThrows注解提升异常处理效率详解

《Java利用@SneakyThrows注解提升异常处理效率详解》这篇文章将深度剖析@SneakyThrows的原理,用法,适用场景以及隐藏的陷阱,看看它如何让Java异常处理效率飙升50%,感兴趣的... 目录前言一、检查型异常的“诅咒”:为什么Java开发者讨厌它1.1 检查型异常的痛点1.2 为什么说

SpringBoot利用树形结构优化查询速度

《SpringBoot利用树形结构优化查询速度》这篇文章主要为大家详细介绍了SpringBoot利用树形结构优化查询速度,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录一个真实的性能灾难传统方案为什么这么慢N+1查询灾难性能测试数据对比核心解决方案:一次查询 + O(n)算法解决

SpringBoot结合Knife4j进行API分组授权管理配置详解

《SpringBoot结合Knife4j进行API分组授权管理配置详解》在现代的微服务架构中,API文档和授权管理是不可或缺的一部分,本文将介绍如何在SpringBoot应用中集成Knife4j,并进... 目录环境准备配置 Swagger配置 Swagger OpenAPI自定义 Swagger UI 底

Spring Boot 结合 WxJava 实现文章上传微信公众号草稿箱与群发

《SpringBoot结合WxJava实现文章上传微信公众号草稿箱与群发》本文将详细介绍如何使用SpringBoot框架结合WxJava开发工具包,实现文章上传到微信公众号草稿箱以及群发功能,... 目录一、项目环境准备1.1 开发环境1.2 微信公众号准备二、Spring Boot 项目搭建2.1 创建

nginx -t、nginx -s stop 和 nginx -s reload 命令的详细解析(结合应用场景)

《nginx-t、nginx-sstop和nginx-sreload命令的详细解析(结合应用场景)》本文解析Nginx的-t、-sstop、-sreload命令,分别用于配置语法检... 以下是关于 nginx -t、nginx -s stop 和 nginx -s reload 命令的详细解析,结合实际应

SpringBoot结合Docker进行容器化处理指南

《SpringBoot结合Docker进行容器化处理指南》在当今快速发展的软件工程领域,SpringBoot和Docker已经成为现代Java开发者的必备工具,本文将深入讲解如何将一个SpringBo... 目录前言一、为什么选择 Spring Bootjavascript + docker1. 快速部署与

PowerShell中15个提升运维效率关键命令实战指南

《PowerShell中15个提升运维效率关键命令实战指南》作为网络安全专业人员的必备技能,PowerShell在系统管理、日志分析、威胁检测和自动化响应方面展现出强大能力,下面我们就来看看15个提升... 目录一、PowerShell在网络安全中的战略价值二、网络安全关键场景命令实战1. 系统安全基线核查

Python中re模块结合正则表达式的实际应用案例

《Python中re模块结合正则表达式的实际应用案例》Python中的re模块是用于处理正则表达式的强大工具,正则表达式是一种用来匹配字符串的模式,它可以在文本中搜索和匹配特定的字符串模式,这篇文章主... 目录前言re模块常用函数一、查看文本中是否包含 A 或 B 字符串二、替换多个关键词为统一格式三、提