Back to blog

EfficientVLA: Training-Free Acceleration and Compression for Vision-Language-Action Models

一种无需训练的结构化推理加速框架,用于加速扩散式视觉-语言-动作模型

EfficientVLA: Training-Free Acceleration and Compression for Vision-Language-Action Models

一、论文概述

项目内容
标题EfficientVLA: Training-Free Acceleration and Compression for Vision-Language-Action Models
作者Yantai Yang, Yuhao Wang, Zichen Wen, Luo Zhongwei, Chang Zou, Zhipeng Zhang, Chuan Wen*, Linfeng Zhang*
机构上海交通大学人工智能学院、哈尔滨工业大学、西安交通大学、电子科技大学
论文arXiv:2506.10100
代码未公开
发布2025年6月11日
许可arXiv非独占分发许可
领域计算机视觉与模式识别 (cs.CV)

二、核心思想

问题定义

视觉-语言-动作(Vision-Language-Action, VLA)模型,特别是基于扩散的架构,在具身智能领域展现出变革性潜力,但受到高计算和内存需求的严重制约。这些需求来源于模型本身的冗余性和推理时的冗余性。

现有的VLA模型(如CogACT、OpenVLA、pi0、RT-2)通常由三个主要模块组成:

  1. 视觉模块:使用DINOv2和SigLIP等编码器提取视觉特征
  2. 语言模块:大型语言模型(如Llama2-7B)进行多模态推理
  3. 动作模块:扩散式动作解码器通过多步去噪生成动作序列

这种模块化设计虽然支撑了强大的能力,但也导致了巨大的计算和内存开销。

解决方案概述

EfficientVLA提出了一种结构化的、无需训练的推理加速框架,通过协同利用多维度冗余来系统性地消除这些障碍。框架整合了三个针对性策略:

  1. 语言模块层剪枝:通过分析层间冗余,剪枝功能上不重要的层
  2. 视觉Token优化:通过任务感知策略选择紧凑、多样化的视觉Token集合,平衡任务关键性和信息覆盖度
  3. 动作头缓存机制:通过战略性地缓存和重用关键中间特征,缓解迭代扩散动作头中的时间计算冗余

三、技术架构

整体框架图

EfficientVLA架构概览

图2:EfficientVLA框架概览,采用无需训练的结构化方法加速扩散式VLA模型,包括:(1) 剪枝冗余的语言模块层;(2) VLA任务感知的视觉Token选择,平衡任务相关性和信息多样性;(3) 扩散动作头中中间特征的时间缓存。

模块化分析

表1:基线VLA模型(CogACT)与EfficientVLA的模块化推理特性对比

指标基线模型EfficientVLA
视觉模块语言模块动作模块视觉模块语言模块动作模块
参数量 (M)802.36738.989.0802.33971.1 (↓41%)89.0
视觉Token数256256-25656 (↓78%)-
去噪步数--10--2 (↓80%)
推理时间 (ms)24.9134.551.524.958.9 (↓56%)26.2 (↓49%)
FLOPs (G)405.503726.5557.96405.50792.58 (↓78%)11.72 (↓80%)

核心公式

3.1 视觉-语言-动作模型基础

VLA模型的初始阶段使用视觉模块将原始视觉输入 OimgO_{img} 转换为丰富的特征嵌入 FVF_V:

FV=VisionEncoder(Oimg)F_V = \text{VisionEncoder}(O_{img})

视觉特征 FVF_V 与tokenized语言指令一起输入语言模型骨干网络,进行多模态融合和上下文推理,得到任务导向的表示 FVLF_{VL}:

FVL=LLM(FV,LanguageTokens)F_{VL} = \text{LLM}(F_V, \text{LanguageTokens})

最终,扩散动作头以从 FVLF_{VL} 提取的认知特征作为输入,预测7自由度夹爪的最终动作空间。

3.2 语言模型层剪枝 - 层冗余分析

语言模块中的每一层 ℓ\ell 通过残差变换更新其输入隐藏状态 x(ℓ)∈Rd×S\pmb{x}^{(\ell)} \in \mathbb{R}^{d \times S}:

