X-AuT:语音大模型音频编码器瘦身两成,整体推理却只快 5%
语音大模型的"耳朵"为什么成了部署的第一道坎
把语音模型的音频编码器砍掉两成参数,端到端推理却只快了约 5%。省下的算力去哪了?这是 2026 年 9 月提交到 arXiv 的 X-AuT 论文给出的一个反直觉数字,也是整篇论文最值得读的一句结论。按常理,削掉哪一块,哪一块就该省出相应的时间,整条流水线就算不能同步加速,也不至于只剩零头。可实测就只剩约 5%。要查清这笔账,得先认识这块被砍的模块,再认出落刀的具体模型,最后掂量最直接的砍法为什么靠不住。 AuT
被盯上的模块叫音频编码器,语音大模型里负责"听"的那一段。语音大模型不是一整块网络,而是三段拼装:音频编码器把声音变成特征,桥接投影把特征送进大语言模型,最后由 LLM 逐 token 自回归地吐出文字。可以把 LLM 比作大脑,音频编码器就是耳朵:耳朵负责把听到的每一秒声音都转成内部表征,大脑负责把这些表征组织成一句完整的话。传统 ASR 时代不是这样,OpenAI 2022 年的 Whisper 是编码器加解码器一体,一次前向推理就出结果。到了 Speech LLM 时代,编码器只是第一段,它的输出要作为输入序列喂给一个逐词元生成的 LLM,而编码器输出的特征帧远多于最终的文字 token。序列的长度、第一帧特征的产生速度、还有这块网络常驻的内存,全都卡在这里。扛着这么多账,它才成了端侧和车机部署的第一道坎,人们也才预期砍它能换到大加速,压缩的矛头因此最先指向它:它是整个流水线里最容易被盯上的重担。X-AuT Whisper
落刀的具体是哪个模型?X-AuT 要动刀的对象是 Qwen3-ASR-0.6B,阿里 Qwen 团队的开源语音识别模型。它的音频塔(audio tower)有 18 层 Transformer,按发布权重严格计数共 186.376M 参数,隐层宽度 1024。在 vLLM 部署下,单请求的首 token 平均延迟是 92ms。每次对话,这 186M 参数都要先把整段语音"听"一遍变成特征,才轮到大脑开始逐字想。"瘦身两成"的准确含义,就是把这 18 层砍到 14 层。看清了刀口的大小,悖论才立得住:砍掉整整 4 层、约两成的音频塔参数,端到端提速却只有约 5%。Qwen3-ASR

图注:左半是 AuT 编码器,语音特征从 FBank 输入开始,经三层下采样卷积和自注意力层变成帧级特征;右半是 Qwen3-ASR 把编码器输出与文本一起送入 Qwen3 LLM。X-AuT 要剪的就是左边这块。Qwen3-ASR
这个悖论在车载场景里最扎眼,因为那里最在意"第一个字",也最能直接掂出"只快 5%"的分量。想象你正在开车,对语音助手说了一句话。声音要先被编码器整个切成特征,LLM 才能开始组织回复,编码器处理得快不快,直接决定你多久听到第一个字。它还常驻在内存里,要跟车上其他模型抢资源。模型每大一寸,端侧那点算力就多一分窘迫。可偏偏在这样的场景里,"耳朵"削掉两成,端到端却只快约 5%,这一刀到底值不值,就成了必须回答的问题。
要算出这笔账,最直接的办法是把"耳朵"真的削薄,删掉几层 Transformer,再去看端到端的时钟怎么变。可删层这条路,远没有看上去那么安全。它具体会翻什么车,下一节细说;这里先立住结论:查账的工具本身就有坑,5% 之谜必须连同砍法一起解开。
直接删几层会怎样:浅剪枝是安全区,深剪枝会"早停"
删编码器的层,以前有人走过,而且浅剪枝看起来相当安全。Kolluri 等在 SLAM-ASR 上试过,那是一套 Whisper 编码器接 Qwen LLM 的语音助手架构。他们删掉 Whisper 编码器顶层 1 到 2 层,WER(字错率,识别错的字所占比例)只升 2 到 4 个百分点;再挂上 LoRA,也就是只训练一小块低秩参数的微调方法,识别效果甚至能反超未剪枝基线,还省下 5.9% 到 14.4% 的参数。SLAM-ASR 剪枝

