对于这个 RNN 例子来说,我们在每个窗口使用前后各 9 个时间点——共 19 个时间点。有 26 个倒谱系数,在 25 毫秒的时间里共 494 个数据点。根据数据采样率,我们建议在 16,000 Hz 上有 26 个倒谱特征,在 8,000 Hz 上有 13 个倒谱特征。以下是一个 8,000 Hz 数据的加载窗口: 如果你希望了解更多有关转换数字音频用于 RNN 语音识别的方法,可以看看 Adam Geitgey 的介绍: 对语音的序列本质建模 长短期记忆(LSTM)是循环神经网络(RNN)的一种,它适用于对依赖长期顺序的数据进行建模。它对于时间序列数据的建模非常重要,因为这种方法可以在当前时间点保持过去信息的记忆,从而改善输出结果,所以,这种特性对于语音识别非常有用。如果你想了解在 TensorFlow 中如何实例化 LSTM 单元,以下是受 DeepSpeech 启发的双向循环神经网络(BiRNN)的 LSTM 层示例代码: with tf.name_scope('lstm'): # Forward direction cell: lstm_fw_cell =tf.contrib.rnn.BasicLSTMCell(n_cell_dim, forget_bias=1.0, state_is_tuple=True) # Backward direction cell: lstm_bw_cell =tf.contrib.rnn.BasicLSTMCell(n_cell_dim, forget_bias=1.0, state_is_tuple=True) # Now we feed `layer_3` into the LSTM BRNN cell and obtain the LSTM BRNN output. outputs, output_states =tf.nn.bidirectional_dynamic_rnn( cell_fw=lstm_fw_cell, cell_bw=lstm_bw_cell, # Input is the previous Fully Connected Layer before the LSTM inputs=layer_3, dtype=tf.float32, time_major=True, sequence_length=seq_length) tf.summary.histogram("activations", outputs) 关于 LSTM 网络的更多细节,可以参阅 RNN 与 LSTM 单元运行细节的概述:
此外,还有一些工作探究了 RNN 以外的其他语音识别方式,如比 RNN 计算效率更高的卷积层:https://arxiv.org/abs/1701.02720 训练和监测网络 因为示例中的网络是使用 TensorFlow 训练的,我们可以使用 TensorBoard 的可视化计算图监视训练、验证和进行性能测试。在 2017 TensorFlow Dev Summit 上 Dandelion Mane 给出了一些有用的帮助:https://www.youtube.com/watch?v=eBbEDRsCmv4 我们利用 tf.name_scope 添加节点和层名称,并将摘要写入文件,其结果是自动生成的、可理解的计算图,正如下面的双向神经网络(BiRNN)所示。数据从左下角到右上角在不同的操作之间传递。为了清楚起见,不同的节点可以用命名空间进行标记和着色。在这个例子中,蓝绿色 fc 框对应于完全连接的层,绿色 b 和 h 框分别对应于偏差和权重。 我们利用 TensorFlow 提供的 tf.train.AdamOptimizer 来控制学习速度。AdamOptimizer 通过使用动量(参数的移动平均数)来改善传统梯度下降,促进超参数动态调整。我们可以通过创建标签错误率的摘要标量来跟踪丢失和错误率: # Create a placeholder for the summary statistics with tf.name_scope("accuracy"): # Compute the edit (Levenshtein) distance of the top path distance =tf.edit_distance(tf.cast(self.decoded[0], tf.int32), self.targets) # Compute the label error rate (accuracy) self.ler =tf.reduce_mean(distance, name='label_error_rate') self.ler_placeholder =tf.placeholder(dtype=tf.float32, shape=[]) (责任编辑:本港台直播) |