x(ℓ+1)=x(ℓ)+f(x(ℓ),θ(ℓ))\pmb{x}^{(\ell+1)} = \pmb{x}^{(\ell)} + f(\pmb{x}^{(\ell)}, \theta^{(\ell)})

其中 f(⋅)f(\cdot) 是具有参数 θ(ℓ)\theta^{(\ell)} 的层特定函数,dd 是隐藏维度,SS 是序列长度。

重要性评分公式:层 ℓ\ell 的重要性评分 I(ℓ)I^{(\ell)} 基于以下原则定义——对隐藏状态表示产生显著变化的层比输出与输入高度相似的层更为关键:

I(ℓ)=1−1∣D∣∑i=1∣D∣(1L∑j=1Lxi,j(ℓ)⋅xi,j(ℓ+1)∥xi,j(ℓ)∥2∥xi,j(ℓ+1)∥2)I^{(\ell)} = 1 - \frac{1}{|\mathcal{D}|} \sum_{i=1}^{|\mathcal{D}|} \left( \frac{1}{L} \sum_{j=1}^{L} \frac{\pmb{x}_{i,j}^{(\ell)} \cdot \pmb{x}_{i,j}^{(\ell+1)}}{\|\pmb{x}_{i,j}^{(\ell)}\|_2 \|\pmb{x}_{i,j}^{(\ell+1)}\|_2} \right)

其中 xi,j(ℓ),xi,j(ℓ+1)∈Rd\pmb{x}_{i,j}^{(\ell)}, \pmb{x}_{i,j}^{(\ell+1)} \in \mathbb{R}^d 分别表示样本 ii 在位置 jj 处层 ℓ\ell 的输入和输出隐藏状态向量。高余弦相似度意味着层函数 f(x(ℓ),θ(ℓ))f(\pmb{x}^{(\ell)}, \theta^{(\ell)}) 的变换效果最小,导致低重要性评分 I(ℓ)I^{(\ell)},表明功能冗余。

非连续剪枝策略:对于包含 NN 层的LLM,计算每层 ℓ∈{1,…,N}\ell \in \{1, \ldots, N\} 的重要性评分 I(ℓ)I^{(\ell)}。将这些评分按升序排序,得到有序层索引列表 Lranked=[ℓ(1),ℓ(2),…,ℓ(N)]\mathcal{L}_{ranked} = [\ell_{(1)}, \ell_{(2)}, \ldots, \ell_{(N)}],使得 I(ℓ(1))≤I(ℓ(2))≤⋯≤I(ℓ(N))I^{(\ell_{(1)})} \leq I^{(\ell_{(2)})} \leq \cdots \leq I^{(\ell_{(N)})}。然后选择列表中的前 nn 层 {ℓ(1),ℓ(2),…,ℓ(n)}\{\ell_{(1)}, \ell_{(2)}, \dots, \ell_{(n)}\} 从模型中移除。

3.3 任务相关性和多样性驱动的视觉Token剪枝

量化任务相关性

通过利用选定VLM层的交叉注意力分数来量化每个初始视觉token viv_i 的任务相关性。设 Ai,j(h)A_{i,j}^{(h)} 表示视觉token viv_i 对第 jj 个上下文token在第 hh 个注意力头中的注意力。原始任务相关性分数 rir_i 计算如下:

ri=∑j=1Lctx(1H∑h=1HAi,j(h))r_i = \sum_{j=1}^{L_{ctx}} \left( \frac{1}{H} \sum_{h=1}^{H} A_{i,j}^{(h)} \right)

这些原始分数 rir_i 随后通过min-max缩放归一化为标准化分数 si∈[0,1]s_i \in [0, 1]。

关键任务相关Token选择

选择具有最高相关性的 KkeyK_{key} 个视觉token(经验设置为4到8之间)形成核心视觉token集 VkeyV_{key}:

Vkey={vi∈V∣si is among the top Kkey scores in {sk}k=1Ntotal}V_{key} = \{v_i \in V \mid s_i \text{ is among the top } K_{key} \text{ scores in } \{s_k\}_{k=1}^{N_{total}}\}

增强选择:平衡相关性和多样性

任务驱动增强:选择 Ktask=⌊α⋅Kaug⌋K_{task} = \lfloor \alpha \cdot K_{aug} \rfloor 个token从 VremV_{rem} 中基于高任务相关性分数 sis_i 进一步优先选择。

