趋近智
选择RNN-T或Transformer等强大架构对于自动语音识别(ASR)系统是基础性的,但训练过程本身也为提高模型性能、鲁棒性和泛化能力提供了很大的空间。简单地用原始数据训练复杂模型通常会导致过拟合或在多样的实际语音上表现不佳。训练阶段应用的一些高级技术可以缓解这些问题并构建更有效的ASR系统。
ASR中最有影响力的策略之一,不是作用于原始音频波形,而是直接作用于输入特征,通常是对数梅尔滤波器组能量(频谱图)。SpecAugment是一种常用技术,它对这些特征表示引入变形,迫使模型对语音和噪声的变化保持不变性。
它包含三个主要组成部分,在训练期间依次应用:
SpecAugment 在训练期间动态应用,这意味着每个 epoch 模型都会看到输入频谱图的略微不同版本。这显著减少了过拟合,并提高了对未见过说话者、口音和声学条件的泛化能力,而无需额外的转录数据。参数(W, F, T,以及可能应用的频率和时间遮蔽的数量)是在模型开发过程中调整的超参数。
SpecAugment 操作应用于输入频谱图后,再将其馈入ASR模型的简化流程。
多任务学习不是仅仅在语音到文本转录这一主要任务上训练模型,而是让模型同时执行一个或多个辅助任务。主要观点是这些任务共享表示层(例如,编码器-解码器模型中的编码器),迫使这些层学习对所有任务都有益的特征,从而提高主要任务的泛化能力。
ASR中常见的辅助任务包括:
实现方式: 通常,共享编码器处理输入语音特征。编码器(或中间层)的输出随后被馈入单独的、任务特定的“头部”或解码器。例如,一个头部可以是用于转录的CTC或注意力解码器,而另一个可以是用于说话者识别的简单分类器网络。
总损失函数通常是每个任务损失的加权和: L总=w主要L主要+∑iw辅助,iL辅助,i 其中 L_主要 是主ASR任务的损失(例如,CTC损失、交叉熵损失),L_辅助,i 是第 i 个辅助任务的损失,而 w_主要 和 w_辅助,i 是平衡每个任务贡献的权重。这些权重是重要的超参数。如果辅助任务权重过高,它们可能会损害主要任务的性能;如果过低,它们可能无法提供足够的正则化益处。
MTL 作为一种隐式正则化形式,鼓励共享层学习更通用的表示。
受人类学习方式启发,课程学习涉及以特定顺序向模型呈现训练样本,通常从较简单的例子开始,并逐渐增加难度。“简单”和“困难”的定义可能有所不同:
核心思想是,通过最初专注于更简单的例子,模型可以在处理更具挑战性的数据之前在参数空间中建立一个好的起点。这可以导致更快的收敛速度和可能更好的最终性能,特别是对于复杂模型或优化困难的任务。实施课程学习需要一个机制来根据所选难度度量对训练数据进行排序或分桶,以及一个在训练 epoch 中引入更难例子的时间表。
虽然Adam或带有动量的SGD等标准优化器常用,但在训练过程中有效地调度学习率对于ASR中使用的大型深度学习模型很重要。简单的固定学习率通常表现不佳。常见策略包括:
选择合适的优化器参数(例如,Adam的 beta_1, beta_2,SGD的动量)和合适的学习率调度,包括热身步数和峰值学习率,是获得最佳结果需仔细调整的重要超参数。
这些高级训练技术补充了之前讨论的架构选择。通过加入SpecAugment、多任务学习和仔细的学习率调度等方法,您可以显著提高ASR模型的鲁棒性和准确性,使其在处理实际语音数据中固有的变异性时更有效。
这部分内容有帮助吗?
© 2026 ApX Machine Learning用心打造