一种中英文混合语音识别方法及装置与流程

文档序号:19073695发布日期:2019-11-08 21:06阅读:297来源:国知局
一种中英文混合语音识别方法及装置与流程

本发明涉及语音识别技术领域,尤其涉及一种中英文混合语音识别方法及装置。



背景技术:

随着生活的全球化,使用混合语言交流的现象已经成为一种普遍现象。据统计,讲多语言的人要多于讲单语言的人。混合语言之间的声学和语言之间的复杂性给语音识别带来挑战。因此,混合语言声学模型的研究是一个重要的研究方向。

目前,lstm(longshort-termmemory,长短期记忆网络)是一种时间循环神经网络,ctc(connectionisttemporalclassification,连接主义时间分类)算法边缘化和浓缩了所有可能的逐帧输出符号序列,并且在timit数据集上取得良好识别率,其中,是it和mit合作音素级别标注的语音库,用于自动语音识别系统的发展和评估。综上,lstm-ctc是现在主流的一种针对单一语种的端到端的语言识别系统。

因此,基于混合语言声学模型,目前的主流方法还是通过组合多个基于深度学习语音识别的模型来实现,其中,每个模型对应一种语言,但是,这种模型不但增加了网络的参数量,同时在训练及识别阶段,也不利于考虑到语音的时间长相关问题。



技术实现要素:

本发明的主要目的在于提出一种中英文混合语音识别方法及装置,以解决现有技术中实现混合语言声学模型的方法模型的网络参数量大、语音识别性能差的问题。

为实现上述目的,本发明实施例第一方面提供一种中英文混合语音识别方法,包括:

获取语音训练样本,所述语音训练样本采样于中英文语料库,所述中英文语料库包括中文语料库、英文语料库、中英文混合语料库;

通过所述语音训练样本对lstm-ctc端到端网络进行训练,并修改所述lstm-ctc端到端网络的softmax层,以使所述softmax层输出的字符为unicode编码方式;

根据所述softmax层输出的字符获得语音识别网络模型;

将待识别语音输入所述语音识别网络模型,并通过rnn-lm语言模型对所述语音识别网络模型的输出进行处理,获得基于所述待识别语音的语音识别结果;

其中,所述rnn-lm语言模型由所述语音训练样本的文本训练获得。

结合本发明第一方面,本发明第一实施方式中,所述lstm-ctc端到端网络包括lstm网络模型、ctc计算模块和字符压缩模块;

所述lstm网络模型包括输入层、隐藏层、输出层;

所述softmax层为所述输出层;

所述lstm网络模型中设置有跳帧学习方法和参数平滑学习方法,用于辅助所述lstm-ctc端到端网络的训练。

结合本发明第一方面,本发明第二实施方式中,通过所述语音训练样本对lstm-ctc端到端网络进行训练,并修改所述lstm-ctc端到端网络的softmax层,以使所述softmax层输出的字符为unicode编码方式,之前包括:

对所述语音训练样本依次进行时域分帧操作和fbank特征提取。

结合本发明第一方面第二实施方式,本发明第三实施方式中,所述时域分帧操作以20ms为一帧;

每帧包括80维的所述fbank特征;

所述fbank特征作为所述lstm-ctc端到端网络每一时刻的输入。

结合本发明第一方面,本发明第四实施方式中,根据所述softmax层输出的字符获得语音识别网络模型,包括:

结合ctc算法和所述softmax层的输出,构造后验概率矩阵并对所述后验概率矩阵进行训练和解码;

通过字符压缩算法对解码结果进行处理,获得所述语音识别网络模型的参数;

根据所述语音识别网络模型的参数构建所述语音识别网络模型。

结合本发明第一方面,本发明第五实施方式中,还包括:

通过所述待识别语音和基于所述待识别语音的语音识别结果对lstm-ctc端到端网络进行训练,调整所述语音识别网络模型。

本发明第二方面提供了一种中英文混合语音识别装置,包括:

语音样本获取模块,用于获取语音训练样本,所述语音训练样本采样于中英文语料库;

所述中英文语料库包括中文语料库、英文语料库、中英文混合语料库;

模型训练模块,用于通过所述语音训练样本对lstm-ctc端到端网络进行训练,并修改所述lstm-ctc端到端网络的softmax层,以使所述softmax层输出的字符为unicode编码方式;

语音识别网络模型获取模块,用于根据所述softmax层输出的字符获得语音识别网络模型;

语音识别模块,用于将待识别语音输入所述语音识别网络模型,并通过rnn-lm语言模型对所述语音识别网络模型的输出进行处理,获得基于所述待识别语音的语音识别结果;

其中,所述rnn-lm语言模型由所述语音训练样本的文本训练获得。

