语音识别的建模方法、装置及设备转让专利

申请号 : CN201910295306.7

文献号 : CN109887497B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 袁胜龙

申请人 : 北京百度网讯科技有限公司

摘要 :

本发明提出一种语音识别的建模方法、装置及设备,其中,方法包括:确定N类标签;根据普通话的语音数据训练和N类标签构建语音识别模型;根据语音识别模型获取P种方言的语音数据的识别文本;根据识别文本和标注的参考文本确定错误率,对于P种方言中每一种方言,根据每个字的第一错误率和普通话中每个字的第二错误率确定每个字的声学特性差异值,根据差异值大于预设阈值的字对应的M类标签新生成M类目标标签;根据普通话和P种方言的语音数据训练声学模型,声学模型的输出为N类标签和P种方言中每一种方言对应的M类目标标签。由此,实现了普通话和方言混合建模,在保证识别准确性的同时,使同一个模型既支持普通话,又能支持多种方言。

权利要求 :

1.一种语音识别的建模方法,其特征在于,包括:

根据预先训练的对齐模型分别对普通话的第一语音数据和P种方言的第一语音数据进行处理,获取每帧第一语音数据对应的标签,统计输出的标签并对相同类别的标签进行去重,确定N类标签,其中,N为正整数,P为正整数;

根据普通话语音样本数据训练神经网络,并根据所述神经网络构建语音识别模型,其中,所述神经网络的输出为所述N类标签;

将所述P种方言的第二语音数据分别输入到所述语音识别模型中进行处理,获取方言的第二语音数据的识别文本;

根据所述识别文本和标注的参考文本,对于所述P种方言中每一种方言确定每个字的第一错误率,根据所述每个字的第一错误率和普通话中每个字的第二错误率确定每个字的声学特性差异值,根据所述差异值大于预设阈值的字对应的M类标签新生成M类目标标签,其中,M为大于等于零的整数,所述第二错误率是根据所述语音识别模型对普通话的第二语音数据的处理结果得到的;

根据普通话的第三语音数据和所述P种方言的第三语音数据训练声学模型,其中,所述声学模型的输出为所述P种方言中每一种方言对应的所述M类目标标签、以及所述N类标签。

2.如权利要求1所述的方法,其特征在于,所述根据所述识别文本和标注的参考文本,对于所述P种方言中每一种方言确定每个字的第一错误率包括:基于最小编辑距离对所述识别文本和所述参考文本进行字符匹配,确定每个字正确的个数;

根据所述每个字正确的个数和所述每个字出现的总个数,确定所述每个字的第一错误率。

3.如权利要求2所述的方法,其特征在于,所述根据所述每个字的第一错误率和普通话中每个字的第二错误率确定每个字的声学特性差异值包括:根据如下公式确定所述差异值

其中,Wf为方言中目标文字的错误率,Wp为普通话中所述目标文字的错误率,Wdiff为所述差异值。

4.如权利要求1所述的方法,其特征在于,所述根据普通话的第三语音数据和所述P种方言的第三语音数据训练声学模型包括:根据所述普通话的第三语音数据和与所述普通话的第三语音数据对应的第一标注标签,以及所述P种方言的第三语音数据和与所述P种方言的第三语音数据对应的第二标注标签,生成训练样本,其中,对于所述P种方言中每一种方言的第三语音数据,将原先标注的所述M类标签替换为对应的M类目标标签;

根据预设的目标函数和所述训练样本训练预设模型,生成所述声学模型。

5.如权利要求1所述的方法,其特征在于,在根据预先训练的对齐模型分别对普通话的第一语音数据和P种方言的第一语音数据进行处理之前,还包括:获取普通话的第四语音数据和对应的文本信息;

提取每帧第四语音数据的MFCC特征,根据所述MFCC特征和所述文本信息,基于最大似然估计训练混合高斯模型,生成所述对齐模型。

6.一种语音识别的建模装置,其特征在于,包括:

对齐模块,用于根据预先训练的对齐模型分别对普通话的第一语音数据和P种方言的第一语音数据进行处理,获取每帧第一语音数据对应的标签,统计输出的标签并对相同类别的标签进行去重,确定N类标签,其中,N为正整数,P为正整数;

