我试图了解 RNN Transducer 如何使用地面实况标签进行训练。在 CTC 的情况下,我知道该模型是用损失函数训练的,该函数总结了所有可能的地面实况标签对齐的所有分数。
但在 RNN-T 中,预测网络必须从最后一步接收输入才能产生类似于“教师强制”方法的输出。但我的疑问是,是否应该将基本事实标签转换为所有可能的空白标签对齐,并通过教师强制“方法将每个对齐馈送到网络?
我试图了解 RNN Transducer 如何使用地面实况标签进行训练。在 CTC 的情况下,我知道该模型是用损失函数训练的,该函数总结了所有可能的地面实况标签对齐的所有分数。
但在 RNN-T 中,预测网络必须从最后一步接收输入才能产生类似于“教师强制”方法的输出。但我的疑问是,是否应该将基本事实标签转换为所有可能的空白标签对齐,并通过教师强制“方法将每个对齐馈送到网络?
RNN-T 有一个转录网络(类似于声学模型)、一个预测网络(语言模型)和一个联合网络(/function,取决于实现),它结合了预测网络和转录网络的输出。
在训练期间,您通过以下方式处理每个话语:
根据 Graves 2012 的图 1,联合网络的 T*U 输出可以被视为一个网格。然后可以使用前向后向算法(第 2.4 节,Graves 2012)有效地实现损失函数。只允许水平(消耗声学框架)和垂直(消耗标签)过渡。从 t 步进到 t+1 类似于 CTC 中的空白状态,而在进行垂直转换时输出非空白符号,即从输出标签 u 到 u+1。请注意,您可以在不输出非空白符号的情况下消耗多个时间帧(根据 CTC),但您也可以在不通过 t 的情况下输出多个标签。
为了更直接地回答您的问题,请注意,只有非空白输出被传递回预测网络的输入,并且转录和预测网络是异步运行的。
参考: