小内存有救了!Reversible ViT:显存减少15倍,大模型普及曙光初现!

本文提出了一种名为RevViT的可逆视觉Transformer架构,旨在解决视觉识别模型中的内存瓶颈问题。通过将GPU内存需求与模型深度解耦,RevViT能够在保持与不可逆变体相当的精度的同时,显著减少内存占用。在图像分类、目标检测和视频分类任务中,RevViT在匹配的模型复杂性和精度下,实现了高达15.5倍的内存占用减少,且在某些情况下能提升训练吞吐量。此外,研究还表明可逆架构在深层模型中具有内在的正则化效果,允许更有效的训练策略。

摘要

本文介绍了可逆视觉Transformer,这是一种用于视觉识别的高效内存架构设计。通过将GPU内存需求与模型的深度解耦,可逆ViT能够以高效的内存使用来扩展架构。论文将两种流行的模型,即ViT和多尺度ViT,调整为可逆的变体,并在图像分类、目标检测和视频分类的模型大小和任务中进行广泛的基准测试。可ViT在大致相同的模型复杂性、参数和精度下实现了高达15.5倍的内存占用减少,证明了可逆ViT作为硬件资源有限训练机制的有效骨干的前景。最后论文发现,对于更深的模型来说,重新计算激活的额外计算负担已经被克服了,其中吞吐量可以比不可逆的模型增加2.3倍。

代码链接:https://github.com/facebookresearch/slowfast

简介

计算机视觉的深度学习革命建立在高性能硬件加速器的基础上。在专用人工智能加速器的推动下,对最先进模型的计算需求呈指数级增长。然而计算只是故事的一半。另一个,也是经常被忽视的一半,是内存带宽瓶颈,与峰值加速器FLOP[54]相比,它很难按比例扩展。特别是峰值加速器FLOP以每2年约3.1倍的速度增加。然而,峰值带宽仅以每2年约1.4倍的速率扩展。Transformer中的这种差异加剧了,在过去三年中,Transformer的所需计算量大约每三个月翻一番,导致了所谓的memory wall,在memory wall中,整体模型性能和训练速度都变得严格受限[34]。

因此,对于带宽受限模型,通过重新计算来换取内存实际上可能比使用工作优化算法更有效[70,71]。在训练神经网络模型的情况下,这可以通过重新计算激活来实现,而不是存储并从DRAM[31]加载它们。除了训练速度之外,scaling vision transformers自然会影响GPU的内存容量,尤其是在内存不足的情况下,如视频识别,由于中间激活的高内存占用率,最先进的模型通常被限制为批量大小1。

本文提出了可逆ViT,这是一个表达性视觉识别架构家族,与它们的不可逆变体相比,具有非常有利的激活记忆足迹(图1)。通过将GPU激活缓存与高效的动态激活重新计算进行权衡,可逆ViT有效地将激活内存的增长与模型的深度解耦。

23a00d9a9ab94a520405deac4ca64162.png

总结来说,本文的主要贡献如下:

  • 论文提出了可逆视觉Transformer(Rev ViT)和可逆多尺度视觉Transformer(Rev.MViT),这是对最先进的视觉识别主干的记忆高效可逆自适应;

  • 论文观察到可逆Transformer比简单的网络具有更强的固有正则化。因此通过调整具有不同重复增强、增强幅度和下降路径率的原始配方来开发新的训练配方,以匹配其不可逆对应物的性能;

  • 论文在以下几个任务中对模型进行基准测试:图像分类、目标检测和动作识别、准确性、内存、最大训练批量和模型复杂性。特别是,在匹配的复杂度(FLOP/参数)和最终精度下,Rev-ViT-B和Rev-ViT-L的每图像内存占用分别比ViT-B和ViT-L轻8.2倍和15.5倍。此外,论文还展示了深度可逆网络如何实现比普通网络高达2-4倍的吞吐量。

相关工作

Transformers:Transformers是一种流行的网络结构,最初被提出用于自然语言应用[68],现在广泛应用于深度学习的所有领域,如强化学习、语音、音乐、多模态学习,最近还广泛应用于传统的视觉任务。自引入以来,ViT得到了广泛的采用,并已应用于多个视觉识别任务。

然而放大Transformer模型的一个关键问题是所需GPU内存随深度的增长而增长。这种内存的线性增长阻碍了非常深入的模型的开发,因为需要大幅减少批量大小才能适应在GPU上存储中间激活。这个问题在处理非常大的输入张量的视频模型中加剧,并且即使对于较浅的深度,也经常用批量大小1来训练。扩大传统Transformer架构的一个潜在系统级解决方案是模型并行[10],它将模型的不同部分放在不同的GPU上。然而,在实践中,它相当慢,并且由于巨大的跨设备流量,需要特殊的高带宽网络基础设施。

可逆体系结构:可逆架构是一系列基

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值