第一训练模块,用于根据普通话语音样本数据训练神经网络,并根据所述神经网络构建语音识别模型,其中,所述神经网络的输出为所述N类标签;

处理模块,用于将所述P种方言的第二语音数据分别输入到所述语音识别模型中进行处理,获取方言的第二语音数据的识别文本;

生成模块,用于根据所述识别文本和标注的参考文本,对于所述P种方言中每一种方言确定每个字的第一错误率,根据所述每个字的第一错误率和普通话中每个字的第二错误率确定每个字的声学特性差异值,根据所述差异值大于预设阈值的字对应的M类标签新生成M类目标标签,其中,M为大于等于零的整数,所述第二错误率是根据所述语音识别模型对普通话的第二语音数据的处理结果得到的;

第二训练模块,用于根据普通话的第三语音数据和所述P种方言的第三语音数据训练声学模型,其中,所述声学模型的输出为所述P种方言中每一种方言对应的所述M类目标标签、以及所述N类标签。

7.如权利要求6所述的装置,其特征在于,所述生成模块具体用于:基于最小编辑距离对所述识别文本和所述参考文本进行字符匹配,确定每个字正确的个数;

根据所述每个字正确的个数和所述每个字出现的总个数,确定所述每个字的第一错误率。

8.如权利要求7所述的装置,其特征在于,所述生成模块具体用于:根据如下公式确定所述差异值

其中,Wf为方言中目标文字的错误率,Wp为普通话中所述目标文字的错误率,Wdiff为所述差异值。

9.如权利要求6所述的装置,其特征在于,所述第二训练模块具体用于:根据所述普通话的第三语音数据和与所述普通话的第三语音数据对应的第一标注标签,以及所述P种方言的第三语音数据和与所述P种方言的第三语音数据对应的第二标注标签,生成训练样本,其中,对于所述P种方言中每一种方言的第三语音数据,将原先标注的所述M类标签替换为对应的M类目标标签;

根据预设的目标函数和所述训练样本训练预设模型,生成所述声学模型。

10.如权利要求6所述的装置,其特征在于,还包括:

第三训练模块,用于获取普通话的第四语音数据和对应的文本信息;

提取每帧第四语音数据的MFCC特征,根据所述MFCC特征和所述文本信息,基于最大似然估计训练混合高斯模型,生成所述对齐模型。

11.一种计算机设备,其特征在于,包括处理器和存储器;

其中,所述处理器通过读取所述存储器中存储的可执行程序代码来运行与所述可执行程序代码对应的程序,以用于实现如权利要求1-5中任一项所述的语音识别的建模方法。

12.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-5中任一项所述的语音识别的建模方法。

说明书 :

语音识别的建模方法、装置及设备

技术领域

[0001] 本发明涉及语音识别技术领域,尤其涉及一种语音识别的建模方法、装置及设备。

背景技术

[0002] 随着语音识别技术的发展,语音识别的性能已满足实用,例如手机上的各种输入法都带有语音交互功能。而在实际应用中,除了普通话场景的语音识别外,还存在方言场景的语音识别。目前已有许多支持方言语音识别的语音交互产品,比如手机输入法上语音识别可选项,用户可以根据需要选择对应的方言,再比如一些针对特定方言定制的智能电视、智能冰箱等。
[0003] 相关技术中,通常采用普通话识别模型对普通话进行语音识别,采用相应的方言识别模型对方言进行语音识别,而在用户在切换语言时,需要来回选择相应的语音识别模型,操作繁琐。并且,随着要支持的方言越来越多,工作量与维护成本较高。

发明内容

