50万奖金+官方证书,深圳国际金融科技大赛正式启动,点击报名 了解详情
写点什么

CVPR 2023|两行代码高效缓解 Vision Transformer 过拟合,美图 & 国科大联合提出正则化方法 DropKey

  • 2023-04-10
    北京
  • 本文字数:2689 字

    阅读完需:约 9 分钟

CVPR 2023|两行代码高效缓解Vision Transformer过拟合,美图&国科大联合提出正则化方法DropKey

美图影像研究院(MT Lab)与中国科学院大学突破性地提出正则化方法 DropKey,用于缓解 Vision Transformer 中的过拟合问题。该方法通过在注意力计算阶段随机 drop 部分 Key 以鼓励网络捕获目标对象的全局信息,从而避免了由过于聚焦局部信息所引发的模型偏置问题,继而提升了基于 Transformer 的视觉类算法的精度。该论文已被计算机视觉三大顶会之一 CVPR 2023 接收。

 

近期,基于 Transformer 的算法被广泛应用于计算机视觉的各类任务中,但该类算法在训练数据量较小时容易产生过拟合问题。现有 Vision Transformer 通常直接引入 CNN 中常用的 Dropout 算法作为正则化器,其在注意力权重图上进行随机 Drop 并为不同深度的注意力层设置统一的 drop 概率。尽管 Dropout 十分简单,但这种 drop 方式主要面临三个主要问题。首先,在 softmax 归一化后进行随机 Drop 会打破注意力权重的概率分布并且无法对权重峰值进行惩罚,从而导致模型仍会过拟合于局部特定信息(如图 1)。其次,网络深层中较大的 Drop 概率会导致高层语义信息缺失,而浅层中较小的 drop 概率会导致过拟合于底层细节特征,因此恒定的 drop 概率会导致训练过程的不稳定。最后,CNN 中常用的结构化 drop 方式在 Vision Transformer 上的有效性并不明朗。



图 1 不同正则化器对注意力分布图的影响

 

美图影像研究院(MT Lab)与中国科学院大学在 CVPR 2023 上发表了一篇文章,提出一种新颖且即插即用的正则化器 DropKey,该正则化器可以有效缓解 Vision Transformer 中的过拟合问题。文章中对以下三个核心问题进行了研究:

第一,在注意力层应该对什么信息执行 Drop 操作?与直接 Drop 注意力权重不同,该方法在计算注意力矩阵之前执行 Drop 操作,并将 Key 作为基础 Drop 单元。该方法在理论上验证了正则化器 DropKey 可以对高注意力区域进行惩罚并将注意力权值分配到其它感兴趣的区域,从而增强模型对全局信息的捕获能力。

第二,如何设置 Drop 概率?与所有层共享同一个 Drop 概率相比,该论文提出了一种新颖的 Drop 概率设置方法,即随着自注意力层的加深而逐渐衰减 Drop 概率值。

第三,是否需要像 CNN 一样进行结构化 Drop 操作?该方法尝试了基于块窗口和交叉窗口的结构化 Drop 方式,并发现这种技巧对于 Vision Transformer 来说并不重要。



论文链接:https://arxiv.org/abs/2208.02646


背景

 

Vision Transformer(ViT)是近期计算机视觉模型中的新范式,它被广泛地应用于图像识别、图像分割、人体关键点检测和人物互相检测等任务中。具体而言,ViT 将图片分割为固定数量的图像块,将每个图像块都视作一个基本单位,同时引入了多头自注意力机制来提取包含相互关系的特征信息。但现有 ViT 类方法在小数据集上往往会出现过拟合问题,即仅使用目标局部特征来完成指定任务。

 

为了克服以上问题,该论文提出了一种即插即拔、仅需要两行代码便可实现的正则化器 DropKey 用以缓解 ViT 类方法的过拟合问题。不同于已有的 Dropout,DropKey 将 Key 设置为 drop 对象并从理论和实验上验证了该改变可以对高注意力值部分进行惩罚,同时鼓励模型更多关注与目标有关的其他图像块,有助于捕捉全局鲁棒特征。此外,该论文还提出为不断加深的注意力层设置递减的 drop 概率,这可以避免模型过度拟合低级特征并同时保证有充足的高级特征以进行稳定的训练。此外,该论文还通过实验证明,结构化 drop 方法对 ViT 来说不是必要的。

 

