视觉变换器(ViT)在两年前进入大众视野,并成为计算机视觉研究的核心组成部分。
它成功将一个在自然语言处理领域的Transformer模型迁移到计算机视觉领域。从那时起,计算机视觉领域的进步已经加速。
尽管在成本与性能方面被超越,Vanilla ViT仍有许多优点。
它们是由简单的矩阵乘法组成的,这使得它们的速度比它们的原始运算量所显示的要快。
此外,它们支持强大的自监督预训练技术,如MAE(掩码自动编码器),可以产生最先进的结果,同时可以进行快速训练。
而且由于它们不对数据进行假设,它们可以几乎不加改变地应用在加速ViT模型新思路!Meta推出Token Merging,不靠剪枝靠合并、音频、文本等诸多模式中。
当然,理想很丰满,现实很骨感。ViT模型的规模大,有较大延时。在资源有限的设备上,运行这个复杂模型会产生很大问题。
Token剪枝:变好了,但没完全好
针对运算慢的问题,研究人员给出了多个解决方案。其中一种常见的加速视觉 Transformer模型的方法是对进行token剪枝。
在运行时修剪标记,通过修剪不太重要的token产生高效的Transformer。如DynamicViT分层修剪冗余token,从而在分类任务中实现FLOPs减少。
然而,token剪枝有几个问题,其中最主要的,是由于修剪token会产生信息损失,因此,人们对ViT模型token的剪枝数量是有限的,为了减少信息损失,只能对不重要的token进行修剪。
而且,为了使修剪过的token有效,人们需要再次训练模型。这就造成额外的资源消耗。
更重要的是,token剪枝是动态的过程,需要根据不同的图像或句子确定token剪枝的不同数量。虽然这有利于提高准确性,但却不够实用实用性,因为这种情况下,数据不能再进行批处理。
为了解决这个问题,人们需要在剪枝过程中添加掩码,而这会进一步影响效率的提升。
简单来说,token剪枝确实让ViT跑得更快,但这是在信息损耗的代价上实现的。
TokenMerging:换个想法
怎样才能使ViT的速度类似于剪枝,但保持比剪枝更高的准确度呢?Meta AI研究团队给出了新的解题思路:Token Merging(ToMe)。
论文链接:https://arxiv.org/pdf/2210.09461.pdf
Token Merging选择将token结合,而非进行剪枝。由于其定制的匹配算法,它和剪枝一样快,同时更准确。另外,它的工作不需要任何额外的训练,所以你可以在巨大的模型上使用它来加快它们的速度,而不会牺牲很多准确性。
Meta的目标是在现有的ViT中插入一个Token Merging的模块,通过合并冗余的token,在不需要额外训练的前提下提高训练和推理的吞吐量。
基本思路是:在Transformer模型中,通过合并,使每层减少r个token。假设一个Transformer模型有L层,那么通过合并就可以减少rL个token。变量r的大小决定了速度和精度的关系,因为更少的标记意味着更低的准确度但更高的吞吐量。
值得注意的是,在Token Merging中,无论图像的内容如何,都会减少rL标记。这完美解决了token剪枝中无法进行批处理的问题。
通过ToMe,类似的token批在每个Transformer块中被合并:例如,狗的皮毛被合并成一个token。
Token Merging被插入每个attention块和每个Transformer块。这也与token剪枝的工作流程形成对比。后者倾向于将剪枝步骤放在每个Transformer块的开头。
通过Token Merging,需要被合并的token的信息可以得到传播,ViT也能够借助attention块中的特征来决定需要合并哪些token。
具体做法
合并的第一步是确定相似的token。在Transformer中的QKV(query, key, value)已被提取的条件下,通过消融实验,研究团队发现使用key可以最好衡量token之间的相似度(下图紫色部分)。
因为key已经总结了每个token中包含的信息,以便用于Attention中的dot-product来衡量token间的相似度。
除了研究哪个指标更好衡量token相似度外,还需要知道什么距离衡量相似度。通过实验研究团队发现,使用使用余弦距离来衡量toke之间的相似度可以获得最好的精度和速度的关系。
确定了token的相似性,接下来需要一个快速的方法来确定哪些token需要匹配,以减少总数的r。
Meta团队没有使用kmeans聚类算法或图分割算法,而是使用匹配算法,因为后者不仅可以精准匹配每一层token的数量,还能快速执行上千次匹配。这些都是迭代聚类算法无法完成的。
因此,Meta团队提出了一个更有效的解决方案。
设计目标如下。1.)避免任何无法并行化的迭代,2.)希望合并的变化是渐进的,因为聚类对多少个标记可以合并到一个组中没有限制(这可能会对网络产生不利影响),而匹配则使大多数标记没有被合并。
- 将所有token分为相同大小的2个集合A与B。
- 把从集合A中的每个token到B中与其最相似的token画一条边。
- 只留下最相似的r条边, 其余删掉。
- 融合仍然相连的边(特征取均值)。
- 把这两个集合拼在一起, 得到最终的合并结果。
通过这项独特的技术,可以提高ViT模型的吞吐量和实际训练速度。使用Token Merging可以将训练速度提高一倍。它可以用于图像、视频和音频任务,并且仍然可以达到最先进的准确性。
以上是加速ViT模型新思路!Meta推出Token Merging,不靠剪枝靠合并的详细内容。更多信息请关注PHP中文网其他相关文章!

