一种基于窗口输入的双向回馈神经网络的语音识别方法
技术领域
本发明属于语音识别领域,具体涉及一种基于窗口输入的双向回馈神经网络的语音识别方法。
背景技术
语言是人类特有的功能,是人与人之间交流、传递信息最简便、最有效的工具。人们对于计算机语音的研究主要有以下几个方面:语音编码、语音合成、语音识别、语音增强、说话人识别等。在这些研究当中,语音识别是其中极其重要一环。经过几十年的发展,语音识别技术已经渗透入我们生活的方方面面,应用范围涵盖了智能家居、智能手机助手以及国防安全等领域。
语音识别技术主要包括声学模型、语言模型以及解码器三个大的方面。现阶段回馈神经网络(RNN)是最主流的声学模型技术之一。RNN是一种以连接权重和节点来模拟人脑中神经元工作的技术,可以视作一种分类器,结构主要包括输入层,隐含层和输出层,相邻层的节点之间有带权重的全连接,输出层的节点数量由目标类别数量所决定,数据从输入层进入网络,经由一系列的权重计算和非线性激活函数,最终到达输出层,得到该数据被分为每一类的概率值。在语音识别领域中,主流RNN结构的输入为语音特征,输出为音素状态。由于RNN具有很强的非线性表达能力,能够对输入的语音特征进行更好的转换表达,以用于输出层的分类,同时,数据量越大,RNN的层数越多,参数量越大,训练所得到的神经网络分类能力越好,最终的识别准确率越高。RNN能够建模动态时间信息,但是不够稳定,在实际的应用中我们一般采用长短时记忆网络(long short-term memory,LSTM)作为基本的回馈神经网络单元。为了取得更好的效果,一般采用双向LSTM(BLSTM)。如图1所示,BLSTM通过前后向两个方向的建模,取得了比单向LSTM更好的识别效果。
标准的LSTM公式如下:
gt=tanh(Wxgxt+Wygyt-1+bg) (1)
it=σ(Wxixt+Wyiyt-1+Wcict-1+bi) (2)
ft=σ(Wxfxt+Wyfyt-1+Wcfct-1+bf) (3)
ct=it⊙gt+ft⊙ct-1 (4)
0t=σ(Wxoxt+Wyoyt-1+Wcoct+bo) (5)
yt=ot⊙tanh(ct) (6)
其中,xt是输入信息,yt是输出信息,ct是记忆信息单元,gt是临时记忆单元,yt-1是历史(回馈)输出信息,ct-1是历史(回馈)记忆信息,it是输入门,ft是遗忘门,ot是输出门,W*是全连接矩阵,b*是神经网路计算的偏置向量,⊙是点乘操作符号,σ为Sigmoid非线性函数。
但是目前BLSTM存在的问题是,每一次LSTM的输入采用的是前一层当前时刻的输出。独立帧输入的信息量只局限于当前时刻,限制了本层LSTM的判决精度。如何给LSTM的输入提供一个更广的输入时域窗,进而提升判决准确度仍然是个开放问题。
发明内容
本发明的目的在于克服上述技术缺陷,提供了一种基于窗口输入的双向回馈神经网络模型的语音识别方法。
本发明的技术方案为:
一种基于窗口输入的双向回馈神经网络的语音识别方法,所述方法包括:
步骤1)建立和训练基于窗口输入的双向回馈神经网络BLSTM-E;
步骤2)将待识别的语音帧输入步骤1)的基于窗口输入的双向回馈神经网络BLSTM-E,通过BLSTM-E的前向计算,计算出每个语音帧的后验概率;
步骤3)将步骤2)中每个语音帧的后验概率输入解码器,解码器在语言模型的限制下,利用维特比算法在状态空间中搜索一条最优的结果作为识别结果。
作为上述方法的一种改进,所述步骤1)具体包括:
步骤1-1)建立基于窗口输入的双向回馈神经网络BLSTM-E作为声学模型
所述基于窗口输入的双向回馈神经网络BLSTM-E的每层的输入都是一个经过扩展的时间窗口域;该网络的第0层是输入语音特征层;第一层是双向LSTM,包括前向LSTM以及反向LSTM,每个方向的LSTM都是依赖于前后多帧范围内的输入进行判决;第二层为全连接FC模块,该层将同一时刻的前向LSTM以及反向LSTM的输出进行降维;第三层为双向LSTM;第四层为全连接FC模块,其结果进行输出;
步骤1-2)基于训练数据对基于窗口输入的双向回馈神经网络BLSTM-E进行训练,得到训练好的基于窗口输入的双向回馈神经网络BLSTM-E。
作为上述方法的一种改进,所述步骤2)具体包括:
步骤2-1)基于待识别的语音帧计算第一层的Opt输出的前向和反向中间特征向量
以及
其中,t表示时间,
是待识别的语音帧,m
f以及n
f分别是前向处理扩展的左窗和右窗的宽度,m
b以及n
b分别是反向处理扩展的左窗和右窗的宽度;Opt是采集时间窗信息的操作,采用的是ESBN网络;
步骤2-2)计算第一层前向LSTM以及反向LSTM的输出
以及
其中,LSTMf是前向LSTM运算;LSTMb是反向LSTM运算;
第二层全连接FC模块的输入维度是前向和反向LSTM输出向量维度的和,输出维度是输入维度的一半;
步骤2-4)计算第三层Opt输出的前向和反向中间特征向量
以及
步骤2-5)计算第三层前向LSTM以及反向LSTM的输出
以及
步骤2-7)基于窗口输入的双向回馈神经网络BLSTM-E的输出作为该语音帧的后验概率。
作为上述方法的一种改进,所述点加权-块相加神经网络ESBN的具体的操作如下:
其中,N2是未来时间窗大小;N1是历史时间窗大小;scale是权重,scale具体的计算公式见下:
其中,output dim是输出向量的维度,input dim是输出向量的维度;yt是整个ESBN网络的输出;xt+n是整个ESBN网络的输入;an是权重向量。
本发明的优势在于:
1、本发明提出的基于BLSTM-E声学模型的语音识别方法,能够在每一帧的语音判决过程中将更广的时间域内的信息利用起来,取得了相比于传统BLSTM语音识别方法更精确的识别结果;
2、本发明的BLSTM-E中的ESBN模型,能够以很小的计算负担实现BLSTM-E对时域窗扩展的功能,保证了基于BLSTM-E的语音识别系统在取得更高的识别精度同时,参数量以及计算量都保持在一个合理范围;
3、本发明的语音识别方法能够对现有的多种语音识别系统进行扩展,有较高的扩展性。
附图说明
图1为现有技术的双向回馈神经网络的结构图;
图2为本发明的基于窗口输入的双向回馈神经网络的结构图。
具体实施方式
下面结合附图和实施例对本发明进行详细说明。
语音识别主要包括特征提取、声学模型、语言模型以及解码器四大模块。
特征提取中,梅尔频率倒谱系数(MFCC)是最为常用的语音特征,梅尔频率是基于人耳听觉特征提取出来的。MFCC主要由预加重、分帧、加窗、快速傅里叶变换(FFT)、梅尔滤波器组、离散余弦变换几部分组成。特征提取的目的是将时域上没有鉴别性的特征进行域的转换,转换到专门设计的语音特征域,便于后端系统的鉴别判决。
声学模型负责对语音信号的声学层面的信息进行建模,是语音识别系统的核心模块。声学模型是把语音转化为声学表示的输出,即找到给定的语音源于某个声学符号的概率。最常用的声学建模方式是隐马尔科夫模型(HMM)。在HMM下,状态是隐变量,语音是观测值,状态之间的跳转符合马尔科夫假设。其中,状态转移概率密度多采用几何分布建模,而拟合隐变量到观测值的观测概率的模型常用高斯混合模型(GMM)。基于深度学习的发展,深度神经网络(DNN)、卷积神经网络(CNN)、循环神经网络(RNN)等模型被应用到观测概率的建模中,并取得了非常好的效果。其中目前工业界应用最为广泛的声学模型为LSTM以及BLSTM。
如图2所示,本发明的声学模型为基于窗口输入的双向回馈神经网络BLSTM-E,该网络的每层的输入都是一个经过扩展的时间窗口域;该网络的第0层是输入语音特征层;第一层是双向LSTM,包括前向LSTM以及反向LSTM,每个方向的LSTM都是依赖于前后多帧范围内的输入进行判决;第二层为全连接FC模块,该层将同一时刻的前向LSTM以及反向LSTM的输出进行降维;第三层为双向LSTM;第四层为全连接FC模块,其结果进行输出。
语言模型负责对语音所携带的语义层面的信息进行建模,解码器负责结合声学模型和语言模型的得分进行总体判决。语言模型对语言的统计规律进行建模,通过对大量的文本进行统计得到。在系统实施时,语言模型知识一般会融入到解码的过程当中。常用的语言模型包括n-gram以及基于神经网络的语言模型。
本发明提出了基于BLSTM-E的语音识别系统采用BLSTM-E作为声学模型模块。BLSTM-E的结构图如图1所示。相比于基于BLSTM声学模型的语音识别系统,BLSTM-E语音识别系统将BLSTM声学模块替换为BLSTM-E声学模块,BLSTM-E通过将输入帧改为输入窗,显著地提升了识别判决精度。
BLSTM-E声学模型的处理过程为:
步骤1)基于待识别的语音帧计算第一层的Opt输出的前向和反向中间特征向量
以及
其中,
是待识别的语音帧,m
f以及n
f分别是前向处理扩展的左窗和右窗的宽度,m
b以及n
b分别是反向处理扩展的左窗和右窗的宽度;Opt是采集时间窗信息的操作,采用的是ESBN网络;
步骤2)计算第一层前向LSTM以及反向LSTM的输出
以及
其中,LSTMf是前向LSTM运算;LSTMb是反向LSTM运算;
第二层全连接FC模块的输入维度是前向和反向LSTM输出向量维度的和,输出维度是输入维度的一半;
步骤4)计算第三层Opt输出的前向和反向中间特征向量
以及
步骤5)计算第三层前向LSTM以及反向LSTM的输出
以及
步骤7)根据基于窗口输入的双向回馈神经网络BLSTM-E的输出,计算声学模型的得分。
本发明提出了一种参数集约型时间窗信息采集操作:点加权-块相加神经网络(element-wise scale block-sum network,ESBN)。具体的操作如下:
其中N2是未来时间窗,N1是历史时间窗。ESBN相比于传统的全连接矩阵优势在于:ESBN是对角矩阵,相比于全连接矩阵极大的压缩了参数量。ESBN另一个重要的操作是∑,将不同时刻的特征进行按点相加。Scale的计算如下:
这种参数集约型神经网络在提供更广的判决信息的同时,保持了双向回馈神经网络的模型规模。取得了模型精度以及模型参数之间很好的平衡,既提升了模型的识别精度,又保证了模型的紧凑。
基于传统的独立帧输入的双向回馈神经网络,以BLSTM为例,我们一般采用3层BLSTM结构堆叠成一个深度BLSTM网络。每一层BLSTM都包含一个前向LSTM以及一个反向LSTM。其中每个方向的LSTM我们都采用(1024-1024)配置。1024代表的是LSTM的记忆单元的维度(前向和反向均为1024)。每层BLSTM的输出是将前向LSTM以及反向LSTM的输出进行拼接之后的向量。对于(1024-1024)这个配置来说,每层的BLSTM的输出维度为2048维。
基于带窗扩展的双向回馈神经网络,以BLSTM-E为例,我们也采用3层的堆叠结构。每层BLSTM-E也都包含一个前向LSTM-E以及一个反向LSTM-E网络。每个LSTM-E的输出和LSTM保持一致,是1024维。依据公式9,我们会用一个DNN对上一层的LSTM-E的输出进行降维。例如我们可以进行一个2048到512的降维。之后依据公式10以及公式11,用ESBN网络对降维过后的
进行点加权以及块相加操作,完成对历史窗口信息的搜集。
实验结果
为了验证最终提出的扩展窗双向回馈神经网络的效果,以BLSTM为基础开展了一系列的实验。实验平台采用显卡Nvidia Tesla K80,核心频率562MHZ,显存2*12GB,主机配备128GB内存,CPU采用Intel(R)Xeon(R)CPU E5-2650 v3@2.30GHz。实验的语料库是1000小时的中文电话交谈语音识别任务,训练准则为帧级别交叉熵准则。评价指标是词错误率(word error rate,WER),WER越低代表识别的准确率越高。模型的识别结果在两个测试集上进行了测试,分别为Test1与Test2,Test1为5小时,Test2为8小时。
本发明测试了两种BLSTM-E的配置:分别为BLSTM-E1以及BLSTM-E2。BLSTM-E1是N2以N1均为3的情况,这种配置下,每个LSTM除了当前帧之外还可以在前后各3帧的范围内的信息进行搜集。BLSTM-E2下,对于前向LSTM,N2为6,N1为3;对于反向LSTM,N2为3,N1为6。BLSTM-E2相比BLSTM-E1的优势在于,BLSTM-E2的前向网络可以看到更多未来信息;BLSTM-E2的反向网络可以看到更多的历史。更广的信息量一般代表着更准确的决策结果。
表1:1000小时中文电话交谈任务词错误率
声学模型 |
参数量 |
Test1(WER%) |
Test2(WER%) |
BLSTM |
33.8M |
24.83 |
20.77 |
BLSTM-E1 |
26.4M |
24.13 |
20.04 |
BLSTM-E2 |
26.5M |
23.93 |
19.93 |
从表1可以看出,BLSTM-E的参数量普遍比BLSTM要小。这是因为BLSTM-E的中间DNN起到了维度压缩的作用。从Test1以及Test2上的识别结果可以看出,BLSTM-E比BLSTM取得了稳定显著地提升。同时对比BLSTM-E2以及BLSTM-E1我们可以看出,更广的时间窗能够进一步提升判决的准确率。
最后所应说明的是,以上实施例仅用以说明本发明的技术方案而非限制。尽管参照实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,对本发明的技术方案进行修改或者等同替换,都不脱离本发明技术方案的精神和范围,其均应涵盖在本发明的权利要求范围当中。