[0004] 本发明旨在至少在一定程度上解决相关技术中的技术问题之一。
[0005] 为此,本发明的第一个目的在于提出一种语音识别的建模方法,实现了普通话和方言混合建模,在保证识别准确性的同时,使得同一个模型既支持普通话,又能支持多种方言,无需在多个模型之间切换,简化了用户操作,并且降低了维护成本。
[0006] 本发明的第二个目的在于提出一种语音识别的建模装置。
[0007] 本发明的第三个目的在于提出一种计算机设备。
[0008] 本发明的第四个目的在于提出一种计算机可读存储介质。
[0009] 本发明第一方面实施例提出了一种语音识别的建模方法,包括:
[0010] 根据预先训练的对齐模型分别对普通话的第一语音数据和P种方言的第一语音数据进行处理,获取每帧第一语音数据对应的标签,统计输出的标签并对相同类别的标签进行去重,确定N类标签,其中,N为正整数,P为正整数;
[0011] 根据普通话语音样本数据训练神经网络,并根据所述神经网络构建语音识别模型,其中,所述神经网络的输出为所述N类标签;
[0012] 将所述P种方言的第二语音数据分别输入到所述语音识别模型中进行处理,获取方言的第二语音数据的识别文本;
[0013] 根据所述识别文本和标注的参考文本,对于所述P种方言中每一种方言确定每个字的第一错误率,根据所述每个字的第一错误率和普通话中每个字的第二错误率确定每个字的声学特性差异值,根据所述差异值大于预设阈值的字对应的M类标签新生成M类目标标签,其中,M为大于等于零的整数,所述第二错误率是根据所述语音识别模型对普通话的第二语音数据的处理结果得到的;
[0014] 根据普通话的第三语音数据和所述P种方言的第三语音数据训练声学模型,其中,所述声学模型的输出为所述N类标签和所述P种方言中每一种方言对应的所述M类目标标签。
[0015] 本发明第二方面实施例提出了一种语音识别的建模装置,包括:
[0016] 对齐模块,用于根据预先训练的对齐模型分别对普通话的第一语音数据和P种方言的第一语音数据进行处理,获取每帧第一语音数据对应的标签,统计输出的标签并对相同类别的标签进行去重,确定N类标签,其中,N为正整数,P为正整数;
[0017] 第一训练模块,用于根据普通话语音样本数据训练神经网络,并根据所述神经网络构建语音识别模型,其中,所述神经网络的输出为所述N类标签;
[0018] 处理模块,用于将所述P种方言的第二语音数据分别输入到所述语音识别模型中进行处理,获取方言的第二语音数据的识别文本;
[0019] 生成模块,用于根据所述识别文本和标注的参考文本,对于所述P种方言中每一种方言确定每个字的第一错误率,根据所述每个字的第一错误率和普通话中每个字的第二错误率确定每个字的声学特性差异值,根据所述差异值大于预设阈值的字对应的M类标签新生成M类目标标签,其中,M为大于等于零的整数,所述第二错误率是根据所述语音识别模型对普通话的第二语音数据的处理结果得到的;
[0020] 第二训练模块,用于根据普通话的第三语音数据和所述P种方言的第三语音数据训练声学模型,其中,所述声学模型的输出为所述N类标签和所述P种方言中每一种方言对应的所述M类目标标签。
[0021] 本发明第三方面实施例提出了一种计算机设备,包括处理器和存储器;其中,所述处理器通过读取所述存储器中存储的可执行程序代码来运行与所述可执行程序代码对应的程序,以用于实现如第一方面实施例所述的语音识别的建模方法。
[0022] 本发明第四方面实施例提出了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如第一方面实施例所述的语音识别的建模方法。
[0023] 本发明实施例提供的技术方案可以包括以下有益效果:
[0024] 根据预先训练的对齐模型分别对普通话的第一语音数据和P种方言的第一语音数据进行处理,获取每帧第一语音数据对应的标签,统计输出的标签并对相同类别的标签进行去重,确定N类标签。进而,根据普通话的第二语音数据训练输出为N类标签的神经网络,并根据神经网络构建语音识别模型。进一步将P种方言的第二语音数据分别输入到语音识别模型中进行处理,获取方言的第二语音数据的识别文本。进一步根据识别文本和标注的参考文本,对于P种方言中每一种方言确定每个字的第一错误率,根据每个字的第一错误率和普通话中每个字的第二错误率确定每个字的声学特性差异值,根据差异值大于预设阈值的字对应的M类标签新生成M类目标标签。进一步根据普通话的第三语音数据和P种方言的第三语音数据训练声学模型,其中,声学模型的输出为N类标签和P种方言中每一种方言对应的M类目标标签。由此,对于每种方言,基于普通话训练的语音识别模型对方言和普通话识别结果中各文字的错误率确定文字的声学特性差异,并根据差异生成相应的目标标签,并根据已有标签与新生成的目标标签生成声学模型,使得该声学模型可以识别普通话语音与方言语音,实现了基于文字识别的错误率确定建模单元,从而实现了普通话和方言混合建模,在保证识别准确性的同时,使得同一个模型既支持普通话,又能支持多种方言,无需在多个模型之间切换,简化了用户操作,并且降低了维护成本。
[0025] 本发明附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。