结合本发明第二面,本发明第一实施方式中,所述lstm-ctc端到端网络包括lstm网络模型、ctc计算模块和字符压缩模块;

所述lstm网络模型中设置有跳帧学习方法和参数平滑学习方法,用于辅助所述lstm-ctc端到端网络的训练。

本发明实施例的第三方面提供了一种终端设备,包括存储器、处理器以及存储在上述存储器中并可在上述处理器上运行的计算机程序,上述处理器执行上述计算机程序时实现如上第一方面所提供的方法的步骤。

本发明实施例的第四方面提供了一种计算机可读存储介质,上述计算机可读存储介质存储有计算机程序,上述计算机程序被处理器执行时实现如上第一方面所提供的方法的步骤。

本发明实施例提出一种中英文混合语音识别方法,在中英文语料库中选择语音训练样本,用于训练lstm-ctc端到端网络,并修改lstm-ctc端到端网络的softmax层,以获得能够识别中英文混合语音的语音识别网络模型,其中,通过一个lstm-ctc端到端网络对基于中英文混合语音的语音识别网络模型进行建模,减少了网络的参数量,而在网络结构方面,通过修改lstm-ctc端到端网络的softmax层,使softmax层输出的字符为unicode编码方式,有效减少了softmax层的分类数,有效提高根据lstm-ctc端到端网络建立语音识别网络模型的过程中,ctc的解码效率,提升识别性能。

附图说明

图1为本发明实施例一提供的中英文混合语音识别方法的实现流程示意图;

图2为本发明实施例二提供的中英文混合语音识别装置的组成结构示意图。

本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。

具体实施方式

应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。

在本文中,使用用于表示元件的诸如“模块”、“部件”或“单元”的后缀仅为了有利于本发明的说明,其本身并没有特定的意义。因此,"模块"与"部件"可以混合地使用。

在后续的描述中,发明实施例序号仅仅为了描述,不代表实施例的优劣。

实施例一

如图1所示,本发明实施例提供一种中英文混合语音识别方法,包括但不限于以下步骤:

s101、获取语音训练样本。

在上述步骤s101中,所述语音训练样本采样于中英文语料库。中英文语料库包括中文语料库、英文语料库、中英文混合语料库。

在本发明实施例中,可以将中英文语料库作为一个数据集,其中,语音训练样本作为在数据集中按照比例抽取的训练集或验证集,用于估计模型、确定模型网络结构、确定模型参数。

在实际应用中,还可以在数据集中抽取测试集,以此模拟一般的应用场景下,由训练集或验证集所构建的网络模型的鲁棒性,从而提升模型对噪声的鲁棒性。

在实际应用中,在中英文语料库抽取的验证集、训练集、测试集之间的比例可以为2:9:2。

s102、通过所述语音训练样本对lstm-ctc端到端网络进行训练,并修改所述lstm-ctc端到端网络的softmax层,以使所述softmax层输出的字符为unicode编码方式。

在上述步骤s102中,通过具有中英文语料库中的数据,训练lstm-ctc端到端网络,以实现中英文混合的模型训练,及通过训练后的模型实现中英文混合语音的语音识别任务。

其中,softmax可以理解为归一化,如目前图片分类有一百种,那经过softmax层的输出就是一个一百维的向量。在本发明实施例中,softmax层输出的字符为unicode编码方式的实现,采用utf-8的unicode编码实现方式。

在具体应用中,utf-8就是使用变长字节表示,即使用的字节数可变,上述变化与unicode编号的大小有关,编号小的使用的字节就少,编号大的使用的字节就多。而使用的字节个数从1到4个不等,常用中文字库采用3个字节(一个字节8位)就能解决、英文字母采用一个字节就能解决。因此,使softmax层输出的字符为unicode编码方式,可以有效减少softmax层的分类数,有效提高ctc解码效率。

在本发明实施例中,lstm-ctc端到端网络包括lstm网络模型、ctc计算模块和字符压缩模块。

lstm网络模型包括输入层、隐藏层、输出层;softmax层为输出层。

其中,lstm网络模型是下文的语音识别网络模型的基础,ctc计算模块用于解码,字符压缩模块用于对解码内容进行处理。

在本发明实施例中,lstm网络模型中设置有跳帧学习方法和参数平滑学习方法,用于辅助所述lstm-ctc端到端网络的训练。跳帧学习方法和参数平滑学习方法是一种机器学习方法,通过在lstm网络中加入上述学习方法,能有效改善模型性能。

在一个实施例中,在上述步骤s102之前,还对语音训练样本进行数据处理,因此,还包括以下步骤:

对所述语音训练样本依次进行时域分帧操作和fbank特征提取。

