英文题目:Enhancing BEST-RQ Pseudo-Label Quality Through Online Refinement for Automatic Speech Recognition
会议身份:
conference:interspeech:2026:conference-paper-id:xu26b_interspeech
来源为官方会议 PDF;图片依据原页像素,表格数字依据原文引用。PDF 文字层不视为原始 TeX,未可靠恢复的结构不作推断。
标签:#知识蒸馏 #自监督学习 #向量量化 #预训练 #语音识别
评分:7.5/10 | 创新 1.3/2 | 技术严谨 1.0/1.5 | 实验充分 1.1/1.5 | 清晰度 0.8/1 | 影响力 1.0/1.5 | 开源 1.0/1.5 | 可复现 0.3/0.5 | 工程/实践 1.0/1.5
排名:前25% | 文档类型:方法研究
👥 作者与机构
- Jingjing Xu:机构信息未能从会议 PDF 纯文本可靠映射
- Zijian Yang:机构信息未能从会议 PDF 纯文本可靠映射
- Mohammad Zeineldeen:机构信息未能从会议 PDF 纯文本可靠映射
- Eugen Beck:机构信息未能从会议 PDF 纯文本可靠映射
- Ralf Schlüter:机构信息未能从会议 PDF 纯文本可靠映射
- Hermann Ney:机构信息未能从会议 PDF 纯文本可靠映射
📌 核心摘要
语音自监督学习需要从80维对数梅尔特征中生成离散伪标签以训练掩码预测模型,而BEST-RQ使用固定随机投影与码本导致目标区分性弱且对随机初始化高度敏感。该工作构建三步在线精化链条:先以增量主成分分析(Principal Component Analysis,PCA)替代随机投影以保留输入方差结构,其输出进入迭代码本精化模块按分配质心更新码向量,最后新增蒸馏码本学习中间层时序自相似结构并与主码本联合提供监督。与多随机码本集成和BiRQ相比,该方法以单码本对齐数据分布并引入高层语言线索,避免了多预测头的线性开销。在Librispeech 960小时预训练加100小时微调设置下,测试集test-other词错误率(Word Error Rate,WER)由10.1%降至8.8%,相对降低约12%。结论目前仅在Librispeech系列划分和Conformer编码器下验证,未证明对噪声、跨语言或大规模弱监督场景的外推能力。单码本精化几乎不增加耗时,而双码本蒸馏使单轮预训练由1.31小时增至1.56小时。
🔗 开源与复现资源
- 代码相关资源:https://github.com/dnhkng/PCAonGPU — 链接可访问(HTTP 200) 可达状态仅表示本次链接检查结果,不代表许可证、本文权重或运行复现已验证。
🧭 深度解读
语音自监督要解决什么问题?
语音识别的目标是把连续声学波形变成离散文字。有标注语音很贵,无标注语音很多,自监督的思路是先在无标注语音上自己造预训练任务,学出通用表示,再用少量标注数据微调成识别器。
对初学者而言,关键是理解预训练目标从哪里来。一种做法是遮住一部分语音帧,让模型预测被遮住位置应该是什么,这就是掩码预测。预测需要目标,没有人工标注时就用自动方法给每帧一个编号,这个编号就是伪标签。
伪标签质量决定了预训练上限。如果伪标签只分组能量高低,模型只能学会区分响亮和安静。如果伪标签能区分音素和音节结构,模型就能学到对识别有用的表示。
所以自监督方法的区别,很大程度上是造伪标签方法的区别。论文研究的 BEST-RQ 属于在线造伪标签的一类,它在训练同时用固定量化器把输入变成离散编号。它不需要像 HuBERT 那样分多轮做离线聚类,也不需要存储大量标签文件。
同任务的几条路线各付了什么代价?
要理解本文选择,需要把同输入同目标的几条路线放在一起看。Wav2Vec 2.0 用对比学习,让模型从干扰表示中认出正确隐表示,问题是对干扰样本选择敏感。HuBERT 用掩码预测加迭代聚类,第一轮聚类倒谱系数,第二轮聚类中间层表示。
HuBERT 用越来越好的伪标签带模型学语言结构,代价是多轮聚类要额外计算和磁盘空间。Data2Vec 用教师学生自蒸馏,让学生从遮挡输入预测教师隐表示,代价是计算量大且超参数难调。
BEST-RQ 的位置是简化迭代聚类,用固定随机投影量化器在线产生目标。它保留掩码预测,但把聚类换成最近邻查表。原文认为这种简化在下游识别上仍有竞争力,因此受到关注。
后续有两条直接相关改进。一是用多个码本做集成,每个码本产生一套独立目标并各用输出层预测,损失按码本数平均。这相当于用多个随机划分平均来降低方差,但复杂度和计算量上升。
二是 BiRQ,把中间层离散化做增强标签,同时保留原始输入锚定标签并给增强项很小权重。因为不稳定中间层权重太大反而破坏优化。本文与这两条工作运行阶段相同,都是在预训练阶段改目标生成,而不是在微调阶段改识别器。
固定随机量化器为什么弱?
把一个样本旅程走一遍最容易看清问题。取一段语音,先算出 80 维对数梅尔特征,每 10 毫秒 1 帧。量化器用随机矩阵把 80 维压到更低维,然后在码本找欧氏距离最近一项,把编号作为该帧伪标签。
与此同时,编码器看到被随机遮挡后的特征序列,要在被遮挡位置预测出这个编号。这里有两个脆弱点。第一,随机投影方向与数据分布无关。语音能量集中在某些频带和变化方向上,随机矩阵可能压掉有区分度方向,放大噪声方向。
原文把输入称为低层表示且区分能力有限,指的就是这个阶段还没有音素级抽象。第二,码本随机撒点且冻结。如果码本点落在数据稀疏区,很多项永远分不到帧,等于浪费容量。如果落在错误位置,相邻但不同的音会被分到同一编号,监督信号就变粗了。
更麻烦的是初始化敏感性。同样代码换个随机种子,投影矩阵和码本都变了,伪标签划分边界也变了,预训练效果跟着波动。增加码本数可以缓解,因为多个随机划分平均后更稳,但每个码本都要配预测头,训练时间明显增加。
三处改动如何拼成在线精修?
全文方法可以看成一条主路径加两处修正。主路径仍是 BEST-RQ,输入特征一分为二,一路做掩码后进 Conformer 编码器做掩码预测,另一路进量化器产生离散目标。三处改动分别动了量化器投影、主码本更新方式,以及是否增加第二个码本。
第一处把随机线性投影换成在线估计的主成分分析投影,让投影方向对准数据方差最大方向。第二处在训练中周期性用被分配到每个码本项的特征均值替换该项,实现迭代精修。第三处新增小码本,用中间层时间自相似结构去蒸馏它,再用它产生第二套预测目标。
下面总览图把三者位置标得很清楚,读图时先分清哪条是编码器路径,哪条是量化器路径,再看蒸馏箭头从哪里来落到哪里,这是理解双目标监督的关键,图前导读到此结束并转入原图观察。
看图路径: 1. 先沿底部蓝色帧条向上区分掩码进编码器与向右进投影的两条主路径;2. 再看红色投影模块向上分出的两路箭头分别进入哪两个码本框;3. 找到从绿色编码器中部横向指向左侧码本的蒸馏箭头;4. 对比两个码本顶部引出的两条掩码预测损失箭头位置
论文图 1。原论文 Figure 1:“Proposed modifications to BEST-RQ: replacing the quantizer’s linear projection with PCA, updating the codebook via iterative codebook refinement, and adding an additional…”。
从像素上看,底部是两排蓝色小方块表示的帧序列,下排未遮挡,上排有白色镂空表示被掩码。掩码后序列向上进入绿色大框编码器,框内自下而上是多个 Conformer 层。编码器顶部和中部分别引出两条向上的掩码预测损失箭头,说明有两个码本各对应一个损失。
底部未掩码序列向右进入红色 PCA 模块,投影后再向上分成两路进入左右两个码本框。右侧有 3 个小圆圈表示的聚类示意,箭头标明用簇中心更新码本。左侧中间有一条标有 distill 字样的箭头从编码器中部横向指向左侧码本,这就是第二个码本接受中间层监督的位置。
投影为什么换成在线主成分分析?
主成分分析的白话意思是找数据变化最大的方向。语音特征在 80 维空间里不是均匀分布的,某些方向变化大且携带音素信息,某些方向只是通道噪声。随机投影等于随机选方向,主成分分析则是把方差最大的前若干方向找出来做投影矩阵。
这样做可以保留最多的信息结构。原文为保持简单管线,不做离线全量主成分分析,而是用增量式方法在训练中在线估计。做法是对每个新批次维护已见帧数、累计均值和上一步奇异值与奇异向量。
先增量更新均值,再构造包含历史奇异信息和新批次中心化修正项的增广矩阵,对它做奇异值分解,取前列右奇异向量作为新的投影矩阵。实际操作中只更新一个轮次就停止,避免投影一直漂移。
随机投影量化器 × 主成分分析投影: 随机投影量化器分工是把对数梅尔特征随机映射到低维再就近分配码本编号,主成分分析投影分工是把映射方向换成数据方差最大的方向,搭配理由是随机方向可能压掉有区分度的结构而主成分保留它,组合后量化输入更贴合数据分布且对随机种子不敏感。
需要提醒初学者的是,主成分分析只解决方向问题,没有解决中心位置问题。投影对准后,码本点仍可能是随机撒的。下一步迭代精修就是管中心位置的,两步互补,这也是论文把它们绑在一起评估的原因。
迭代精修如何搬动码本中心?
码本可以理解为一本只有向量没有文字的字典,每个条目是一个中心向量。量化时每帧投影向量去找最近中心,帧就被记成该中心编号。迭代精修为每个中心维护两个累加器,一个累加分到那里的投影向量之和,一个计数分到多少帧。
每隔固定步数,就用平均值替换旧中心,这正是聚类里求簇中心的动作。这个过程是在线的,不需要停下来做全量聚类,也不需要存伪标签文件。原文在每轮迭代开始时把累加器清零,然后边训练边累加,到点就更新。
码本 × 迭代码本精修: 码本分工是提供一组可供最近邻分配的中心向量,迭代码本精修分工是周期性用实际分配到的投影特征均值替换旧中心,搭配原因是初始码本随机撒点必然偏离真实分布,组合意义是用在线统计把码本拉回数据密集区而不做离线聚类。
更新频率消融显示总体差异不大,但隔太久更新效果会差一些,因为码本跟不上数据。直观上可以这样想,投影把数据摆正了,精修再把字典词条搬到数据堆里,两步一起让单个码本划分更合理。
论文用搬土距离验证了这一点,不同随机初始化码本在精修后两两距离明显缩小。这说明它们收敛到了相近配置,而不是各走各路。举例来说,这好比多次随机撒点后都用均值漂移拉回密集区。
掩码预测 × 伪标签: 掩码预测分工是让编码器根据未遮挡上下文猜被遮住帧的内容,伪标签分工是给这个猜测提供离散训练目标,搭配理由是无标注语音只能自己造目标,组合意义是伪标签质量直接决定模型学到语音结构还是噪声。
掩码预测与伪标签在这里是配合关系,前者负责学习上下文表示,后者负责提供离散目标。精修让目标边界更贴合数据,因此编码器在猜测被遮挡帧时能学到更稳定的语音结构。
第二个码本如何蒸馏时间结构?
HuBERT 的经验是第二轮用中间层聚类会更好,因为中间层比原始特征带有更多语言线索。直接拿中间层做在线聚类是危险的,因为模型参数一直在变,隐状态本身不稳定。但帧与帧之间的关系相对稳定,比如同一音素内帧互相像,跨音素边界就不像。
这种时序结构可以迁移。具体做法是构造时间自相似矩阵。对投影后输入序列,先做硬分配或软分配得到重构序列,再算所有帧两两相似得到矩阵。对选定中间层输出同样算相似矩阵。
然后最小化两个矩阵逐元素绝对差,这就是蒸馏损失。硬分配指每帧只用最近码本项表示,软分配指用与所有码本项余弦相似加权平均来表示。原文报告软硬分配差异不大,蒸馏中间层选在中间偏上层效果最好。
原因是低层太声学、高层太贴合预训练目标,中间层兼顾音素细节和上下文。实现细节对复现很重要,蒸馏只用未被遮挡帧,因为被遮挡帧表示不可靠。蒸馏在训练约三成进度后才打开,确保模型已相对稳定。
中间层表示 × 码本蒸馏: 中间层表示分工是编码器训练中逐渐形成的带有音素和上下文信息的隐状态,码本蒸馏分工是把这种隐状态的帧间时序相似结构迁移到第二个小码本上,搭配原因是直接聚类不稳定隐状态会抖动而帧间关系相对稳定,组合后新增伪标签带有更丰富的语言线索。
蒸馏损失按序列长度归一化并乘以 0.5 权重。新增码本大小只用 256,远小于主码本 8192,理由是中间层更接近音素级别且变化更少,小码本已够用且更高效。
时间自相似矩阵 × 蒸馏损失: 时间自相似矩阵分工是度量同一序列内任意 2 帧向量有多像从而刻画时序结构,蒸馏损失分工是计算码本重构序列相似矩阵与中间层相似矩阵的逐元素绝对差并最小化它,搭配原因是只对齐相似结构而不强求向量本身相等可以容忍表示漂移,组合意义是让码本学会复现中间层的分段和重复模式。
时间自相似矩阵与蒸馏损失的组合意义在于,只对齐相似结构而不强求向量本身相等。这样可以容忍表示漂移,让码本学会复现中间层的分段和重复模式。
预训练和微调的计算过程是什么?
预训练用全部 960 小时 Librispeech 音频,训练 30 个轮次。编码器由卷积前端加 12 个 Conformer 块组成,前端在时间上做 4 倍下采样,模型维度 512,注意力头 8,前馈隐层 2048,并加入相对位置编码。
输入是 80 维对数梅尔特征,归一化到零均值单位方差,原文强调缺少归一化可能导致码本坍缩。掩码比例约 60%,每个掩码跨度 16 帧。主码本 8192 项,蒸馏码本 256 项。优化目标是两套掩码预测损失加蒸馏损失,蒸馏只在后期开启。
所有实验在 RETURNN 中实现,推理时用 4 元词级语言模型做维特比解码。微调阶段用三档有监督数据,Librispeech 的 100 小时子集训练 30 轮,Libri-light 的 10 小时和 1 小时子集各训练 100 轮,从零训练对照则用 2 倍轮次。
监督目标是 79 个词尾增强音素加联结时序分类损失,训练时加 SpecAugment 增强。基线跑 5 个随机种子选最优,再固定该种子做后续实验以保证可比。增量主成分实现用公开库,配置文件在作者仓库中给出。
这里没有冻结编码器再探针的阶段,预训练和微调都是全参数训练。需要如实指出缺项,原文没有报告优化器类型、学习率和批量大小的具体数值,也没有给出蒸馏所选层组合之外的梯度截断细节。
数据、指标和对照条件如何对齐?
数据划分要先讲清。预训练只用音频不用文本,是 960 小时完整 Librispeech。微调文本标注来自 100 小时 Librispeech 子集,以及 Libri-light 的 10 小时和 1 小时划分。评估在标准开发集和测试集上报告词错误率,分为干净子集与更难的其他子集。
指标越低越好。主结论看 100 小时微调后的测试其他集,因为它最能反映预训练表示对困难语音的帮助。同时也报告 10 小时和 1 小时下趋势,以检验低资源时增益是否更大。
对照条件方面,基线是原始 BEST-RQ 预训练加微调,改进逐项叠加,先加主成分投影,再加迭代精修,再加码本蒸馏。另有两个外部对照,一是从零训练,二是按 BiRQ 设置的增强标签对照,其中增强项权重 0.1、锚定项权重 2.4。
多码本对照则比较 1、2、4、6 个随机码本的训练时间与效果,以及在主成分加精修基础上再加码本的效果。所有微调轮次和解码语言模型保持一致,排除了训练预算不同带来的不公平。
成本单独记录。单张 H100 上每轮预训练时间随码本数增加而上升,而本文单码本改进只增加很少额外时间。初始化敏感性用码本分布间搬土距离衡量,以开发集上伪标签编号频率为边缘分布,用最优传输欧氏代价计算。
逐项叠加带来多大可运行增益?
比较的问题是,在同样 960 小时预训练和同样微调预算下,逐项加上三处改动能否稳定降低词错误率。公平条件是固定随机种子、同样轮次和同样解码器,指标是 4 个子集词错误率,方向是越低越好。下表整理了 100 小时微调下随改动叠加的结果,表头单位为词错误率百分比,数据格为原文裸值。
| 微调数据与预训练配置 | 开发干净集 WER (%) | 测试干净集 WER (%) | 开发其他集 WER (%) | 测试其他集 WER (%) |
|---|---|---|---|---|
| 100 小时 微调 BEST-RQ 基线 | 3.9 | 4.2 | 10.0 | 10.1 |
| 100 小时 加主成分投影 | 3.7 | 4.1 | 9.7 | 9.5 |
| 100 小时 加迭代码本精修 | 3.5 | 4.0 | 9.1 | 9.2 |
| 100 小时 加码本蒸馏 | 3.6 | 3.9 | 8.9 | 8.8 |
上表显示每加一项约带来 3 到 4 个百分点的相对改进,三项全开时测试其他集从 10.1% 降到 8.8%,相对约 12%。代价是多了一个 256 项小码本和相似矩阵损失,但相比堆到 6 个随机码本要轻得多。未胜出对照也要说明,BiRQ 在同样权重下只有一致但微小的改进。
原文解释是增强项权重太小导致优化中贡献弱。10 小时和 1 小时微调下趋势相同,低资源时从零训练错误率很高,而预训练加改进仍能明显降低。但绝对错误率依然很高,不能把相对改进误读为已解决低资源识别。
增益来自哪里?哪些做法没有额外好处?
这一节回答两个反证问题,单码本改进是否等价于堆多个随机码本,以及新增码本信息是否真的不同。先看训练时间与效果权衡。原文报告 4 个码本后增益趋平,而时间开销显著上升。单码本加主成分与精修就能达到约 9% 的相对改进,与 6 个随机码本相当但时间少约 45%。
在已有两个精修码本后再加更多码本几乎没有好处,论文推测是精修让不同初始化码本分布变近了。相反,在精修过单码本基础上加一个蒸馏码本还能再降 3 到 4 个百分点,这支持了蒸馏带来不同信息的判断。下表把码本大小、时间开销与初始化距离放在一起,帮助判断何时值得加码本。
| 对比维度 | 基线条件 | 改进条件 | 关键数字与原文条件 | 结论与代价 |
|---|---|---|---|---|
| 主码本大小 | 随机投影单码本 | 主成分投影单码本 | 8192 项 | 大码本保留声学多样性 |
| 蒸馏码本大小 | 无第二码本 | 蒸馏小码本 | 256 项 | 小码本刻画音素级结构 |
| 多码本开销 | 1 个码本 | 4 个码本 6 个码本 | 30% more 52% more | 堆数量换稳定但贵 |
| 初始化距离 | 随机初始化两两距离 | 精修后两两距离 | average 0.99 drops to 0.25 | 精修收敛到相近配置 |
| 蒸馏时机与权重 | 前期不蒸馏 | 后期蒸馏 | approximately 30% loss scale to 0.5 | 需等模型稳定再蒸馏 |
上表主收益是小成本换稳定,代价是需要实现增量奇异值分解和周期性中心更新。反例也要点明,同样用精修再加一个精修码本没有增益,说明重复同类监督是浪费。蒸馏层选错会打折扣,低层缺上下文、高层丢细节。
更新间隔拉太大则精修跟不上,效果回落。图 2 把初始化距离收缩可视化,读图时不要只看颜色,要核对格内数字量级变化,图前导读到此结束并转入原图观察。
看图路径: 1. 先读左右两幅热力图标题确认左为随机初始化右为改进后;2. 沿对角线上方逐格读数比较左侧约 1.0 与右侧约 0.25 的量级差异;3. 对照右侧颜色条确认深蓝到浅绿对应距离变小的方向
论文图 2。原论文 Figure 2:“Pairwise EMD distance between randomly initialized codebooks and codebooks with PCA and iterative codebook re- finement.”。
从像素上看,该图左右并排两幅上三角热力图,横轴和纵轴都是码本 1 到 6 编号,格内直接印着距离数值,右侧有一条标注距离的颜色条。左侧标题为随机初始化,格内数值在 0.968 到 1.038 之间,颜色整体深蓝,平均约 0.99。右侧标题为主成分加码本精修,格内数值在 0.250 到 0.270 之间,颜色整体浅绿,平均约 0.25。
白色下三角是留空的上三角显示方式,不是缺失数据。这一收缩支持了精修降低初始化敏感性的解释,但它只说明码本分布变近,没有直接证明伪标签音素纯度提高了,后者仍需下游错误率来佐证。
哪些结论还不能下?
论文直接报告的是词错误率下降和码本距离收缩,这是有证据的。有限解释是中间层蒸馏提供了更具语言性的监督,这个解释有下游增益和层选择趋势支持,但没有对伪标签做音素纯度或互信息的直接测量,因此只能说支持而不能说证明。
因果上也不能把相关性当因果,测试其他集变好可能同时来自投影、中心位置和双目标正则。逐项叠加顺序固定,没有打乱顺序或单独测蒸馏的对照,所以每项独立贡献是待验证的。
未验证推测要明确标出。原文没有测量推理延迟、解码实时率和微调之外计算开销,蒸馏只在预训练阶段增加成本,推理时编码器结构不变,但这不等于总成本没有增加。也没有报告多次种子方差和显著性检验,只说基线跑 5 个种子选最优。
这可能让基线看起来已经很强,但改进稳定性仍缺统计口径。数据上只做了 Librispeech 系列,没有跨领域噪声、口音或多语评估,因此不能把结论推广到所有语音场景。
要复现先做什么?
复现第一步是搭好可运行 BEST-RQ 基线。按原文用 RETURNN 实现,80 维对数梅尔、10 毫秒帧移、零均值单位方差归一化、60% 掩码、16 帧跨度、8192 项主码本、12 层 Conformer,这些是信息条件,缺一不可。先跑通 960 小时预训练加 100 小时微调,确认基线测试其他集接近 10.1% 再往下加改动。
否则无法判断增益来自方法还是基线没调好。第二步是接增量主成分。调用证据中状态为可用的公开库在线估计投影,一个轮次后停止更新,把投影矩阵冻结为右奇异向量前列。第 3 步是加迭代精修,为每个码本项维护求和与计数累加器。
每隔数千步用均值替换中心,注意每次迭代开始时清零。第四步是加蒸馏码本,大小 256,只在训练后期对未掩码帧计算时间自相似矩阵绝对差,权重 0.5,蒸馏层优先试 5、6、7 层平均。
代码与权重方面要区分 3 个层次。增量主成分第三方库当前可用,作者实验配置仓库在证据中有链接,但本次只验证了前者可用状态,后者可达性以正文开源声明资源状态为准。复现时先保证单码本加前两项能复现出与 6 码本相当的效果,再加蒸馏看是否从 9.2% 降到 8.8%。
何时值得尝试这套在线精修?
如果你的场景是预训练预算有限但想让伪标签更稳,这套方法值得尝试。它的核心判断是,与其用多个随机码本做集成,不如先把单个码本投影方向和中心位置修对,再用小的蒸馏码本补高级结构。论文证据是单码本两项改进达到 6 码本效果且训练时间少约 45%。
三项全开再降到 8.8%。适用条件是输入为常规对数梅尔特征、编码器有可用的中间层、能接受预训练后期增加相似矩阵计算。不值得盲目照搬的情况也要讲清。如果已有高质量离线聚类标签或大量有监督数据,本文相对增益可能缩小。
如果语音领域与 Librispeech 差异大,主成分方向和最佳蒸馏层可能要重选。如果只看干净集,改进幅度小于困难集,不应期待所有子集同等下降。对初学者而言,复述方法的关键动作是,在线估计投影方向、周期性搬动码本中心、用帧间相似把中间层结构蒸给小码本。
记住这 3 步分工,就抓住了论文用最小额外代价修伪标签的主线。
⚖️ 评分明细
评分属于系统判断,不是论文实验结果;八维数值与总分见页首,原始审计记录保留在后端。
- 评分规则:type-aware-v1
- 评分模型:muse-spark-1.3-contributor
- 评分请求协议:openai_responses