多样性驱动增强:剩余的 Kdiv=Kaug−KtaskK_{div} = K_{aug} - K_{task} 个token从更新后的 VremV_{rem} 中选择,目标是最大化相对于已选关键token的特征多样性:

Diversity(vj,Vkey)=1−max⁡vk∈Vkeyvj⋅vk∥vj∥2∥vk∥2\text{Diversity}(v_j, V_{key}) = 1 - \max_{v_k \in V_{key}} \frac{v_j \cdot v_k}{\|v_j\|_2 \|v_k\|_2}

最终剪枝视觉Token集:

Vpruned=Vkey∪Vtask∪VdivV_{pruned} = V_{key} \cup V_{task} \cup V_{div}

3.4 动作预测中的中间特征缓存

DiT块中的特征生成与时间一致性

在每个去噪时间步 tt 的DiT块中,输入特征 zt\mathbf{z}_t 依次通过自注意力模块和MLP模块处理:

htattn=Self-Attn(zt)\mathbf{h}_t^{\text{attn}} = \text{Self-Attn}(\mathbf{z}_t)

htmlp=MLP(htattn+zt)\mathbf{h}_t^{\text{mlp}} = \text{MLP}(\mathbf{h}_t^{\text{attn}} + \mathbf{z}_t)

静态N步缓存实现

在固定间隔 NN 处周期性地重新计算并缓存关键的中间注意力和MLP输出,对中间时间步重用这些缓存值。

缓存更新(当 t(modN)=0t \pmod{N} = 0 时):

Cattn←Self-Attn(zt)\mathcal{C}_{\text{attn}} \leftarrow \text{Self-Attn}(\mathbf{z}_t)

Cmlp←MLP(Cattn+zt)\mathcal{C}_{\text{mlp}} \leftarrow \text{MLP}(\mathcal{C}_{\text{attn}} + \mathbf{z}_t)

缓存重用(当 t(modN)≠0t \pmod{N} \neq 0 时):

htattn←Cattn\mathbf{h}_t^{\text{attn}} \leftarrow \mathcal{C}_{\text{attn}}

htmlp←Cmlp\mathbf{h}_t^{\text{mlp}} \leftarrow \mathcal{C}_{\text{mlp}}

模型组件

组件说明关键参数
视觉编码器DINOv2 + SigLIP双编码器参数量802.3M
语言模块Llama2-7B骨干网络原始6738.9M参数,剪枝后3971.1M
扩散动作头Diffusion Transformer (DiT)参数量89M,原始10步去噪
视觉Token过滤器任务感知Token选择原始256个token,压缩至56个
特征缓存模块静态N步缓存机制缓存间隔N=5

训练流程

EfficientVLA是一个无需训练的推理加速框架,不需要额外的训练过程。其实施细节包括:

  1. LLM压缩:采用PruneNet配置对LLM进行压缩,对所有Transformer块的MLP层应用25%的稀疏性
  2. 视觉Token剪枝:从第2个Transformer层开始,比例 α=50%\alpha = 50\%,关键任务token数 Kkey=4K_{key} = 4
  3. 缓存间隔:设置为5
  4. 实验环境:所有实验在NVIDIA A40 GPU上进行

四、核心创新

创新点说明理论/实验依据
系统性冗余分析识别VLA模型中的关键计算和内存瓶颈,以及多维度冗余图1展示了层间冗余(高余弦相似度)和时间冗余
重要性驱动的层剪枝基于层对隐藏状态变换的影响进行非连续层剪枝使用余弦相似度度量层的重要性,低重要性层被移除
任务感知的视觉Token选择平衡任务相关性和特征多样性的双阶段Token选择策略先选择高相关性token,再补充多样化token
扩散动作头缓存机制利用去噪步骤间的时间一致性,缓存中间注意力和MLP计算观察到相邻去噪步骤间特征的高时间一致性
协同优化框架三个策略协同工作,而非孤立优化消融实验显示组合效果优于单独优化

冗余分析的关键发现

冗余分析

图1:VLA推理瓶颈和冗余分析:(a) 视觉token剪枝对FLOPs和推理时间的影响,揭示计算密集型和内存密集型区域;(b) LLM隐藏状态的高层间余弦相似度,表明深度冗余;(c) 扩散步骤中MLP/注意力特征的时间余弦相似度,显示计算冗余。

