趋近智
连接时序分类 (CTC) 使声学模型无需逐帧对齐即可进行训练。然而,CTC 在一个强条件独立性假设下运行:一个时间步的预测独立于其他时间步的预测。这种局限性使得模型无法捕捉输出序列中固有的语言结构。序列到序列 (Seq2Seq) 模型提供了一个更强大的架构,它直接对给定输入音频序列的整个输出文本序列的概率进行建模,。这种方法能有效地在一个统一的结构中学习声学和语言模式。
任何 Seq2Seq 模型的核心是编码器-解码器架构。这种设计将输入处理任务与输出生成任务分离,为不同长度序列的映射提供了灵活的结构。
编码器的作用是处理整个音频特征输入序列(如对数梅尔频谱图),并将其信息压缩成一组高层次的表示。通常,编码器是一个多层循环神经网络 (RNN),常为双向长短期记忆 (BiLSTM) 网络。通过在前向和后向两个方向处理序列,BiLSTM 编码器在每个时间步生成一个隐藏状态,其中包含该点周围整个音频语境的信息。
编码器的输出是一个隐藏状态向量序列,每个输入时间步对应一个。对于一个有 帧的输入频谱图,编码器生成一个隐藏状态序列 。
解码器是一个自回归 RNN,它一次生成一个输出标记(一个标记可以是字符、词或子词单元)。它作为一个条件语言模型运作:给定编码后的音频和已经生成的标记序列,它预测转录本中的下一个标记。
在生成过程的每一步,解码器接收两个主要输入:
这种逐步生成会一直持续,直到解码器生成一个特殊的序列结束 (<eos>) 标记。
编码器将音频帧 () 处理为隐藏状态 ()。在每个解码步骤中,注意力机制从所有编码器状态生成一个上下文向量 ()。解码器使用此上下文和前一个生成的标记 () 来生成下一个标记 ()。
早期的 Seq2Seq 模型试图将所有编码器隐藏状态压缩成一个单一的、固定大小的上下文向量。这造成了信息瓶颈,因为一个单一的向量难以保留长音频片段中的所有必要细节。在上一节中介绍的注意力机制,通过允许解码器动态地“回顾”所有编码器隐藏状态并在生成过程的每一步专注于最相关的部分,直接解决了这个问题。
Seq2Seq 模型进行端到端训练,以最大化给定音频的真实转录文本的概率。损失函数通常是分类交叉熵,在每个解码器时间步计算,然后对整个序列求平均。
稳定和加速这些模型训练的一种常用技术是教师强制。在训练期间,我们不是将解码器自身(可能不正确)在之前步骤的预测作为当前步骤的输入,而是输入参考转录本中的真实标记。这可以防止模型累积其自身错误,并帮助它更有效地学习音频和文本之间的对齐。然而,它也造成了训练(输入总是正确)和推断(模型必须依赖自己的预测)之间的一种差异,这个问题被称为暴露偏差。
在推断过程中,没有真实值来引导解码器。模型必须根据自己的预测生成整个输出序列。寻找最可能的序列需要一种搜索算法。
对于许多 ASR 任务,Seq2Seq 模型相较于基于 CTC 的方法来说是一个重要的进步。
优点:
局限性:
这些模型是许多现代架构的开端。在下一节中,我们将介绍一个用于 ASR 的具体且有影响力的 Seq2Seq 模型:听、注意、拼写 (LAS)。
这部分内容有帮助吗?
© 2026 ApX Machine Learning用心打造