科学家已经广泛研究了人类和更简单的神经网络(如秀丽隐杆线虫中的神经网络),以了解其功能。 但是,出现了一个关键问题:我们如何使自己的神经网络与新颖的AI一起有效地工作

Google的双子座高级:新的订阅层即将到来 目前,访问Gemini Advanced需要$ 19.99/月Google One AI高级计划。 但是,Android Authority报告暗示了即将发生的变化。 最新的Google P中的代码

尽管围绕高级AI功能炒作,但企业AI部署中潜伏的巨大挑战:数据处理瓶颈。首席执行官庆祝AI的进步时,工程师努力应对缓慢的查询时间,管道超载,一个

处理文档不再只是在您的AI项目中打开文件,而是将混乱变成清晰度。诸如PDF,PowerPoints和Word之类的文档以各种形状和大小淹没了我们的工作流程。检索结构化

利用Google的代理开发套件(ADK)的力量创建具有现实世界功能的智能代理!该教程通过使用ADK来构建对话代理,并支持Gemini和GPT等各种语言模型。 w

摘要: 小型语言模型 (SLM) 专为效率而设计。在资源匮乏、实时性和隐私敏感的环境中,它们比大型语言模型 (LLM) 更胜一筹。 最适合专注型任务,尤其是在领域特异性、控制性和可解释性比通用知识或创造力更重要的情况下。 SLM 并非 LLMs 的替代品,但在精度、速度和成本效益至关重要时,它们是理想之选。 技术帮助我们用更少的资源取得更多成就。它一直是推动者,而非驱动者。从蒸汽机时代到互联网泡沫时期,技术的威力在于它帮助我们解决问题的程度。人工智能 (AI) 以及最近的生成式 AI 也不例

利用Google双子座的力量用于计算机视觉:综合指南 领先的AI聊天机器人Google Gemini扩展了其功能,超越了对话,以涵盖强大的计算机视觉功能。 本指南详细说明了如何利用

2025年的AI景观正在充满活力,而Google的Gemini 2.0 Flash和Openai的O4-Mini的到来。 这些尖端的车型分开了几周,具有可比的高级功能和令人印象深刻的基准分数。这个深入的比较


热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

Video Face Swap
使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热门文章

热工具

Atom编辑器mac版下载
最流行的的开源编辑器

Dreamweaver CS6
视觉化网页开发工具

EditPlus 中文破解版
体积小,语法高亮,不支持代码提示功能

Dreamweaver Mac版
视觉化网页开发工具

SublimeText3 英文版
推荐:为Win版本,支持代码提示!