首页 > 解决方案 > RNN Transducer 训练中的标签对齐

问题描述

我试图了解 RNN Transducer 如何使用地面实况标签进行训练。在 CTC 的情况下,我知道该模型是用损失函数训练的,该函数总结了所有可能的地面实况标签对齐的所有分数。

但在 RNN-T 中,预测网络必须从最后一步接收输入才能产生类似于“教师强制”方法的输出。但我的疑问是,是否应该将基本事实标签转换为所有可能的空白标签对齐,并通过教师强制“方法将每个对齐馈送到网络?

标签: machine-learningrecurrent-neural-networkctc

解决方案


RNN-T 有一个转录网络(类似于声学模型)、一个预测网络(语言模型)和一个联合网络(/function,取决于实现),它结合了预测网络和转录网络的输出。

在训练期间,您通过以下方式处理每个话语:

  • 通过转录网络传播所有 T 个声学帧并存储输出(转录网络隐藏状态)
  • 通过预测网络传播长度为 U 的地面实况标签序列,在序列的开头传入一个全零向量。请注意,此时您无需担心空白状态
  • 通过联合网络传播转录和预测网络隐藏状态的所有 T*U 组合,无论是根据 Graves(2012)的简单求和和指数,还是根据最近的 Google ASR 出版物(即:He等人,2019)。

根据 Graves 2012 的图 1,联合网络的 T*U 输出可以被视为一个网格。然后可以使用前向后向算法(第 2.4 节,Graves 2012)有效地实现损失函数。只允许水平(消耗声学框架)和垂直(消耗标签)过渡。从 t 步进到 t+1 类似于 CTC 中的空白状态,而在进行垂直转换时输出非空白符号,即从输出标签 u 到 u+1。请注意,您可以在不输出非空白符号的情况下消耗多个时间帧(根据 CTC),但您也可以在不通过 t 的情况下输出多个标签。

为了更直接地回答您的问题,请注意,只有非空白输出被传递回预测网络的输入,并且转录和预测网络是异步运行的。

参考:

  • 使用循环神经网络进行序列转导,Graves 2012
  • 用于移动设备的流式端到端语音识别,He 等人。2019

推荐阅读