DropKey

 

为了探究引发过拟合问题的本质原因,该研究首先将注意力机制形式化为一个简单的优化目标并对其拉格朗日展开形式进行分析。发现当模型在不断地优化时,当前迭代中注意力占比越大的图像块,在下次迭代过程中会倾向于被分配更大的注意力权值。为缓解这一问题,DropKey 通过随机 drop 部分 Key 的方式来隐式地为每个注意力块分配一个自适应算子以约束注意力分布从而使其变得更加平滑。值得注意的是,相对于其他根据特定任务而设计的正则化器,DropKey 无需任何手工设计。由于在训练阶段对 Key 执行随机 drop,这将导致训练和测试阶段的输出期望不一致,因此该方法还提出使用蒙特卡洛方法或微调技巧以对齐输出期望。此外,该方法的实现仅需两行代码,具体如图 2 所示。


 

图 2 DropKey 实现方法

 

一般而言,ViT 会叠加多个注意力层以逐步学习高维特征。通常,较浅层会提取低维视觉特征,而深层则旨在提取建模空间上粗糙但复杂的信息。因此,该研究尝试为深层设置较小的 drop 概率以避免丢失目标对象的重要信息。具体而言,DropKey 并不在每一层以固定的概率执行随机 drop,而是随着层数的不断加深而逐渐降低 drop 的概率。此外,该研究还发现这种方法不仅适用于 DropKey,还可以显著提高 Dropout 的性能。

 

虽然在 CNN 中对结构化 drop 方法已有较为详细的研究,但还没有研究该 drop 方式对 ViT 的性能影响。为探究该策略会不会进一步提升性能,该论文实现了 DropKey 的两种结构化形式,即 DropKey-Block 和 DropKey-Cross。其中,DropKey- Block 通过对以种子点为中心的正方形窗口内连续区域进行 drop,DropKey-Cross 则通过对以种子点为中心的十字形连续区域进行 drop,如图 3 所示。然而,该研究发现结构化 drop 方法并不会带来性能提升。



图 3 DropKey 的结构化实现方法

 

实验结果



图 4 DropKey 和 Dropout 在 CIFAR10/100 上的性能比较



图 5 DropKey 和 Dropout 在 CIFAR100 上的注意力图可视化效果比较


图 6 不同 drop 概率设置策略的性能比较

 

图 7 不同输出期望对齐策略的性能比较

 

图 8 不同结构化 drop 方法的性能比较



图 9 DropKey 和 Dropout 在 ImageNet 上的性能比较



图 10 DropKey 和 Dropout 在 COCO 上的性能比较

 


 图 11 DropKey 和 Dropout 在 HICO-DET 上的性能比较

 


图 12 DropKey 和 Dropout 在 HICO-DET 上的性能比较


图 13 DropKey 和 Dropout 在 HICO-DET 上的注意力图可视化比较

 

总结

 

该论文创新性地提出了一种用于 ViT 的正则化器,用于缓解 ViT 的过拟合问题。与已有的正则化器相比,该方法可以通过简单地将 Key 置为 drop 对象,从而为注意力层提供平滑的注意力分布。另外,该论文还提出了一种新颖的 drop 概率设置策略,成功地在有效缓解过拟合的同时稳定训练过程。最后,该论文还探索了结构化 drop 方式对模型的性能影响。

 

研究团队:


本论文由美图影像研究院(MTLab)和中国科学院大学的研究者们共同提出。美图影像研究院(MT Lab)是美图公司致力于计算机视觉、深度学习、增强现实等领域的算法研究、工程开发和产品化落地的团队,深耕人脸技术、人体技术、图像识别、图像处理、图像生成、AR 等领域的前沿性和前瞻性技术研究,对美图秀秀、美颜相机、Wink 等美图旗下全系软硬件产品提供技术支持,同时面向影像行业内多个垂直赛道提供针对性 SaaS 服务,通过领先技术推动美图的产品发展,曾先后参与 CVPR、ICCV、ECCV 等计算机视觉国际顶级会议并斩获十余项赛事冠亚军,累计发表超 30 篇论文。

