循环神经网络 (RNN) 旨在处理序列数据,这使得它们在分析音频时特别有用,因为音频本身是时间依赖的。与传统的神经网络不同,RNN 维持一个内部状态,能够捕获序列中先前步骤的信息,从而能够模拟时间模式。这使得它们在语音识别、音乐生成或声音分类等任务中非常有效,因为理解音频样本的顺序和上下文至关重要。例如,在语音转文本系统中,RNN 可以随时间处理原始音频波形,将音素(不同的声音单元)连接成连贯的单词和句子。虽然像 Transformer 这样的现代架构越来越受欢迎,但对于许多实时或资源受限的音频应用而言,RNN 仍然是基础。
RNN 在音频分析中的一个关键优势是能够处理可变长度的输入和输出序列。例如,在自动语音识别 (ASR) 中,任意持续时间的音频片段可以映射到相应长度的文本转录。长短期记忆网络 (LSTM) 和门控循环单元 (GRU) 变体解决了基本 RNN 中的梯度消失问题,使它们能够捕获更长期的依赖关系。这对于音乐生成等任务至关重要,因为模型可能需要根据跨越数秒或数分钟的模式来预测旋律中的下一个音符。类似地,在声音事件检测(例如,识别录音中的汽车喇叭声或门铃声)中,RNN 可以分析音高或幅度等频谱特征如何随时间演变,与静态模型相比提高了准确性。
然而,RNN 也有其局限性。按顺序处理长序列可能计算缓慢,并且其内存限制使得模拟非常长期的依赖关系具有挑战性。出于这个原因,带有自注意力机制的 Transformer 在语音合成等大规模音频任务中越来越受欢迎(例如,OpenAI 的 Whisper)。然而,RNN 仍然广泛用于对低延迟和效率要求较高的边缘设备或实时系统中。例如,智能扬声器中的关键词唤醒通常采用轻量级 RNN 来检测“Alexa”等唤醒词,且延迟极低。混合方法,例如将用于特征提取的卷积层与用于时间建模的 RNN 相结合,在音频应用中也很常见,平衡了效率和性能。