端到端语音评分神经网络
Abstract
设计了包含神经网络在内的端到端评分系统,能够自动从语言学与声学两大维度提取有用的特征。
Introduction
以前研究ASR(automatic speech recognition)用了很多CAPT(computer aided pronunciation training)的方法。基本都是用语音处理技术,韵律分析,自然语言处理技术等手动提取特征来分析。然而手动提取特征很难提取出最work的特征。后来又有人尝试用神经网络来自动学习获得最work的特征。基于此,也可以直接设计端到端的神经网络来直接给音频打分。
Previous research
打分的对象是英语的初学者,主要是从“流畅度”,“音调”,“词意”等方面评估。使用神经网络构造AM(acoustic models)也有很多,譬如DBN(deep belief network),HMM(hidden Markov models)。此前也有人使用端到端的网络来自动给文章打分,他们使用双向的RNN来学习特征。在ASAP数据集上,这些网络的效果比使用手动提取的特征(word,part of speech n-grams,phrase-structure)效果更好。还有人利用CNN+RNN混合模型来评分。CNN分析局部文本,RNN分析较大段上下文的信息。类比文章打分,也有人在语音识别上面使用类似的网络,利用频谱和韵律学测量,使用双向RNN来学习特征,但是有效性还没有被充分验证。我们构造了新的端到端模型,使用语言学特征分辨单词,使用声学特征来评分。
Deep Learning Based Scoring Models
上图就是使用的模型。用两个基于神经网络的模型来学习特征,对这些特征线性使用线性回归模型来预测分数。
在语言学模型中,使用单词嵌入层(word embedding layer)将待识别的单词转化为张量(tensor).在声学模型中,使用了四种度量:1.后验概率 2.单词时长 3.音高(pitch)均值 4. 响度(intensity)均值。在两个model中使用了三种网络结构:1.一维CNN 2.基于LSTM的BD-RNN(Bi-Directional RNN using Long Short-Time Memory cells) 3.使用attention weighting scheme的BD-LSTM。
CNN based scoring model
a中,在input层之后,加入dropout层,之后连接一个全卷积层(卷积核大小为 c o n v s i z e conv_{size} convsize-1, c o n v s i z e conv_{size} convsize, c o n v s i z e conv_{size} convsize+1以获得不同大小的感受野)。CNN后加入一个max-over-time池化层,生成的 3 ∗ c o n v n 3*conv_n 3∗convn的编码向量(encoded vector)。然后又经过一个dropout层,最终输出送入线性回归层。
BD-LSTM based scoring model
RNN模型处理的是输入的序列数据,通过递归调用迁移函数得到hidden state向量 h t h_t ht,在时间节点t下, h t h_t ht是否激活由当前输入 x t x_t xt和之前的hidden state h t − 1 h_{t-1} ht−1决定。
h t = f ( h t − 1 , x t ) \begin{aligned} h_t=f(h_{t-1},x_t) \end{aligned} ht=f(ht−1,xt)
通常来说,RNN模型在最后最有一个时间节点T时生成新的大小的向量 h T h_T hT,然后将 h T h_T hT作为下一层的输入。但是仅使用RNN可能会导致梯度消失或者梯度爆炸(exploding or vanishing gradient),也就是训练的时候梯度会指数增长或指数衰减。引入LSTM可以解决这个问题,它可以使RNN在实践中更有效。因此我们的模型中也使用了LSTM RNN模型。
LSTM单元可以看做随时间变化的向量的集合( R d R^d R