参数量下降85%,性能全面超越ViT:全新图像分类方法ViR

简介: 参数量下降85%,性能全面超越ViT:全新图像分类方法ViR

ViT 还不够完美?来自华东师范大学等机构的研究者提出了全新的图像分类方法 ViR,在模型和计算复杂性方面都优于 ViT。

近一年来,视觉 Transformer(ViT)在图像任务上大放光芒,比如在图像分类、实例分割、目标检测分析和跟踪等任务上显示出了卓越的性能,展现出取代卷积神经网络的潜力。

但仍有证据表明,在大规模数据集上应用多个 Transformer 层进行预训练时,ViT 往往存在以下两个方面的问题:

  • 一是计算量大,内存负担大;
  • 二是在小规模数据集上从零开始训练时存在过拟合问题。


具体而言,对大规模数据集进行预训练和对下游任务进行调整对于虚拟信息处理来说是必不可少的,这往往会导致计算量过大和冗余,并且会增加额外的参数,从而增加内存负担。此外,具有多个 Transformer 编码层的 ViT 经常出现过拟合,特别是当训练数据有限的情况下。

为了解决这些问题,来自华东师范大学等机构的研究者们提出了一种新的图像分类方法,即 Vision Reservoir (ViR) 。通过将每个图像分割成一系列具有固定长度的 token,ViR 构建一个具有几乎完全连接拓扑的纯库,以替换 ViT 中的 Transformer 模块。为了提高网络性能,研究者还提出了两种深度 ViR 模型。


论文链接:https://arxiv.org/pdf/2112.13545.pdf

研究者在几个图像分类基准上进行了 ViR 和 ViT 的对比实验。在没有任何预训练过程的情况下,ViR 在模型和计算复杂性方面都优于 ViT。具体来说,ViR 的参数规模约为 ViT 的 15% 甚至 5% ,内存占用约为 ViT 的 20%-40% 。ViR 性能的优越性可以用 Small-World 特性、 Lyapunov 指数和内存容量来体现。

通常,ViR 可以通过比 ViT 编码器数量更少的层来获得相当好的表现,如下图 1 所示。


图 1:在 CIFAR100 数据集上执行 ViR 和 ViT 的时间消耗比较。与未经预训练的 ViT 相比,ViR 的初始准确性和最终准确性均有所提高。深度 ViR 是并行结构。在相同的深度下,ViR 的时间成本远远低于 ViT。

方法介绍

ViT 本质上是通过将图像 patch 视为时间序列,核心创新在于使用内核连接运算(比如点积)来获得图像 patch 之间的内在关联,如图像不同部分之间的空间和时间 (顺序) 一致性。这一点促使研究者想到了构建一个类脑网络,即储备池计算(Reservoir Computing,RC),它结合了内在的时空动态,具有更低的计算和内存消耗、更少的训练参数和更少的训练样本。

在 ViR 的设计中,研究者首先介绍了在储备池中使用的拓扑结构,并展示了一些公式和特征以阐明其工作机理。然后,研究者描述了所提出的 ViR 网络,并进一步给出了深度 ViR 的实例。最后,他们从几个方面分析了 ViR 的内在特性。

ViR 遵循与 ViT 相似的基础 pipeline,整体网络架构如图 2 所示:

图 2:模型概述。首先将输入图像分割成具有适当大小的 patch,然后将每个 patch 压缩成一系列序列向量,作为 ViR 的时间输入。为了获得更好的性能,ViR 的核心包含一个残差 block,可以堆叠成深度结构。


图 2 描述了所提出的图像分类模型,其关键组成部分是 ViR 的核心,该核心由具有上述内部拓扑结构的储备池和残差 block 组成。

通过进一步堆栈储备池,研究者获得了深度的 ViR,进一步增强了网络性能。如下图 4 所示,第一个是由 L 储备池组成的系列储备池。

图 4:深度 ViR 的结构。上部为串行储备池,下部为并行储备池。

实验

研究者在 MNIST、 CIFAR10 和 CIFAR100 三个经典数据集上,对所提出的 ViR 模型和常用的 ViT 模型进行了对比。同时也对模型中的参数进行了比较,分析了模型的收敛速度和内存占用情况。此外还在 CIFAR10-C 上进行了鲁棒性测试。在实验中,原始的 ViT 命名为 ViT-base ,并做了一些更改,如下表 1 所示。

表 1: ViR 和 ViT 的系统参数。N 是一个储层中的神经元数,α 是 w 的谱半径的标度参数,SD 是输入矩阵 v 的稀疏度,ri,rj,rk 和 jump size 在论文的第 3.1 小节中有详细说明。在 ViT 这一行中,对于所有测试的数据集,patch size 是相同的。