图注:SLAM-ASR 的三段式拼装:冻结的 Whisper 编码器把音频变成特征,经可训练的投影器送入冻结的 Qwen2.5-3B LLM,LLM 的注意力层上挂着 LoRA 适配器。"删一两层很安全"的经验就来自这套体系。SLAM-ASR 剪枝
这套经验背后有个解释:编码器越靠上的层,编码的是越抽象的语言学信息,而下游的 LLM 自带语言先验。删掉顶层,等于把这部分活委托给 LLM 接手,所以 1 到 2 层是安全区。超过这个深度,信息损失就不再是 LLM 靠语言知识能补回来的了,这就是 X-AuT 必须重新设计恢复流程的原因。
但 X-AuT 想剪到 14 层,也就是从 18 层一步删掉 4 层。同一份数据、同一个恢复预算下,一步到位的直接剪枝得到 6.73% 的平均错误率,而分两步渐进剪(18 到 16 再到 14)只有 5.75%。差距为什么这么大?因为删层不是简单地减少计算量,它会扰动编码器和 LLM 之间的桥接表征。打个比方,这有点像传话游戏:每一层编码器都像一个人,把上一个人传来的话加工后再传给下一个人。中间抽掉几个人,最后传到"大脑"那里的信息就变了味。解码器感知到特征不对劲,在自回归推理时倾向提早输出结束符 EOS,句子的尾巴被吞掉,表现为"删除错误":明明说了一整句,识别结果却少了半句。论文的消融里,删层后不做任何防护,平均错误率会从 6.86% 漂移到 7.58%。
这个"提前闭嘴"的故障是整篇论文的悬念。它说明一件事:剪哪里、剪多深、怎么把能力长回来,必须绑在一起设计,而不是先删完了再想办法。
剪哪里、剪多深:行为探针与"一次只剪两层"的渐进策略
X-AuT 的答案是三步走:选层、小步剪、立刻恢复。先看全貌。