关键观察:

  1. 深度冗余:语言模块中许多层(特别是深层)的输入和输出隐藏状态具有高余弦相似度,表明这些层的有效变换很小
  2. 视觉冗余:视觉token流中存在两种主要冗余:与任务目标相关性低的token,以及由于视觉相似性导致信息重复的token
  3. 时间冗余:迭代扩散动作头在相邻去噪步骤间显示出显著的时间冗余,中间特征高度相似

五、实验结果

基准测试

实验环境:SIMPLER环境,一个用于桌面操作的仿真基准,支持Google Robot和WidowX机器人。

评估配置:

  • Visual Matching (VM):优先考虑与真实世界外观的保真度
  • Variant Aggregation (VA):引入背景、光照、干扰物和桌面纹理的变化

四个任务:

  1. Pick coke can(拾取可乐罐)
  2. Move near(靠近移动)
  3. Open/close drawer(开关抽屉)
  4. Open top drawer and place apple(打开顶层抽屉并放置苹果)

主要结果

表2:EfficientVLA在SIMPLER环境中的性能对比

设置方法无需训练PickCanMoveNearDrawerDrawerApple平均FLOPs↓加速↑参数(B)
Visual MatchingCogACT-91.3%85.0%71.8%50.9%74.8%100.0%1.00×7.63
Random Dropping✓9.7%20.4%53.5%0.0%20.9%58.5%1.20×7.63
FastV✓92.6%81.4%69.8%52.4%74.1%42.0%1.21×7.63
VLA-Cache✓92.0%83.3%70.5%51.6%74.4%80.1%1.38×7.63
EfficientVLA (L=28, T=112)✓95.3%83.3%70.3%56.5%76.4%45.1%1.59×5.87
EfficientVLA (L=28, T=56)✓94.7%82.4%69.8%55.4%75.5%32.9%1.71×5.87
EfficientVLA (L=22, T=112)✓94.0%82.1%69.2%54.6%75.0%38.2%1.78×4.86
EfficientVLA (L=22, T=56)✓93.3%81.3%68.2%53.8%74.2%28.9%1.93×4.86
Variant AggregationCogACT-89.6%80.8%28.3%46.6%61.3%100.0%1.00×7.63
FastV✓91.4%78.6%27.6%50.6%62.1%42.0%1.19×7.63
VLA-Cache✓91.7%79.3%32.5%45.8%62.3%82.6%1.37×7.63
EfficientVLA (L=28, T=112)✓94.8%77.6%28.4%51.9%63.2%45.1%1.57×5.87
EfficientVLA (L=22, T=56)✓93.2%75.8%26.9%49.2%61.2%28.9%1.91×4.86

效率分析

效率对比

图3:仿真中的效率分析,比较EfficientVLA变体与原始模型骨干的FLOPs和推理时间。

关键结果:

  • 1.93×推理加速:在L=22, T=56配置下实现
  • FLOPs减少71.1%:从4.2T降至1.2T
  • 参数减少36%:从7.63B降至4.86B
  • 仅0.6%成功率下降:从74.8%降至74.2%

可扩展性分析

表3:不同模型规模的可扩展性分析

模型动作模块参数方法平均成功率推理时间(s)总参数(B)
CogACT-Small13MCogACT73.3%0.21567.55
EfficientVLA72.6%0.11734.78
CogACT-Base89MCogACT74.8%0.23427.63
EfficientVLA74.2%0.12134.86
CogACT-Large308MCogACT76.7%0.26287.85
EfficientVLA76.1%0.13125.08

发现:方法的有效性在更大规模的模型上更为显著。在CogACT-Large模型上,实现了2.0×的推理加速,而性能仅从76.7%微降至76.1%。

消融实验

表5:EfficientVLA组件消融研究

实验层剪枝MLP压缩视觉Token剪枝动作缓存成功率推理时间(s)加速↑
Ex0✕✕✕✕91.3%0.23421.00×
Ex1✕✕√✕95.6%0.18661.25×
Ex2✕✕✕√93.7%0.19091.23×
Ex3√✕√✕85.7%0.16041.46×
Ex4√√✕✕92.3%0.16381.43×
Ex5√√✕√93.3%0.13871.69×
Ex6✕✕√√95.3%0.15921.47×
Ex7√√√√93.3%0.12131.93×

关键发现:

  1. 单独优化视觉token仅带来1.25×加速,尽管成功率从91.3%提升至95.6%
  2. 模型压缩(层剪枝+MLP压缩)实现1.43×加速
  3. 所有组件集成后实现1.93×加速,且任务成功率提升2个百分点

Token减少比例和缓存间隔的影响

表4:视觉token减少比例(左)和扩散动作头缓存间隔(右)的影响

Token比例56 (77.8%)72 (71.8%)96 (62.5%)112 (56.2%)256 (100%)
准确率95.0%95.3%95.0%96.0%91.3%
推理时间(s)0.18660.18700.18890.19560.2342
FLOPs (T)1.761.962.252.454.19
缓存间隔12345
准确率91.3%94.0%93.7%90.3%93.7%
推理时间(s)0.23420.20310.19870.19530.1909
FLOPs (T)4.1904.1614.1554.1504.144

六、总结

核心贡献

  1. 系统性分析:识别了当代扩散式VLA架构中的关键计算和内存瓶颈,以及多维度冗余
  2. 结构化加速框架:提出了EfficientVLA,一种无需训练的结构化推理加速框架,协同剪枝语言模块冗余层,并战略性选择紧凑、任务聚焦的视觉token子集
  3. 时间缓存机制:通过缓存扩散动作头中迭代去噪过程的中间注意力和MLP计算来增强效率
  4. 显著效果:在CogACT上实现1.93×推理加速,FLOPs降至28.9%,仅0.6%准确率下降

技术影响

  • 机器人部署:使大规模VLA模型能够在资源受限的机器人平台上进行实时交互
  • 效率提升:为VLA模型的实际部署提供了可行的加速方案
  • 方法通用性:框架设计具有通用性,可应用于其他扩散式VLA架构

局限性

  1. 训练无关方法的上限:无需训练的方法可能无法达到训练感知方法所能实现的最大压缩或加速
  2. 固定缓存间隔:动作头中的固定缓存间隔N在加速和动作保真度之间引入了权衡
  3. 模型验证范围:由于开源扩散式VLA模型的可用性有限,当前演示主要在CogACT上进行
  4. 未来方向:探索自适应缓存策略,在更多模型和任务上验证可扩展性和有效性

七、参考资源

论文链接

相关工作

模型/方法说明与EfficientVLA的关系
CogACT基础VLA模型,集成DINOv2、SigLIP和Llama2-7BEfficientVLA的主要验证平台
OpenVLA开源VLA模型相关的VLA架构
π0视觉-语言-动作流模型相关的扩散式VLA
RT-2视觉-语言-动作模型VLA领域的开创性工作
TinyVLA快速、数据高效的VLA模型训练感知的加速方法
DeeR-VLA动态推理的多模态LLM训练感知的加速方法
Mole-VLA动态层跳跃VLA模型需要重训练的层剪枝方法
VLA-Cache自适应token缓存仅缓存静态视觉token
FastV视觉token剪枝仅优化视觉token
PruneNet无校准模型压缩用于MLP层压缩

关键技术组件

组件来源说明
DINOv2Meta自监督视觉特征学习
SigLIPGoogleSigmoid损失的视觉-语言预训练
Llama2-7BMeta大型语言模型骨干
Diffusion Transformer (DiT)-扩散动作头架构
SIMPLER-仿真评估环境

图片索引

所有关键图片位于 docs/figures/efficientvla/ 目录:

图片说明文件名
Figure 2EfficientVLA架构概览architecture-overview.png
Figure 3效率分析对比(FLOPs和推理时间)efficiency-comparison.png
Figure 1冗余分析(层间/时间冗余)redundancy-analysis.png
补充训练结果对比training-results.png

原始数据位置

  • MinerU提取输出: docs/mineru_output/efficientvla/
  • 完整Markdown: docs/mineru_output/efficientvla/full.md
  • 内容列表: docs/mineru_output/efficientvla/c2fca18f-7a7c-4f8b-ba9d-db912bfe1cef_content_list.json