在没有任何预训练的情况下,研究者通过在 MNIST、 CIFAR10 和 CIFAR100 上执行图像分类任务,将 ViR1、 ViR-3、 ViR-6 和 ViR-12 与 ViT-1、 ViT-3、ViT-6 和 ViT-12 进行比较。下表 3 显示了分类的准确性和参数量的对比。

表 3:ViR 模型和 ViT 模型在各个图像分类数据集上的比较。数字后缀表示 ViT 的 ViR 层或编码器的数量。「m」是百万级的单位符号表示。

图 6:MNIST 和 CIFAR100 数据集在 4 × 4、14 × 14 和 16 × 16patch size 下的内存占用比较。


对于模型鲁棒性,研究者从两个方面进行了评估:即输入图像的损失和系统超参数的干扰。

表 4: 输入图像对于鲁棒性的影响。

更多细节详见论文原文。

相关文章
|
前端开发 JavaScript
React Hooks 全面解析
【10月更文挑战第11天】React Hooks 是 React 16.8 引入的新特性,允许在函数组件中使用状态和其他 React 特性,简化了状态管理和生命周期管理。本文从基础概念入手,详细介绍了 `useState` 和 `useEffect` 的用法,探讨了常见问题和易错点,并提供了代码示例。通过学习本文,你将更好地理解和使用 Hooks,提升开发效率。
252 4
|
11月前
|
人工智能 API Android开发
LLM大模型知识整理大全
本文介绍了多个大模型训练和部署工具及教程。使用unsloth支持llama3,显存占用约8G;GPT4ALL加载训练好的大模型;llama.cpp进行4bit量化后可用CPU运行。MAID手机App和MLC软件可在安卓设备上本地运行大模型或调用API。FASTGPT用于客制化大模型和AI私有化客服。相关教程链接已提供。
452 12
|
12月前
|
人工智能 前端开发 Java
Spring AI Alibaba + 通义千问,开发AI应用如此简单!!!
本文介绍了如何使用Spring AI Alibaba开发一个简单的AI对话应用。通过引入`spring-ai-alibaba-starter`依赖和配置API密钥,结合Spring Boot项目,只需几行代码即可实现与AI模型的交互。具体步骤包括创建Spring Boot项目、编写Controller处理对话请求以及前端页面展示对话内容。此外,文章还介绍了如何通过添加对话记忆功能,使AI能够理解上下文并进行连贯对话。最后,总结了Spring AI为Java开发者带来的便利,简化了AI应用的开发流程。
9270 2
Spring AI Alibaba + 通义千问,开发AI应用如此简单!!!
|
机器学习/深度学习 算法 大数据
云上智能风控:重塑金融风险管理的新篇章
随着金融科技的快速发展,监管机构对金融机构的监管要求也在不断提高。云上智能风控系统需要符合相关监管政策和法规的要求
|
机器学习/深度学习 缓存 算法
LLM 大模型学习必知必会系列(十二):VLLM性能飞跃部署实践:从推理加速到高效部署的全方位优化[更多内容:XInference/FastChat等框架]
LLM 大模型学习必知必会系列(十二):VLLM性能飞跃部署实践:从推理加速到高效部署的全方位优化[更多内容:XInference/FastChat等框架]
LLM 大模型学习必知必会系列(十二):VLLM性能飞跃部署实践:从推理加速到高效部署的全方位优化[更多内容:XInference/FastChat等框架]
|
机器学习/深度学习 自然语言处理 Linux
稀疏微调:彻底改变大语言模型的推理速度
稀疏微调:彻底改变大语言模型的推理速度
703 0
|
JavaScript
深入了解移动端适配的方案
深入了解移动端适配的方案
443 0
|
新零售 大数据 BI
双11“新贵”红星美凯龙:数据中台充分给足转型马力
红星美凯龙用了6年时间,持续深耕数字化用户运营,打造了线上五大场,输出了不少新玩法。红星美凯龙董事长车建新指出:红星美凯龙希望和阿里云一起,通过家居行业的数字化经验积累,打造一套行业数字化转型体系,并积极推动整个家居行业在新时期加速进行互联网数字化转型。
5401 0
双11“新贵”红星美凯龙:数据中台充分给足转型马力
|
芯片 AI芯片 开发者
平头哥芯片:云端一体的数字经济之“芯”
数字经济区别于农业经济和工业经济,大数据和算力是主要生产要素。我国已迎来数字经济时代,阿里平头哥旨在通过底层芯片的创新,助力推进阿里经济体以及各行业的数字化进程。在阿里CIO学院技术攻疫(公益)大咖说第二十讲中,平头哥半导体副总裁孟建熠博士将为大家介绍数字经济时代芯片的关键作用以及阿里构建的云端一
1252 0
|
Web App开发 JavaScript 前端开发
https 页面中引入 http 资源的解决方式
https://segmentfault.com/a/1190000004200361 而且如果在一个 https 页面里动态的引入 http 资源,比如引入一个 js 文件,会被直接 block 掉的。
3037 0