Skip to main content
QUICK REVIEW

[论文解读] Online Sequence Training of Recurrent Neural Networks with Connectionist Temporal Classification

Kyuyeon Hwang, Wonyong Sung|arXiv (Cornell University)|Nov 21, 2015
Speech Recognition and Synthesis参考文献 24被引用 5
一句话总结

该论文提出了一种基于期望最大化(EM)的在线CTC训练算法,适用于单向RNN,可在无需完整展开的情况下,实现对长序列或连续序列的高效、内存受限训练。通过结合截断CTC(CTC-TR)与基于EM的帧覆盖(CTC-EM),该方法在仅使用64倍展开(640ms窗口)的情况下实现了接近最先进水平的性能,使GPU上的训练速度达到27,000帧/秒,且在WSJ数据集上仅带来4.5%的相对WER增加。

ABSTRACT

Connectionist temporal classification (CTC) based supervised sequence training of recurrent neural networks (RNNs) has shown great success in many machine learning areas including end-to-end speech and handwritten character recognition. For the CTC training, however, it is required to unroll (or unfold) the RNN by the length of an input sequence. This unrolling requires a lot of memory and hinders a small footprint implementation of online learning or adaptation. Furthermore, the length of training sequences is usually not uniform, which makes parallel training with multiple sequences inefficient on shared memory models such as graphics processing units (GPUs). In this work, we introduce an expectation-maximization (EM) based online CTC algorithm that enables unidirectional RNNs to learn sequences that are longer than the amount of unrolling. The RNNs can also be trained to process an infinitely long input sequence without pre-segmentation or external reset. Moreover, the proposed approach allows efficient parallel training on GPUs. For evaluation, phoneme recognition and end-to-end speech recognition examples are presented on the TIMIT and Wall Street Journal (WSJ) corpora, respectively. Our online model achieves 20.7% phoneme error rate (PER) on the very long input sequence that is generated by concatenating all 192 utterances in the TIMIT core test set. On WSJ, a network can be trained with only 64 times of unrolling while sacrificing 4.5% relative word error rate (WER).

研究动机与目标

  • 解决在长序列上进行CTC训练时完整展开带来的高内存开销,尤其是在GPU等共享内存系统上。
  • 实现在无需预分割或外部重置的情况下,对单向RNN进行在线和连续序列训练。
  • 开发一种方法,在减少展开长度的同时保持高模型性能,从而在内存受限条件下支持更多并行序列。
  • 通过使用固定展开窗口,减少因序列长度差异导致的负载不平衡,实现GPU上的高效可扩展训练。
  • 支持小体积、内存受限的在线学习与自适应系统。

提出的方法

  • 提出一种基于期望最大化(EM)的在线CTC算法,将训练分为两个阶段:截断CTC(CTC-TR)和基于EM的帧覆盖(CTC-EM)。
  • 使用CTC-TR进行标准的反向传播,通过截断展开窗口限制内存使用量,使其保持在固定窗口大小内。
  • 应用CTC-EM对CTC-TR遗漏的帧进行覆盖,特别是在序列边界和长序列内部,采用EM风格的迭代估计方法。
  • 将基于EM的帧覆盖整合进损失函数,以提升模型在不完整或截断序列上的学习效果。
  • 通过在连接的序列上使用话语级转录进行训练,实现无需外部重置的连续RNN推理,使网络能够处理无限流数据。
  • 通过使用固定展开窗口,将该方法与GPU并行训练结合,实现负载均衡的数据流,从而获得高吞吐量。

实验结果

研究问题

  • RQ1是否可以在不进行完整展开的情况下,高效地对长序列或连续输入序列进行基于CTC的序列训练?
  • RQ2在在线CTC训练中,如何在保持模型性能的同时减少单向RNN的内存使用?
  • RQ3基于EM的帧覆盖在多大程度上可以补偿截断反向传播导致的性能损失?
  • RQ4所提方法是否能够实现在GPU上对可变长度序列进行高吞吐量、并行化训练?
  • RQ5在在线CTC训练中,展开长度、训练速度与模型准确率之间的权衡关系如何?

主要发现

  • 所提出的在线CTC算法在包含192个语音段的连接TIMIT测试集上实现了20.7%的音素错误率(PER),证明了其在连续序列处理方面的有效性。
  • 在WSJ语料库上,仅使用64倍展开(640ms窗口)的模型相比完整展开仅增加4.5%的相对WER,同时达到26,980帧/秒的训练速度。
  • 在256条并行流和64倍展开的情况下,训练速度达到26,980帧/秒,表明在内存受限条件下实现了显著加速。
  • 使用256和512步展开的CTC-TR + CTC-EM的收敛曲线与使用2,048步展开的CTC-TR收敛曲线高度一致,表明尽管展开减少,仍具有强大的泛化能力。
  • 该方法在仅12.43%的CTC-TR覆盖(64倍展开)下,仍能将WER保持在完整展开基线的1.5%以内,证明了其对低覆盖情况的鲁棒性。
  • 该方法支持无需外部重置的连续RNN推理,已在TIMIT数据集上通过单一无限长输入流验证。

更好的研究,从现在开始

从阅读论文到最终审阅,大幅缩短您的研究时间。

无需绑定信用卡

本解读由 AI 生成,并经人工编辑审核。