图注:X-AuT 完整流水线:转写一致性过滤构建训练池,短预算行为探针选出可恢复的层组合,两跳渐进剪枝把音频塔从 18 层降到 14 层,每一跳都经过表征对齐、跨尺度蒸馏与 LoRA 微调三阶段恢复,最后在 10 个中英基准上评估。X-AuT
第一步是"剪哪里"。X-AuT 用行为探针,不靠静态的层重要性分数拍脑袋。做法是:在一个很短的恢复预算下,把候选层组合真的删掉、快速恢复,再用 5 个基准开发集实测文本错误率 TER,看哪一组最容易被"练回来"。训练数据本身也做了过滤:超过 28 万小时语料按转写一致性分成 9 档,只用最高档 class 1,避免拿劣质标注训练。
第一跳删掉第 1 层和第 18 层,首尾各删一层,得到 16 层版本。第二跳在 0.3 epoch 的 LoRA 预热后扫描单层和双层候选:单层扫描里第 6 层最强,TER 6.29%,第 5 层 6.42%,第 8 层 6.52% 次之。最直觉的选法是删两个最强的单层,把第 6 层和第 8 层配成对。可实测配对 {6,8} 的恢复后 TER 是 7.78%,反而不如相邻配对 {5,6} 的 6.93%。层与层会"打架",两个单层各自最优,配对之后却互相拖累,静态重要性分数根本预测不了双层可恢复性。这正是行为探针存在的理由:选层必须和恢复一起实测。
论文把这种拖累量化为交互惩罚:配对实测的 TER,减去两个成员单层 TER 的平均值。{5,6} 的交互惩罚只有 0.58 个百分点,{6,8} 高达 1.38。先说清这个数字的边界:实验直接量到的,只是组合的可恢复性不可加,两组单层各自都练得回来,配成对却未必;至于相邻两层更像搭档、删掉一层另一层能把活接过来,抑或隔得远的两层各有各的职责,这些是对差异的直观解读,实验本身并不能证明层与层之间真有"接活"或"补偿"的机制。真正站得住的是行为探针这个结论:静态重要性分数预测不了双层可恢复性,而实测配对才能把 {6,8} 这样的坑提前照出来。层间交互不是可加的,这正是"行为探针"四个字的分量所在。
第二步是"剪多深":一次只剪两层。每一跳都是"剪一小步加恢复一小步"的完整循环,把一步到位的损伤摊到两个更小的台阶上。前面说过,同一预算下渐进是 5.75%,直接一步是 6.73%,差距就来自这里。
也有人走另一条哲学:训练的时候就用 supernet 把多种尺寸的子网一起训出来,部署时按需取用,这是 RWTH Aachen 的 Dynamic Encoder Size(Interspeech 2024)的思路。X-AuT 选的是"训好再剪、逐跳恢复",因为它的被压缩对象是已经定型的商用模型,没有从头重训的成本。Dynamic Encoder Size
剪掉的层怎么长回来:三阶段恢复与跨尺度蒸馏
选好层、剪掉之后,难点才真正开始:怎么把能力长回来。X-AuT 的恢复是一套三阶段流程,每一跳都完整跑一遍。
| 阶段 | 训练什么 | 冻结什么 | 损失组成 |
|---|---|---|---|
| Stage 0 表征对齐(占蒸馏 epoch 的 5%) | 分层表征对齐、bridge 对齐、logit 对齐;tied lm_head 可训练 | LLM 主干 | 中层 MSE+cosine、bridge、温度 KL、CE |
| Stage 1 跨尺度蒸馏(剩下 95%) | 前 20% teacher-forced,之后每 5 步调度 student-policy | 中间层损失关闭;LLM 主干 | bridge 对齐、logit 温度 KL、CE |
| Stage 2 LoRA 微调(1 epoch) | 注意力 LoRA,数据按领域重加权 | 教师信号、lm_head | 仅 CE,学习率 5e-6 |
Stage 0 是表征对齐,只占蒸馏 epoch 的 5%。剪掉两层后,学生剩下的层和教师的层不再一一对应,得先把表征"对齐":教师层均匀分成若干组,学生每一层去拟合教师对应组的末端输出,MSE 和 cosine 两种距离一起用;桥接投影也对齐,再加上对文本分布的 logit KL 与交叉熵。这里出现第一个跨尺度问题:教师是 Qwen3-ASR-1.7B,音频塔 24 层、隐层宽度 2048;学生隐层宽度只有 1024。宽度对不上,中间得先过一个 2048 压到 1024 的瓶颈 MLP 投影。所谓跨尺度蒸馏,就是这个意思:同一任务里,教师比学生大得多、深得多。
Stage 1 是跨尺度蒸馏的主体,占剩下 95% 的 epoch,中间层损失关闭,保留 bridge 对齐、logit 温度 KL 与交叉熵。它的特殊之处在"谁来提供上下文":前 20% 用 teacher-forced,也就是教师把正确的历史喂给学生;之后每隔 5 步调度一次 student-policy,让学生用自己贪心生成的前缀当上下文,再去对齐教师的分布。为什么要这样?因为推理时学生只能靠自己的输出一路走下去。如果训练时永远用教师的上下文,两者在自回归中误差会累积放大,这叫暴露偏差,调度正是冲着它去的。
教师规模本身就是恢复信号的关键。论文在配对的 16 层配方下对比了两位教师:1.7B 跨尺度教师给出 5.55% 的最优错误率,而用未剪枝的 0.6B 自己做自蒸馏,只有 8.45%。10 个基准上全部是跨尺度版本更优。论文也明确不把这一点解读为"教师创造了新能力",因为对照只在单个随机种子上做。但"教师的质量决定能长回多少",是这组数字最直接的读数。
Stage 2 关掉教师信号,做低学习率的 LoRA 微调,只跑 1 个 epoch,数据按领域重加权。全程 LLM 主干冻结,注意力 LoRA 可训练;tied 输出头只在 Stage 0/1 训练期跟着动,Stage 2 将其冻结。第 2 章埋的"提前闭嘴"问题在这里闭环:训练期让 tied lm_head,也就是与 token embedding 共享权重的输出头,保持可训练;给生成强制最小长度 min_new_tokens=3;再用 rollout 过滤拒绝超长和重复的序列。三重防护把 EOS 漂移摁住。为什么输出头要跟着动?因为编码器变浅之后,送进 LLM 的特征分布已经变了,与输入侧共享权重的输出端自然也得重新校准,到 Stage 2 再把它冻结掉。相比之下,传统语音蒸馏的经典工作 Distil-Whisper 砍的是 decoder 不砍 encoder,所以从没遇到过"编码器剪完怎么恢复"这个问题。Distil-Whisper