2023-04-10 15:544090

评论

发布
暂无评论
发现更多内容

Java 中三大类数据类型

迷篱

龙蜥开发者说:不忘初心,方得始终 | 第 7 期

OpenAnolis小助手

开源 cpu 龙蜥开发者说 飞腾 不忘初心

函数节流和函数防抖和他们的区别

工边页字

JavaScript 性能优化 前端 6月月更

【LeetCode】 删除二叉搜索树中的节点Java题解

Albert

LeetCode 6月月更

博云容器云产品族:如何实现让“Any APP on Any Kubernetes”?

BoCloud博云

云原生 容器云

leetcode 417. Pacific Atlantic Water Flow 太平洋大西洋水流问题

okokabcd

LeetCode 搜索 数据结构与算法

数字先锋| 天翼云牵手中能融合

天翼云开发者社区

天猫精灵语音技能单轮对话表达式的参数定义

汪子熙

人工智能 机器学习 聊天机器人 机器人 6月月更

2022年中国新能源汽车换电市场发展洞察

易观分析

新能源汽车

【Spring 学习笔记(一)】第一个Spring程序与IoC思想

倔强的牛角

6月月更

当AI抄起了水表

华为云开发者联盟

人工智能 modelarts workflow 智能水务

选择天翼云混合云管理平台的五大理由

天翼云开发者社区

5G+实时云渲染:交互实时云看车革新购车体验

3DCAT实时渲染

5G 汽车之家 汽车 元宇宙 实时云渲染

移动平台打造新生态 | 助力企业跨业务、一站式、全场景的系统建设

BeeWorks

这个API文档,太拽了吧!

Liam

前端 Postman API API文档 开放api

【云服务器】云计算平台的架构是什么样的?

Finovy Cloud

云服务器 GPU服务器

华为云GaussDB首席架构师冯柯:摘取皇冠上的明珠,华为云数据库的创新与探索

华为云开发者联盟

数据库 华为云 GaussDB 国产数据库

使用 LakeSoul 构建实时机器学习样本库

Geek_a02d1e

机器学习 大数据 开源 新基建 湖仓一体

样品管理系统解决方案

低代码小观

Lims LIMS实验室信息管理系统 LIMS系统

Flutter 图片库重磅开源!

阿里巴巴终端技术

flutter 开源 native 客户端

InfoQ 极客传媒 15 周年庆征文|一文读懂分布式系统本质:高吞吐、高可用、可扩展

No Silver Bullet

架构 分布式系统 可扩展 6月月更 InfoQ极客传媒15周年庆

直播回顾 | 7000字干货,深析区块链+汽车供应链金融的应用价值

旺链科技

区块链 产业区块链 供应链金融

哈希游戏开发竞猜系统哈希值hash算法

薇電13242772558

哈希算法

应用流程挖掘,发现潜在RPA可实施的场景,助力银行优化业务流程

易观分析

RPA

多模态语义检索 | 基于 MetaSpore 快速部署 HuggingFace 预训练模型

Geek_a02d1e

机器学习 深度学习 开源 AI 多模态

【高并发】在高并发环境下该如何构建应用级缓存?

冰河

并发编程 多线程 高并发 异步编程 6月月更

AI“爷青回”:一键找回童年记忆

最新动态

一篇文章带你彻底了解哈希表

武师叔

算法 哈希表 6月月更

科创人·神州数码集团CIO沈旸:最佳实践模式正在失灵,开源加速分布式创新

科创人

玩转云端|一文读懂天翼云CDN升级重点

天翼云开发者社区

撑算力之帆,天翼云助力数字时代逐潮者远航

天翼云开发者社区

CVPR 2023|两行代码高效缓解Vision Transformer过拟合,美图&国科大联合提出正则化方法DropKey_AI&大模型_美图影像研究院(MT Lab)_InfoQ精选文章