在具体应用中,时域分帧操作是针对语音的分帧操作,在本发明实施例中,将语音训练样本分帧之后,基于每一帧的语音进行fbank特征的提取,所提取出的fbank特征作为lstm-ctc端到端网络每一时刻的输入,从而,使得最终构成的语音识别网络模型,能有效利用连续语音帧之间的相关性,提升识别性能。

在本发明实施例中,所述时域分帧操作以20ms为一帧;

每帧包括80维的所述fbank特征;

所述fbank特征作为所述lstm-ctc端到端网络每一时刻的输入。

s103、根据所述softmax层输出的字符获得语音识别网络模型。

在上述步骤s103中,根据softmax层输出的字符不能直接获得语音识别网络模型,需要在lstm-ctc端到端网络中进行处理,步骤如下:

结合ctc算法和所述softmax层的输出,构造后验概率矩阵并对所述后验概率矩阵进行训练和解码;

通过字符压缩算法对解码结果进行处理,获得所述语音识别网络模型的参数;

根据所述语音识别网络模型的参数构建所述语音识别网络模型。

在本发明实施例中,ctc算法、字符压缩模块是lstm-ctc端到端网络中的一部分,用ctc算法对softmax层输出的字符构建后验概率矩阵,并对矩阵进行训练和解码,其输出的解码结果也为字符,此时通过字符压缩算法对解码结果进行处理,则获得语音识别网络模型的参数。

s104、将待识别语音输入所述语音识别网络模型,并通过rnn-lm语言模型对所述语音识别网络模型的输出进行处理,获得基于所述待识别语音的语音识别结果。

在上述步骤s104中,rnn-lm语言模型是基于rnn(recurrentneuralnetwork,循环神经网络)的语言模型,由语音训练样本的训练获得,如将语音识别网络模型中基于语音训练样本输出的字符作为输入,将语音训练样本的文本内容作为结果,进行训练获得。

在具体应用中,rnn-lm语言模型与基于深度学习的语言模型较传统语言模型相比,能更有效地利用上述的语音训练样本。

在具体应用中,待识别语音输入语音识别网络模型后,语音识别网络模型输出处理后的字符文本,而rnn-lm语言模型根据此字符文本,获得待识别语音的语音识别结果,当待识别语音中包括中文和英文时,上述的语音识别识别结果也包括中文文本和英文文本。

上述的步骤s101至步骤s104可以分为训练过程和应用过程,在训练过程中,为了提升模型对噪声的鲁棒性,训练集,即语音训练样本的获取源,由干净环境下的中文语料库、英文语料库和中英文混合语料库组成,而在一个实施例中,还可以由干净环境下的中文语料库、英文语料库、中英文混合语料库和实际应用场景的中文语料库、英文语料库、中英文混合语料库组成。

因此,上述的中英文混合语音识别方法还包括:

通过所述待识别语音和基于所述待识别语音的语音识别结果对lstm-ctc端到端网络进行训练,调整所述语音识别网络模型。

实施例二

本发明实施例提供一种中英文混合语音识别装置20,包括:

语音样本获取模块21,用于获取语音训练样本,语音训练样本采样于中英文语料库;

中英文语料库包括中文语料库、英文语料库、中英文混合语料库;

模型训练模块22,用于通过语音训练样本对lstm-ctc端到端网络进行训练,并修改lstm-ctc端到端网络的softmax层,以使softmax层输出的字符为unicode编码方式;

语音识别网络模型获取模块23,用于根据softmax层输出的字符获得语音识别网络模型;

语音识别模块24,用于将待识别语音输入语音识别网络模型,并通过rnn-lm语言模型对语音识别网络模型的输出进行处理,获得基于待识别语音的语音识别结果;

其中,rnn-lm语言模型由语音训练样本的文本训练获得。

在本发明实施例中,lstm-ctc端到端网络包括lstm网络模型、ctc计算模块和字符压缩模块;

lstm网络模型中设置有跳帧学习方法和参数平滑学习方法,用于辅助所述lstm-ctc端到端网络的训练。

其中,lstm网络模型是下文的语音识别网络模型的基础,ctc计算模块用于解码,字符压缩模块用于对解码内容进行处理。

其中,跳帧学习方法和参数平滑学习方法是一种机器学习方法,通过在lstm网络中加入上述学习方法,能有效改善模型性能。

本发明实施例还提供一种终端设备包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时,实现如实施例一中所述的中英文混合语音识别方法中的各个步骤。

本发明实施例还提供一种存储介质,所述存储介质为计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时,实现如实施例一中所述的中英文混合语音识别方法中的各个步骤。

以上所述实施例仅用以说明本发明的技术方案,而非对其限制;尽管前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围,均应包含在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1