图注:16 层恢复期间的 TER 训练曲线。左面板是 Stage 0/1 蒸馏阶段,约 step 4000 处完成阶段切换,TER 在约 step 47000 触底到 5.76%;右面板是 Stage 2 微调阶段,继续降到 5.36%,虚线标出 Stage 1 的最优值 5.76% 作参照。X-AuT
曲线讲的是节奏:早期快速下降,中期慢收敛,最后一段微调再下一城。
效果如何:16 层不降反升,14 层省两成参数却开始"偏科"
两个工作点,两份账。
先看 16 层。macro error(10 个基准的平均错误率)5.27%,比未剪枝基线的 5.61% 还低,相对改善 6.1%,参数减少 10.35%。动刀两层,识别反而更好,这是整篇论文最漂亮的结果。16 层的增益不是挤出来的:CommonVoice 中英文基准都比基线低约 1.8 个百分点,WenetSpeech-meeting 低 1.30。而且最后一段 Stage 2 有实打实的贡献:16 层从 Stage 1 的 5.55% 再压到 5.27%,被微调拖到了 5.61% 基线之下;14 层也从 6.48% 大幅压实到 5.75%,但最终仍比基线高 0.14 个百分点。X-AuT 项目页
再看 14 层。macro error 5.75%,只比基线高 0.14 个百分点,音频塔参数从 186.376M 降到 147.794M,省了 20.70%。这就是标题里"瘦身两成"的出处。但 macro 平均掩盖了方向性差异,雷达图把真相摊开了。

图注:10 维雷达图,每个轴是一个中英基准,虚线圆 100 是未剪枝基线,数值越高说明精度保留越好。16 层在多数轴上贴线或略高,14 层在 CommonVoice en、WenetSpeech-meeting 等英文轴上明显塌陷,"偏科"一目了然。X-AuT
14 层相比 16 层的差距集中在英文基准:CommonVoice en 差 1.99 个百分点,WenetSpeech-meeting 差 1.72。相对基线,14 层在 CommonVoice zh 上反而降了 1.59 个百分点(9.95%→8.36%);但与 16 层相比,其余基准变化都在 0.3 个百分点以内,中文轴也只是略高 0.24。也就是说,多剪这两层不是均匀掉点,而是拿特定英文场景去换参数。所以 16 层是"无损甚至更好"的甜点,14 层是"拿英文基准换两成参数"的激进折中。
这套取舍该怎么读?它是一条有方向性的权衡曲线,不是一条均匀斜坡。16 层比基线更好,这个实验设置下的结果与"存在可压缩余量"是一致的,但它不能区分余量到底来自哪一环:是跨尺度蒸馏补回来的,是恢复训练本身带来的,还是 18 层结构里本就有一部分层可以被去掉。把三者分开需要额外对照,现有实验做不到。14 层的下滑则集中在可指认的英文数据集上。工程上因此只能给条件性的选型建议:中文为主的车载场景倾向 14 层,英文会议场景倾向 16 层。这两条都必须在自己的数据分布和真实端到端链路上复验,碰过自己的场景才算数。
效率账是最后一记重锤。14 层在车载 PPU 上,编码器这一段的延迟降了 21.4%,内存峰值降 4.4%;在 H800 上编码器延迟降 11.4%。但端到端延迟呢?PPU 上只降 4.7%,H800 上只降 2.6%。省下的算力大多被自回归解码吞掉了:编码器只跑一遍,把整段音频转成特征;而 LLM 要逐 token 生成整句文字,每一步都依赖前一步,总时长被这段串行解码主导。这就是标题后半句"整体推理却只快 5%"的出处:编码器单点省两成,换到整条流水线上只剩约 5%。论文自己也承认,音频塔是局部效率改进,不是大型端到端加速方案。
该信多少,为什么仍值得关注:证据边界与并行的两条路线
先泼冷水。这组数字的证据边界很窄:全部是 seed 42 单次实验,没有重复种子、没有置信区间、没有显著性检验,表里的加粗只表示该行最优观察值;只覆盖 Qwen3-ASR 一个模型族;训练数据只用 9 档一致性层级里的最高档;压缩的只有音频塔,decoder 依然是端到端延迟的主导;效率测量是单次输出的均值,没有 run-to-run 方差。每条限制都在削弱"这个结论能推广到我的模型上"的底气:单种子意味着 5.27% 反超 5.61% 可能是噪声;单模型族意味着"渐进剪枝加跨尺度恢复"在别的语音模型上是否成立,没有被验证;只压音频塔意味着算力账必须按 encoder 单点和端到端分开读。把这些限制放在一起看,最诚实的一句话是:这是一次跑通,不是一份完备的工程证据。
但它仍然值得关注,因为"端侧永远在线的音频前端要压缩"已经是行业公共议题,而且同一个月出现了两条平行路线。X-AuT 走的是层减:剪深度,配跨尺度蒸馏恢复。Apple 在 2026 年 9 月初提交的另一篇论文走的是潜空间蒸馏:不删层,而是把编码器变窄,让学生的中间表征去直接回归教师编码器输出的 latent,也叫 pre-quantizer latent,再用一层仿射投影对齐宽度。2.8 倍压缩下,6 对教师和学生里有 5 对相对 WER 差距不超过 1.9%,而且学生不需要任何微调。Apple