附图说明

[0026] 图1为本发明实施例所提供的一种语音识别的建模方法的流程示意图;
[0027] 图2为本发明实施例所提供的一种确定第一错误率的流程示意图;
[0028] 图3为本发明实施例所提供的一种声学模型的示意图;
[0029] 图4为本发明实施例所提供的一种语音识别的建模装置的结构示意图;
[0030] 图5为本发明实施例所提供的另一种语音识别的建模装置的结构示意图;
[0031] 图6示出了适于用来实现本发明实施例的示例性计算机设备的框图。

具体实施方式

[0032] 下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本发明,而不能理解为对本发明的限制。
[0033] 下面参考附图描述本发明实施例的语音识别的建模方法、装置及设备。
[0034] 图1为本发明实施例所提供的一种语音识别的建模方法的流程示意图,如图1所示,该方法包括:
[0035] 步骤101,根据预先训练的对齐模型分别对普通话的第一语音数据和P种方言的第一语音数据进行处理,获取每帧第一语音数据对应的标签,统计输出的标签并对相同类别的标签进行去重,确定N类标签,其中,N为正整数,P为正整数。
[0036] 相关技术中,在针对普通话和方言进行语音识别时,需要切换至相应的语音识别模型进行识别,切换操作繁琐,并且当方言数量增加时需要增加相应的语音识别模型,成本较高。因此,本发明实施例提出一种语音识别的建模方法,能够对普通话和方言混合建模,从而实现一个模型既可以识别普通话,又可以识别方言。
[0037] 本发明实施例中,在针对普通话和方言混合建模时,可以先根据预先训练的对齐模型对普通话和方言的语音数据做帧级别的对齐,确定N类标签,以保证普通话与方言的建模单元一致。
[0038] 其中,标签为每帧语音数据对应的内容,比如根据相关语音识别模型中的声学模型确定每帧语音数据对应的标签,根据语音识别模型中的语言模型和标签获取识别文本。
[0039] 作为一种示例,可以根据普通话数据预先训练对齐模型,该对齐模型输入为每帧语音数据的特征,输出为每帧语音数据对应的标签。进而,将收集的普通话语音数据和方言A、方言B的语音数据输入到该对齐模型中,输出每帧语音数据对应的标签,进一步对输出的标签进行统计和去重,确定N类标签作为后续步骤中神经网络的输出层节点,比如N为2000,对齐后可以确定2000个不同的标签。由此,实现了将方言与普通话进行帧级别的对齐,保证方言和普通话的建模单元一致。
[0040] 在本发明的一个实施例中,对齐模型可以基于混合高斯模型实现。可以预先收集普通话的语音数据以及对应标注的文本信息,其中该文本信息中已知每个字对应的一个或多个标签。进而,提取每帧语音数据的梅尔频率倒谱系数(简称MFCC)特征,根据MFCC特征和文本信息,基于最大似然估计训练混合高斯模型的参数,生成对齐模型,使得该对齐模型的输入为每帧语音数据的MFCC特征,输出为每帧语音数据对应的标签。
[0041] 步骤102,根据普通话语音样本数据训练神经网络,并根据神经网络构建语音识别模型,其中,神经网络的输出为N类标签。
[0042] 本发明实施例中,在确定了N类标签后,可以收集普通话的语音数据训练神经网络,使该神经网络的输出层节点数量为N,分别对应N类标签。其中,神经网络可以为DNN-HMM(深度神经网络-隐马尔科夫模型)。
[0043] 作为一种可能的实现方式,可以收集普通话的语音数据和对应标注的标签,并对普通话语音数据提取滤波器组系数(Filter Bank)特征,基于CTC(Connectionist Temporal Classification)的训练准则训练神经网络,其中,CTC的训练准则可以如下公式所示,
[0044]
[0045] 其中,yk为某一时刻参考的标签k的得分,∑s∈label(z,k)α(s)β(s)表示某一时刻CTC路径中属于标签k的得分(通过CTC的前向得分和后向得分的乘积得到),P(zx)为某一时刻CTC所经过路径的总得分。直至神经网络收敛,该神经网络的输出层为N类标签,可以对普通话的语音数据进行识别。将普通话语音数据输入该神经网络,可以获取每帧语音数据对应的标签。
[0046] 本实施例中,可以根据训练的神经网络和相关的语言模型、字典、解码器等资源构建语音识别模型,使得语音识别模型输入为语音数据,输出为对应的识别文本。
[0047] 步骤103,将P种方言的第二语音数据分别输入到语音识别模型中进行处理,获取方言的第二语音数据的识别文本。
[0048] 本实施例中,可以收集方言的语音数据,并将方言的语音数据输入到从语音数据到识别文本的语音识别模型中,获取与该方言的语音数据对应的识别文本。例如,将方言的语音数据输入到神经网络中,获取语音数据的声韵母信息。进而,根据字典和声韵母信息确定文字,并结合语言模型排除多发音字,从而确定最终的识别文本。
[0049] 步骤104,根据识别文本和标注的参考文本,对于P种方言中每一种方言确定每个字的第一错误率,根据每个字的第一错误率和普通话中每个字的第二错误率确定每个字的声学特性差异值,根据差异值大于预设阈值的字对应的M类标签新生成M类目标标签,其中,M为大于等于零的整数,第二错误率是根据语音识别模型对普通话的第二语音数据的处理结果得到的。
[0050] 本实施例中,可以在收集上述步骤中方言的第二语音数据时,获取该语音数据对应标注的参考文本。
[0051] 可以理解,由于语音识别模型是根据普通话语音数据训练得到的,因此将方言的语音数据输入到语音识别模型中进行处理,得到的识别文本可能并不准确,因此可以进一步将识别文本与标注的参考文本进行匹配,确定每个字的错误率,并根据错误率确定各字在方言和普通话的差异,根据差异较大的文字所对应的标签,新生成目标标签作为方言单独使用的标签。
[0052] 下面结合第一错误率的处理过程进行说明。
[0053] 图2为本发明实施例所提供的一种确定第一错误率的流程示意图,如图2所示,包括:
[0054] 步骤201,基于最小编辑距离对识别文本和参考文本进行字符匹配,确定每个字正确的个数。
[0055] 本实施例中,可以基于最小编辑距离对识别文本和参考文本进行字符匹配,将识别文本与参考文本进行字符对准,比如识别文本“飞机动”与参考文本“非机动”对准。可选地,根据匹配后的识别文本与参考文本,比较每个位置的文字是否一致,若一致则识别正确,若不一致则识别错误,并通过统计确定每个字正确的个数。
[0056] 例如,最小编辑距离公式如下
[0057]
[0058] 其中,d[i-1,j]+1代表文本中插入一个字,d[i,j-1]+1代表删除一个字,当xi=yj时,不需要代价,与上一步d[i-1,j-1]代价相同,否则d[i-1,j-1]+1,d[i,j]是以上三者中最小的一项。
[0059] 步骤202,根据每个字正确的个数和所述每个字出现的总个数,确定每个字的第一错误率。
[0060] 本实施例中,可以统计每个字识别正确的个数,以及每个字在参考文本中出现的总个数,比如根据1-(某个字的正确个数/该字的总个数)*100%确定每个字的识别错误的比例,作为该字的第一错误率。
[0061] 在本发明的一个实施例中,还可以收集普通话的语音数据,并将普通话的语音数据输入到上述语音识别模型中进行处理,确定识别文本,并根据识别文本和标注的参考文本确定每个字在普通话中的第二错误率,上述确定第一错误率的实现方式同样适用于第二错误率,此处不再赘述。
[0062] 作为一种示例,以方言A为例,对于方言A的语音数据,将该语音数据的识别文本与标注的参考文本进行匹配,将识别文本与参考文本按照最相似的方式进行字符对准,并比较各文字是否一致,若一致则代表识别正确,若不一致则代表识别错误。进而统计各个文字识别错误的个数,并对参考文本中每个文字的总数归一化,得到每个文字的第一错误率。比如,对于文字a,标注的参考文本中包括10个,对应位置的识别文本中有5个为文字a,有5个为其他文字,则确定文字a的第一错误率为50%。
[0063] 本示例中,对于每一种方言,在确定每个字的第一错误率之后,可以根据每个字的第一错误率与普通话中每个字的第二错误率,确定各个文字在普通话和方言中的声学特性差异值,可选地,可以基于相对差异百分比的方式根据如下公式确定差异值
[0064]
[0065] 其中,Wf为方言中目标文字的第一错误率,Wp为普通话中该目标文字的第二错误率,Wdiff为差异值。进而,将差异值与预设阈值进行比较,获取差异值大于预设阈值的文字对应的标签,其中文字与标签的对应关系可以预先得到,并根据该标签新生成目标标签,并将其他的标签作为普通话与该种方言共用的标签,也就是说,对于每一种方言可以从N类标签中确定出M类标签,并根据该M类标签新生成对应的M类目标标签,作为该种方言独有的标签。其中,预设阈值可以根据大量实验数据确定,也可以根据需要自行设置,比如可以为80%,此处不作限制。
[0066] 需要说明的是,本实施例中当方言种类为多种的情况,针对每一种方言,分别确定各个文字的声学特性差异值并根据差异值确定目标标签,比如对于方言A确定了M1个目标标签,对于方言B确定了M2个目标标签,其具体实现方式可以参照上述示例,此处不再赘述。
[0067] 在本发明的一个实施例中,对于每一种方言,在根据M类标签新生成M类目标标签之后,还可以根据M类目标标签更新解码字典,在解码字典中为目标标签增加相应的发音。其中,解码字典中包括从单词到音素的映射,用于连接声学模型和语言模型。
[0068] 步骤105,根据普通话的第三语音数据和P种方言的第三语音数据训练声学模型,其中,声学模型的输出为N类标签和P种方言中每一种方言对应的M类目标标签。
[0069] 本发明实施例中,在对于P种方言中每一种方言确定M类目标标签之后,可以根据普通话的语音数据与方言的语音数据共同训练一个声学模型,其中,声学模型的输出为N类标签和P种方言中每一种方言对应的M类目标标签。由此,通过该声学模型既可以识别普通话,也可以识别P种方言,并且保证了识别的准确性,从而根据该声学模型及相关语言模型、解码字典构建语音识别模型,可以通过一个语音识别模型对普通话和多种方言进行语音识别。其中,声学模型可以为DNN-HMM模型。
[0070] 作为一种示例,参照图3,以普通话和方言A、方言B为例,N为2000,预设阈值为80%。对于方言A,在2000个标签中,差异值大于80%的文字对应的标签数目为500,将该500个建模单元单独列出并作为额外的建模单元;对于方言B,在2000个标签中,差异值大于
80%的文字对应的标签数目为800,将该800个建模单元单独列出并作为额外的建模单元。
进而,根据普通话语音数据和方言A、方言B的语音数据训练声学模型,使得声学模型输出层节点个数为3300,其中,对于方言A,2000个节点中有1500个为普通话和方言A共用,500个为普通话单独使用,额外的500个节点为方言A单独使用。对于方言B,节点中有1200个为普通话和方言B共用,800个为普通话单独使用,额外的800个节点为方言B单独使用。
[0071] 在本发明的一个实施例中,可以收集普通话的语音数据和P种方言的语音数据,并对普通话的语音数据标注相应的标签作为第一标注标签,以及对P种方言的语音数据标注相应的标签作为第二标注标签。进而,根据上述收集的语音数据与对应标注的标签生成训练样本集。其中,对于P种方言中每一种方言的语音数据,将原先标注的M类标签替换为对应的M类目标标签,比如,对于方言A,文字a差异值大于80%,对应标签1,则将原先应当标注的标签1替换为标注目标标签1。进而,根据预设的目标函数和训练样本训练预设模型的处理参数,生成声学模型,使得声学模型的输入为语音数据,输出为每帧语音数据对应的标签或目标标签。其中,预设模型可以为DNN-HMM等,可以基于CTC训练准则训练声学模型,其实现方式可以参照上述步骤中的神经网络,此处不再赘述。
[0072] 需要说明的是,本实施例不同步骤中普通话的语音数据可以相同,也可以不同,以及方言的语音数据可以相同,也可以不同,具体可以根据需要进行选择,此处不作限制。
[0073] 本发明实施例的语音识别的建模方法,根据预先训练的对齐模型分别对普通话的第一语音数据和P种方言的第一语音数据进行处理,获取每帧第一语音数据对应的标签,统计输出的标签并对相同类别的标签进行去重,确定N类标签。进而,根据普通话的第二语音数据训练输出为N类标签的神经网络,并根据神经网络构建语音识别模型。进一步将P种方言的第二语音数据分别输入到语音识别模型中进行处理,获取方言的第二语音数据的识别文本。进一步根据识别文本和标注的参考文本,对于P种方言中每一种方言确定每个字的第一错误率,根据每个字的第一错误率和普通话中每个字的第二错误率确定每个字的声学特性差异值,根据差异值大于预设阈值的字对应的M类标签新生成M类目标标签。进一步根据普通话的第三语音数据和P种方言的第三语音数据训练声学模型,其中,声学模型的输出为N类标签和P种方言中每一种方言对应的M类目标标签。由此,对于每种方言,基于普通话训练的语音识别模型对方言和普通话识别结果中各文字的错误率确定文字的声学特性差异,并根据差异生成相应的目标标签,并根据已有标签与新生成的目标标签生成声学模型,使得该声学模型可以识别普通话语音与方言语音,实现了基于文字识别的错误率确定建模单元,从而实现了普通话和方言混合建模,在保证识别准确性的同时,使得同一个模型既支持普通话,又能支持多种方言,无需在多个模型之间切换,简化了用户操作,并且降低了维护成本。
[0074] 为了实现上述实施例,本发明还提出一种语音识别的建模装置。
[0075] 图4为本发明实施例所提供的一种语音识别的建模装置的结构示意图,如图4所示,该装置包括:对齐模块100,第一训练模块200,处理模块300,生成模块400,第二训练模块500。
[0076] 其中,对齐模块100,用于根据预先训练的对齐模型分别对普通话的第一语音数据和P种方言的第一语音数据进行处理,获取每帧第一语音数据对应的标签,统计输出的标签并对相同类别的标签进行去重,确定N类标签,其中,N为正整数,P为正整数。
[0077] 第一训练模块200,用于根据普通话语音样本数据训练神经网络,并根据神经网络构建语音识别模型,其中,神经网络的输出为N类标签。
[0078] 处理模块300,用于将P种方言的第二语音数据分别输入到语音识别模型中进行处理,获取方言的第二语音数据的识别文本。
[0079] 生成模块400,用于根据识别文本和标注的参考文本,对于P种方言中每一种方言确定每个字的第一错误率,根据每个字的第一错误率和普通话中每个字的第二错误率确定每个字的声学特性差异值,根据差异值大于预设阈值的字对应的M类标签新生成M类目标标签,其中,M为大于等于零的整数,第二错误率是根据语音识别模型对普通话的第二语音数据的处理结果得到的。
[0080] 第二训练模块500,用于根据普通话的第三语音数据和P种方言的第三语音数据训练声学模型,其中,声学模型的输出为N类标签和P种方言中每一种方言对应的M类目标标签。
[0081] 在图4的基础上,图5所示的装置还包括:第三训练模块600。
[0082] 其中,第三训练模块600,用于获取普通话的第四语音数据和对应的文本信息;提取每帧第四语音数据的MFCC特征,根据MFCC特征和文本信息,基于最大似然估计训练混合高斯模型的参数,生成对齐模型。
[0083] 可选地,生成模块400具体用于:基于最小编辑距离对识别文本和所述参考文本进行字符匹配,确定每个字正确的个数;根据每个字正确的个数和每个字出现的总个数,确定每个字的第一错误率。
[0084] 可选地,生成模块400具体用于:根据如下公式确定所述差异值
[0085]
[0086] 其中,Wf为方言中目标文字的错误率,Wp为普通话中目标文字的错误率,Wdiff为差异值。
[0087] 可选地,第二训练模块500具体用于:根据普通话的第三语音数据和与普通话的第三语音数据对应的第一标注标签,以及P种方言的第三语音数据和与P种方言的第三语音数据对应的第二标注标签,生成训练样本,其中,对于P种方言中每一种方言的第三语音数据,将原先标注的M类标签替换为对应的M类目标标签;根据预设的目标函数和训练样本训练预设模型的处理参数,生成声学模型。
[0088] 需要说明的是,前述实施例对语音识别的建模方法的解释说明同样适用于本实施例的装置,此处不再赘述。
[0089] 本发明实施例的语音识别的建模装置,能够对于每种方言,基于普通话训练的语音识别模型对方言和普通话识别结果中各文字的错误率确定文字的声学特性差异,并根据差异生成相应的目标标签,并根据已有标签与新生成的目标标签生成声学模型,使得该声学模型可以识别普通话语音与方言语音,实现了基于文字识别的错误率确定建模单元,从而实现了普通话和方言混合建模,在保证识别准确性的同时,使得同一个模型既支持普通话,又能支持多种方言,无需在多个模型之间切换,简化了用户操作,并且降低了维护成本。
[0090] 为了实现上述实施例,本发明还提出一种计算机设备,包括处理器和存储器;其中,处理器通过读取存储器中存储的可执行程序代码来运行与可执行程序代码对应的程序,以用于实现如前述任一实施例所述的语音识别的建模方法。
[0091] 为了实现上述实施例,本发明还提出一种计算机程序产品,当计算机程序产品中的指令被处理器执行时实现如前述任一实施例所述的语音识别的建模方法。
[0092] 为了实现上述实施例,本发明还提出一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如前述任一实施例所述的语音识别的建模方法。
[0093] 图6示出了适于用来实现本发明实施例的示例性计算机设备的框图。图6显示的计算机设备12仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
[0094] 如图6所示,计算机设备12以通用计算设备的形式表现。计算机设备12的组件可以包括但不限于:一个或者多个处理器或者处理单元16,系统存储器28,连接不同系统组件(包括系统存储器28和处理单元16)的总线18。
[0095] 总线18表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,外围总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(Industry  Standard Architecture;以下简称:ISA)总线,微通道体系结构(Micro Channel Architecture;以下简称:MAC)总线,增强型ISA总线、视频电子标准协会(Video Electronics Standards Association;以下简称:VESA)局域总线以及外围组件互连(Peripheral Component Interconnection;以下简称:PCI)总线。
[0096] 计算机设备12典型地包括多种计算机系统可读介质。这些介质可以是任何能够被计算机设备12访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。
[0097] 存储器28可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(Random Access Memory;以下简称:RAM)30和/或高速缓存存储器32。计算机设备12可以进一步包括其它可移动/不可移动的、易失性/非易失性计算机系统存储介质。仅作为举例,存储系统34可以用于读写不可移动的、非易失性磁介质(图6未显示,通常称为“硬盘驱动器”)。尽管图6中未示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如:光盘只读存储器(Compact Disc Read Only Memory;以下简称:CD-ROM)、数字多功能只读光盘(Digital Video Disc Read Only Memory;以下简称:DVD-ROM)或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线18相连。存储器28可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本申请各实施例的功能。
[0098] 具有一组(至少一个)程序模块42的程序/实用工具40,可以存储在例如存储器28中,这样的程序模块42包括但不限于操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块42通常执行本申请所描述的实施例中的功能和/或方法。
[0099] 计算机设备12也可以与一个或多个外部设备14(例如键盘、指向设备、显示器24等)通信,还可与一个或者多个使得用户能与该计算机系统/服务器12交互的设备通信,和/或与使得该计算机系统/服务器12能与一个或多个其它计算设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口22进行。并且,计算机设备12还可以通过网络适配器20与一个或者多个网络(例如局域网(Local Area Network;以下简称:LAN),广域网(Wide Area Network;以下简称:WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器20通过总线18与计算机设备12的其它模块通信。应当明白,尽管图中未示出,可以结合计算机设备12使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
[0100] 处理单元16通过运行存储在系统存储器28中的程序,从而执行各种功能应用以及数据处理,例如实现前述实施例中提及的方法。
[0101] 在本发明的描述中,需要理解的是,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本发明的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
[0102] 在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
[0103] 尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。