图注:Apple 端侧 tokenizer 的信号路径:波形经 10ms filterbank 进入编码器楔形,楔形收窄表示 8 倍时间下采样;编码器之后分出两条接口,离散 token 与连续 embedding 共同读取同一个 pre-quantizer latent,蒸馏损失就挂在这一共享点上。压缩方向是宽度而不是深度。Apple
一深一宽,一减一蒸,两条路线指向同一个判断:语音大模型的第一道延迟瓶颈在耳朵,而耳朵是可以被压缩的。市面上最新的 Speech LLM 综述覆盖到 2025 年 8 月,这批 2026 年 9 月的工作还在它的视野之外,说明这是正在快速成形的方向,而不是尘埃落定的结论。Speech LLM 综述
如果要在自己的模型上验证,论文给了两个便宜的起点:先跑一遍行为探针的短预算扫描,用实测代替静态重要分数;再复验两条具体假设,一条是"16 层甜点",少剪两层几乎无损甚至更好,另一条是"教师规模决定恢复上限",跨尺度信号的纯度比自蒸馏高。渐进剪枝加跨尺度恢复,值得当方向参考,但现有证据只够当方向,不够当铁律。这大概是 2026 年的模型压缩工作该有的姿态:方法成立,证据还薄,把账算清楚,把假设留给别人复现。
想深入可以读原文:X-AuT: Progressive Audio-Encoder Compression for Speech LLMs with Cross-Scale Distillation — arXiv:2609.11412
参考文献
- X-AuT: Progressive Audio-Encoder Compression for Speech LLMs with Cross-Scale Distillation — https://arxiv.org/abs/2609.11412
- X-AuT Project Page(XPENG AI)— https://xpeng-ai.github.io/x-aut
- Qwen3-ASR Technical Report — https://arxiv.org/abs/2601.21337
- Qwen3-Omni Technical Report — https://arxiv.org/abs/2509.17765
- Compressing Streaming Neural Audio Encoders via Latent-Space Distillation — https://arxiv.org/abs/2609.04102
- Robust Speech Recognition via Large-Scale Weak Supervision(Whisper)— https://arxiv.org/abs/2212.04356
- Distil-Whisper: Robust Knowledge Distillation via Large-Scale Pseudo Labelling — https://arxiv.org/abs/2311.00430
- On the Role of Encoder Depth: Pruning Whisper and LoRA Fine-Tuning in SLAM-ASR — https://arxiv.org/abs/2603.27981
- Dynamic Encoder Size Based on Data-Driven Layer-wise Pruning for Speech Recognition — https://arxiv.org/abs/2407.18930
- When Large Language Models Meet Speech: A Survey on Integration Approaches — https://arxiv.org/abs/2502.19548
- SALMONN: Towards Generic Hearing Abilities for Large Language Models — https://arxiv.org/abs/2310.13289
- Cross-Modal Knowledge Distillation for Speech Large Language Models — https://arxiv.org/abs/2509.14930