掌桥专利:专业的专利平台
掌桥专利
首页

重打分模型的训练和语音识别方法、装置、系统及设备

文献发布时间:2023-06-19 16:11:11



技术领域

本申请涉及语音识别技术,尤其涉及一种重打分模型的训练和语音识别方法、装置、系统及设备。

背景技术

自动语音识别(Automatic Speech Recognition,ASR)是一种将口语转换为文本的过程,其能够识别各种各样的音频输入,并根据该音频输入做出准确的文本输出。该技术广泛应用于即时通讯应用程序、搜索引擎、车载系统和家庭自动化等场景中。

语音识别技术能够针对输入的待识别语音进行语音识别,得到待识别语音对应的多个候选文本以及每个候选文本的得分,并根据每个候选文本的得分从多个候选文本中筛选出匹配度最高的候选文本作为语音识别结果。

相关技术中,候选文本的得分决定了其与语音识别结果的匹配度,因此,提高候选文本的打分准确度,是提高语音识别精度的关键。

发明内容

本申请提供一种重打分模型的训练和语音识别方法、装置、系统及设备,用以解决重打分模型的语音识别准确度较低的问题。

第一方面,本申请提供一种重打分模型的训练方法,包括:获取第一语音样本和第二语音样本;所述第一语音样本包括语音样本及语音样本对应的标注文本,所述第二语音样本包括语音样本;确定所述第二语音样本中语言样本对应的多个候选文本以及候选文本对应的声学得分和语言得分;所述声学得分用于表征语音样本对应的可能性词的概率,所述语言得分用于表征候选文本符合自然语言的概率;对候选文本进行重打分,得到候选文本对应的重打分;根据所述第一语音样本、所述第二语音样本、所述第二语音样本中语音样本对应的多个候选文本以及候选文本对应的声学得分、语言得分和重打分对Transformer网络进行训练,得到重打分模型。

在一些可选的实施例中,所述对候选文本进行重打分,得到候选文本对应的重打分,包括:将候选文本输入预重打分模型,得到候选文本对应的重打分;所述预重打分模型是根据所述第一语音样本中的语音样本及语音样本对应的标注文本对循环神经网络进行训练得到的模型;

在一些可选的实施例中,所述根据所述第一语音样本、所述第二语音样本、所述第二语音样本中语音样本对应的多个候选文本以及候选文本对应的声学得分、语言得分和重打分对Transformer网络进行训练,得到重打分模型,包括:根据候选文本对应的声学得分、语言得分和重打分,确定候选文本对应的目标得分;根据所述第一语音样本、所述第二语音样本、所述第二语音样本中语音样本对应的多个候选文本以及候选文本对应的目标得分对Transformer网络进行训练,得到重打分模型。

在一些可选的实施例中,所述根据候选文本对应的声学得分、语言得分和重打分,确定候选文本对应的目标得分,包括:根据候选文本对应的声学得分、语言得分和重打分的加权和,得到候选文本对应的目标得分。

在一些可选的实施例中,所述根据所述第一语音样本、所述第二语音样本、所述第二语音样本中语音样本对应的多个候选文本以及候选文本对应的目标得分对Transformer网络进行训练,得到重打分模型,包括:根据所述第二语音样本、所述第二语音样本中语音样本对应的多个候选文本以及候选文本对应的目标得分对Transformer网络进行训练,得到预训练重打分模型;根据所述第一语音样本中语音样本及语音样本对应的标注文本对所述预训练重打分模型进行训练,得到所述重打分模型。

在一些可选的实施例中,所述根据所述第二语音样本、所述第二语音样本中语音样本对应的多个候选文本以及候选文本对应的目标得分对Transformer网络进行训练,得到预训练重打分模型,包括:对所述第二语音样本中语音样本进行声学特征的提取,得到所述第二语音样本中语音样本对应的声学特征;对语音样本对应的多个候选文本进行文本特征的提取,得到语音样本对应的多个文本特征,其中,每个文本特征对应一个候选文本;根据所述第二语音样本中语音样本对应的声学特征和多个文本特征对Transformer网络进行训练,得到所述第二语音样本中语音样本对应的声学特征与多个文本特征之间的相关性得分;根据所述第二语音样本中语音样本对应的声学特征与多个文本特征之间的相关性得分,对多个文本特征进行排序,得到文本特征排序;根据多个候选文本的排序与多个文本特征的排序之间的差异,调整所述Transformer网络的网络参数,并根据调整后的网络参数继续进行训练,直至训练结束,得到所述预训练重打分模型。

在一些可选的实施例中,所述根据所述第一语音样本中语音样本及对应的标注文本对所述预训练重打分模型进行训练,得到所述重打分模型,包括:将所述第一语音样本中语音样本输入所述预训练重打分模型,得到所述第一语音样本中语音样本对应的预测文本;根据语音样本对应的标注文本和预测文本之间的差异,调整所述预训练重打分模型的网络参数,并根据调整后的网络参数继续进行训练,直至训练结束,得到所述重打分模型。

在一些可选的实施例中,所述确定所述第二语音样本中语音样本对应的多个候选文本以及候选文本对应的声学得分和语言得分,包括:将所述第二语音样本中语音样本输入语音识别模型,得到所述第二语音样本中语音样本对应的多个候选文本以及候选文本对应的声学得分;所述语音识别模型是根据所述第一语音样本中的语音样本及其对应的标注文本训练得到的模型;针对语音样本对应的多个候选文本,通过语言模型对所述多个候选文本进行打分,得到多个候选文本对应的语言得分;所述语言模型是根据文本数据进行训练得到的模型。

第二方面,本申请提供一种语音识别方法,包括:获取待识别的语音数据;将所述待识别的语音数据输入语音识别系统,得到语音识别结果;其中,所述语音识别系统包括语音识别模型和重打分模型,所述语音识别模型用于根据所述待识别的语音数据输出多个候选文本以及候选文本的得分,所述重打分模型用于对所述多个候选文本进行重打分,并按照所述多个候选文本的重打分对所述多个候选文本进行排序的排序结果,所述重打分模型为根据第一方面的方法训练得到的模型。

第三方面,本申请提供一种重打分模型的训练装置,包括:获取模块,用于获取第一语音样本和第二语音样本;所述第一语音样本包括语音样本及语音样本对应的标注文本,所述第二语音样本包括语音样本;确定模块,用于确定所述第二语音样本中语言样本对应的候选文本以及候选文本对应的声学得分和语言得分;所述声学得分用于表征语音样本对应的可能性词的概率,所述语言得分用于表征候选文本符合自然语言的概率;重打分模块,用于对候选文本进行重打分,得到候选文本对应的重打分;训练模块,用于根据所述第一语音样本、所述第二语音样本、所述第二语音样本中语音样本对应的多个候选文本以及候选文本对应的声学得分、语言得分和重打分对Transformer网络进行训练,得到重打分模型。

第四方面,本申请提供一种语音识别装置,包括:获取待识别的语音数据;将所述待识别的语音数据输入语音识别系统,得到语音识别结果;其中,所述语音识别系统包括语音识别模型和重打分模型,所述语音识别模型用于根据所述待识别的语音数据输出多个候选文本以及候选文本的得分,所述重打分模型用于对所述多个候选文本进行重打分,并输出按照所述多个候选文本的重打分对所述多个候选文本进行排序的排序结果,所述重打分模型为根据第一方面的方法训练得到的模型。

第五方面,本申请提供一种语音识别系统,包括:语音识别模型,用于根据所述待识别的语音数据输出多个候选文本以及候选文本的得分;采用如第一方面所述的方法得到的重打分模型,用于对所述多个候选文本进行重打分,并输出按照所述多个候选文本的重打分对所述多个候选文本进行排序的排序结果。

在一些可选的实施例中,该系统还包括:语音采集装置,用于采集待识别的语音数据,并将所述待识别的语音数据输入所述语音识别模型。

第六方面,本申请提供一种电子设备,包括:处理器,以及与所述处理器通信连接的存储器;所述存储器存储计算机执行指令;所述处理器执行所述存储器存储的计算机执行指令,以实现如第一方面或第二方面所述的方法。

第七方面,本申请提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,所述计算机执行指令被处理器执行时用于实现如第一方面或第二方面所述的方法。

第八方面,本申请提供一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现如第一方面或第二方面所述的方法。

本申请提供的重打分模型的训练和语音识别方法、装置、系统及设备,通过获取第一语音样本和第二语音样本;第一语音样本包括语音样本及语音样本对应的标注文本,第二语音样本包括语音样本;确定第二语音样本中语言样本对应的多个候选文本以及候选文本对应的声学得分和语言得分;声学得分用于表征语音样本的声学特征对应的可能性字词的概率,语言得分用于表征候选文本符合自然语言的概率;对候选文本进行重打分,得到候选文本对应的重打分;根据第一语音样本、第二语音样本、第二语音样本中语音样本对应的多个候选文本以及候选文本对应的声学得分、语言得分和重打分对Transformer网络进行训练,得到重打分模型。由于对候选文本进行重打分,得到候选文本对应的重打分,并将重打分应用于重打分模型的训练过程,即根据第二语音样本中语音样本对应的候选文本以及候选文本对应的声学得分、语言得分和重打分共同指导重打分模型的训练过程,从而提高重打分模型的精度,进而提高重打分模型在语音识别过程中对语音识别的准确度。

附图说明

此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。

图1为本申请实施例提供的应用场景图;

图2为本申请实施例提供的重打分模型的训练方法的流程图;

图3为本申请实施例提供的获得第二语音样本中每个语音样本的多个候选文本的示例图;

图4为本申请实施例提供的生成Transformer网络的训练数据的示例图;

图5为本申请实施例提供的重打分模型的训练过程的示例图;

图6为本申请实施例提供的语音识别方法的流程图;

图7为本申请实施例提供的重打分模型的训练装置的结构示意图;

图8为本申请实施例提供的语音识别装置的结构示意图;

图9为本申请实施例提供的语音识别系统的结构示意图;

图10为本申请实施例提供的电子设备的结构示意图。

通过上述附图,已示出本申请明确的实施例,后文中将有更详细的描述。这些附图和文字描述并不是为了通过任何方式限制本申请构思的范围,而是通过参考特定实施例为本领域技术人员说明本申请的概念。

具体实施方式

这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。

语音技术在近年来正在改变我们的生活和工作方式,对于一些嵌入式设备而言,语音成为了人机交互的主要方式。例如,将语音识别为文字,并适用于语音聊天、语音输入、语音搜索、语音下单、语音指令、语音问答等多种场景。语音识别的关键技术是语音识别系统,通过语音识别系统进行语音识别具体可以参见如下内容介绍:

图1为本申请实施例提供的应用场景图。如图1所示,该应用场景包括:终端设备11和服务器12;

其中,终端设备11可以是智能手机、Ipad、智能穿戴设备、家电设备等设置有麦克风的电子设备。当用户进行语音聊天、语音输入、语音搜索、语音下单、向家电设备发语音指令、语音问答时,终端设备11上的语音采集装置采集用户说话的声音,得到待识别语音,并发送至服务器12进行语音识别,服务器12将语音识别结果反馈给终端设备11。

服务器12可以是单独的一台服务器,也可以是包括多台服务器的服务器集群,本实施例对此不作限定。服务器12中设置有语音识别系统121,用于对待识别语音进行语音识别,得到待识别语音对应的语音识别结果。

具体的,语音识别系统121包括预处理模块1211、声学模型1212、语言模型1213和解码器1214;

预处理模块1211,用于针对待识别语音进行预处理,并将预处理后的待识别语音输入声学模型1212,得到待识别语音对应的多个候选文本以及每个候选文本对应的声学得分。其中,预处理包括:去噪、分帧和特征提取。

语言模型1213,用于确定每个候选文本对应的语言得分。

解码器1214,用于对每个候选文本进行重打分,即根据每个候选文本对应的声学得分和语言得分的加权,得到每个候选文本的最终得分,并根据多个候选文本对应的最终得分,确定最高的最终得分对应的候选文本为语音识别结果。

相关技术中,解码器根据声学得分和语言得分的加权对每个候选文本进行重打分的方式较为简单,使得得到的每个候选文本的最终得分的准确度较低,进而导致最终得到的语音识别结果的准确度较低。

针对上述技术问题,本申请的发明人提出如下技术构思:获取未人工标注的语音样本的多个候选文本以及每个候选文本的声学得分和语言得分,并在重打分过程中,通过预重打分模型对语音样本的多个候选文本进行重打分,之后,根据每个候选文本的声学得分、语言得分和重打分,对重打分模型的训练过程进行指导。

另外,相关技术中还存在如下问题:在语音识别任务中,语音对应的文本标注数据获取难度大,从而导致标注数据少,重打分过程用到的模型也需要标注数据来进行训练,由于上述提到的语音和对应的文本数据的缺乏限制了重打分过程的效果,大量的语音数据缺乏一些途径直接作用于重打分过程。然而,单独的语音数据是很容易获取的,本申请利用这部分没有标注的语音数据为语音识别任务中的一些子任务带来一定的效果提升,比如语音识别中的重打分过程,语音识别在最后的进程会给出多个文本候选集,然后通过一定的打分方法来选出最匹配的结果。

下面以具体地实施例对本申请的技术方案以及本申请的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。下面将结合附图,对本申请的实施例进行描述。

图2为本申请实施例提供的重打分模型的训练方法的流程图。如图2所示,该重打分模型的训练方法,包括如下步骤:

S201、获取第一语音样本和第二语音样本;第一语音样本包括语音样本及语音样本对应的标注文本,第二语音样本包括语音样本。

本实施例的方法的执行主体可以是如图1所示的服务器。

本实施例中,服务器可以从语音样本库中获取第一语音样本和第二语音样本。语音样本库中包含大量的语音样本,这些语音样本中的一部分语音样本具有人工标注的文本数据,另一部分语音数据没有人工标注的文本数据。则具有人工标注文本的多个语音样本可以作为第一语音样本,没有人工标注文本的多个语音样本作为第二语音样本。第一语音样本和第二语音样本的区别在于,第一语音样本中的每个语音样本都对应有人工标注的文本数据,而第二语音样本中的每个语音样本没有对应的人工标注的文本数据。

其中,人工标注的文本数据是指通过人工手动将一段语音标定为,与语音样本的语义相同的文字。

语音样本库可以从开源的语音样本集中获取,也可以是用户自己构建的语音数据库,本实施例对此不作限制。

示例性地,针对客服场景,可以获取客服场景中用户通过语音输入的问题和客服人员通过语音输入的回复语句,作为语音样本。针对家电设备控制的场景,可以获取用户输入的语音指令,作为语音样本。针对语音搜索场景,可以获取用户通过语音输入的搜索语句,作为语音样本。针对语音聊天场景,可以获取用户通过语音输入的聊天语句,作为语音样本。

应理解,针对不同的应用场景,本实施例均可以获取该应用场景下的语音数据作为语音样本,来建立语音数据库,凡是能够应用到语音识别的应用场景,都在本实施例的范围之内,针对其他的语音识别的应用场景,本实施例不再一一列举。

S202、确定第二语音样本中语音样本对应的多个候选文本以及候选文本对应的声学得分和语言得分;声学得分用于表征语音样本的声学特征对应的可能性字词的概率,语言得分用于表征候选文本符合自然语言的概率。

可选的,本步骤可以是确定第二语音样本中每个语音样本对应的多个候选文本以及每个候选文本对应的声学得分和语言得分,而每个候选文本对应的声学得分用于表征每个候选文本对应的语音样本的声学特征对应的可能性字词的概率,每个候选文本对应的语言得分用于表征每个候选文本符合自然语言的概率。

其中,多个候选文本中每个候选文本为,与第二语音样本中每个语音样本的语义相同或相近的文本数据,每个候选文本所表征的语音样本的语义的准确度不同。

可选的,确定第二语音样本中语音样本对应的多个候选文本以及候选文本对应的声学得分,包括:

步骤a、将第二语音样本中语音样本输入语音识别模型,得到第二语音样本中语音样本对应的多个候选文本以及候选文本对应的声学得分;语音识别模型是根据第一语音样本中的语音样本及对应的标注文本训练得到的模型。

可选的,步骤a包括:将第二语音样本中多个语音样本输入语音识别模型,得到第二语音样本中每个语音样本对应的多个候选文本以及每个候选文本对应的声学得分;语音识别模型是根据第一语音样本中的多个语音样本及其每个语音样本对应的标注文本训练得到的模型。

图3为本申请实施例提供的获得第二语音样本中每个语音样本的多个候选文本的示例图。如图3所示,首先使用Kaldi语音识别工具训练得到语音识别模型,然后通过语音识别模型对第二语音样本进行解码,得到第二语音样本中每个语音样本的多个候选文本。这里,第二语音样本中每个语音样本的多个候选文本可以理解为是弱监督数据。

本步骤a中,该语音识别模型包括声学模型和预语言模型。下面将对语音识别模型如何识别得到第二语音样本中每个语音样本对应的多个候选文本以及每个候选文本对应的声学得分进行详细介绍:

在将语音样本输入语音识别模型之前,需要对语音样本进行分帧处理,得到多个语音帧;并针对多个语音帧中每个语音帧,提取每个语音帧的语音特征,得到每个语音帧对应的声学特征。之后,针对第二语音样本中每个语音样本,将每个语音样本的多个语音帧中每个语音帧对应的声学特征输入声学模型,以通过声学模型对每个语音帧对应的声学特征进行声学特征的识别,得到每个语音帧对应的多个可能性词以及每个可能性词对应的概率;以一段语音样本为例,针对该段语音样本进行分帧处理,可以得到M个语音帧,在对M个语音帧中每个语音帧进行声学特征提取之后,可以得到M个声学特征。之后,将M个声学特征输入声学模型,得到M个声学特征中每个声学特征对应的多个可能性词以及每个可能性词的概率。

之后,将每个语音帧对应的多个可能性词以及每个可能性词对应的概率输入预语言模型中,以使预语言模型根据语法规则对多个语音帧中每个语音帧的多个可能性词进行组合,得到多个词序列,该多个词序列即为多个候选文本。每个候选文本的概率可以根据每个词序列的概率得到。可选的,每个词序列的概率可以根据每个词序列的多个可能性词的概率的乘积得到,而每个候选文本对应的声学得分可以根据每个候选文本对应的多个词序列的概率的乘积得到。

可选的,针对多个语音帧中每个语音帧,提取每个语音帧的声学特征时,所提取的声学特征可以是Mel频率倒谱系数(MFCC)特征、线性预测系数(LPC)特征、线性预测倒谱系数(LPCC)特征、线谱频率(LSF)特征、离散小波变换(DWT)特征或感知线性预测(PLP)特征。

可选的,确定第二语音样本中每个语音样本对应的多个候选文本以及每个候选文本对应的语言得分,包括:

步骤b、针对语音样本对应的多个候选文本,通过语言模型对所述多个候选文本进行打分,得到多个候选文本对应的语言得分;所述语言模型是根据文本数据进行训练得到的模型。

可选的,步骤b包括:针对每个语音样本对应的多个候选文本,通过语言模型对多个候选文本中每个候选文本进行打分,得到每个候选文本对应的语言得分;语言得分用于表征每个候选文本符合自然语言的概率。

其中,语言模型是根据大量文本数据进行训练得到的,且用于对一段文本符合自然语言的概率进行估计的模型。语言模型可以是N-gram模型。

N-gram模型是一个基于概率的判别模型,其输入是一句话(单词的顺序序列),输出是该句话的概率,即该些单词的联合概率(joint probability)。N-gram模型的基本思想是假设第N个词的出现只与前面N-1个词相关,而与其它任何词都不相关,则整句的概率就是各个词出现概率的乘积。比如一段文字S由w

p(S)=p(w

根据上述公式(1)计算得到的联合概率值越大,代表该段文字符合自然语言的概率越高。

其中,该段文字符合自然语言,是指该段文字是否符合语法规则。由于同一种发音,可能被解析成不同的句子,即多个候选文本,而N-gram模型就是要从多个候选文本中找出最为符合语法规则的候选文本作为语音识别结果。例如,“你西安再敢什么?”和“你现在在干什么”两个候选文本,后一个候选文本更为符合自然语言和语法规则,因此,N-gram模型会将后一个候选文本作为最终的语音识别结果。

其中,步骤b中语言模型的语言识别准确度比步骤a中预语言模型的语言识别准确度高。

步骤S203、对候选文本进行重打分,得到候选文本对应的重打分。

可选的,对候选文本进行重打分,得到候选文本对应的重打分,包括:将候选文本输入预重打分模型,得到候选文本对应的重打分;所述预重打分模型是根据所述第一语音样本中的语音样本及语音样本对应的标注文本对循环神经网络进行训练得到的模型。具体的,是将每个候选文本输入预重打分模型,得到每个候选文本对应的重打分;预重打分模型是根据第一语音样本中的多个语音样本及其每个语音样本对应的标注文本对循环神经网络进行训练得到的模型。

本实施例是针对语音样本对应的多个候选文本,通过预重打分模型对多个候选文本进行重打分,得到多个候选文本对应的重打分。在本步骤之前,首先需要根据第一语音样本中的多个语音样本及其每个语音样本对应的标注文本对循环神经网络进行训练,得到预重打分模型。预重打分模型的训练过程具体如下:

具体的,根据第一语音样本中的多个语音样本及其每个语音样本对应的标注文本对循环神经网络进行训练,得到预重打分模型,包括:

步骤c1、将第一语音样本中多个语音样本输入循环神经网络,得到每个语音样本对应的训练文本的得分。

每个语音样本对应的训练文本的得分用于表征每个语音样本对应的训练文本与标注文本之间的相似度。由于每个语音样本对应的标注文本为每个语音样本的正确文本,因此,可以设置每个语音样本对应的标注文本的得分为100%。而训练文本的得分可以是小于100%的任意值。

步骤c2、根据每个语音样本对应的训练文本的得分与标注文本的得分之间的差异,调整循环神经网络的网络参数。

具体的,步骤c2包括:根据每个语音样本对应的训练文本的得分与标注文本的得分之间的差异,确定目标函数值;根据目标函数值进行反向传播,以调整循环神经网络的网络参数。

其中,循环神经网络的网络参数包括:权重。示例性地,当循环神经网络包括输入层、隐藏层和输出层时,输入层与隐藏层之间通过第一权重连接,隐藏层与输出层之间通过第二权重连接,则调整循环神经网络的网络参数,是指调整输入层与隐藏层之间的第一权重,以及隐藏层与输出层之间的第二权重。

可选的,可以根据梯度下降法来调整循环神经网络的网络参数。

步骤c3、根据调整后的网络参数继续训练循环神经网络,直至训练结束,得到预重打分模型。

其中,训练结束的判断条件包括:目标函数值小于预设阈值,或者迭代训练次数达到预设次数。目标函数值可以根据每个语音样本对应的训练文本的得分与标注文本之间的差异来确定。

在得到训练好的预重打分模型之后,可以将多个候选文本中每个候选文本输入预重打分模型中,即可得到每个候选文本对应的重打分。

S204、根据第一语音样本、第二语音样本、第二语音样本中语音样本对应的多个候选文本以及候选文本对应的声学得分、语言得分和重打分对Transformer网络进行训练,得到重打分模型。

可选的,根据第一语音样本、第二语音样本、第二语音样本中语音样本对应的多个候选文本以及候选文本对应的声学得分、语言得分和重打分对Transformer网络进行训练,得到重打分模型,包括:

步骤d1、根据候选文本对应的声学得分、语言得分和重打分,确定候选文本对应的目标得分。

在一种可选的实施方式中,步骤d1包括:步骤d11、根据候选文本对应的声学得分、语言得分和重打分的加权和,得到候选文本对应的目标得分。

对每个候选文本执行步骤d11,可以获得每个候选文本的目标得分。

在该可选的实施方式中,步骤d11可以表示为如下公式(2):

p=p

式(2)中,p为候选文本对应的目标得分;p

可选的,候选文本对应的语言得分和重打分的加权系数相等。

在另一种可选的实施方式中,步骤d1包括:步骤d12、确定候选文本对应的语言得分和重打分的平均值;根据候选文本对应的语言得分和重打分的平均值,与候选文本对应的声学得分和目标数值的乘积之和,得到候选文本对应的目标得分。对每个候选文本执行步骤d12,可以获得每个候选文本的目标得分。

其中,步骤d12可以表示为如下公式(3):

式(3)中,q为候选文本对应的目标得分;q

上述实施例可以总结为:生成Transformer网络的训练数据。下面结合附图对生成Transformer网络的训练数据的过程进行介绍:

图4为本申请实施例提供的生成Transformer网络的训练数据的示例图。如图4所示,首先,通过语言模型对多个候选文本中每个候选文本根据语言规则进行打分,得到语言得分,以及通过预重打分模型对多个候选文本中每个候选文本根据语言规则进行重打分,得到重打分。然后,将语言得分和重打分进行平均得到弱监督信号特征,再将弱监督信号特征与声学得分进行加权,得到每个候选文本的目标得分。在得到多个候选文本中每个候选文本对应的目标得分之后,可以根据每个候选文本对应的目标得分由高到低的顺序,对多个候选文本进行重排序,得到多个候选文本的重排序。

步骤d2、根据第一语音样本、第二语音样本、第二语音样本对应的多个候选文本以及候选文本对应的目标得分对Transformer网络进行训练,得到重打分模型。

可选的,步骤d2包括:

步骤d21、根据第二语音样本、第二语音样本中语音样本对应的多个候选文本以及候选文本对应的目标得分对Transformer网络进行训练,得到预训练重打分模型。

可选的,步骤d21包括:

步骤d211、对第二语音样本中语音样本进行声学特征的提取,得到第二语音样本中语音样本对应的声学特征。

可选的,步骤d211包括:对第二语音样本中每个语音样本进行声学特征的提取,得到第二语音样本中每个语音样本对应的声学特征。

其中,声学特征是指表示语音声学特性的物理量,也是声音诸要素声学表现的统称,如表示音色的能量集中区、共振峰频率、共振峰强度和带看,以及表示语音韵律特性的时长、基频、平均语声功率等。例如,声学特征可以是Mel频率倒谱系数(MFCC)特征、线性预测系数(LPC)特征、线性预测倒谱系数(LPCC)特征、线谱频率(LSF)特征、离散小波变换(DWT)特征或感知线性预测(PLP)特征。

可选的,可以通过语音识别工具提取语音样本的声学特征。而语音识别工具可以是kaldi工具。

步骤d212、对语音样本对应的多个候选文本进行文本特征的提取,得到语音样本对应的多个文本特征,其中,每个文本特征对应一个候选文本。

可选的,步骤d212包括:针对每个语音样本对应的多个候选文本,对多个候选文本中每个候选文本进行文本特征的提取,得到每个语音样本对应的多个文本特征,其中,每个文本特征对应每个语音样本的一个候选文本。

可选的,可以通过BERT语言模型对第二语音样本的每个候选文本进行文本特征的提取,得到每个候选文本对应的文本特征。

以一段语音样本为例,示例性地,假设一段语音样本对应N个候选文本,则本步骤是针对N个候选文本中每个候选文本进行文本特征的提取,从而得到该语音样本对应的N个文本特征,而N个文本特征中每个文本特征对应该语音样本的一个候选文本。

步骤d213、根据第二语音样本中语音样本对应的声学特征和多个文本特征对Transformer网络进行训练,得到第二语音样本中语音样本对应的声学特征与多个文本特征之间的相关性得分。

可选的,步骤d213包括:根据第二语音样本中每个语音样本对应的声学特征和多个文本特征对Transformer网络进行训练,得到第二语音样本中每个语音样本对应的声学特征与多个文本特征中每个文本特征之间的相关性得分。

本步骤是将每个语音样本对应的声学特征和多个文本特征中每个文本特征进行组合之后,输入Transformer网络进行训练。

承接步骤d212中的示例,针对一段语音样本,本步骤是将每个语音样本对应的声学特征与N个文本特征中每个文本特征进行组合,得到N个组合特征,并将N个组合特征输入Transformer网络,以使Transformer网络学习声学特征和N个文本特征之间的相关性或相似性。

步骤d214、根据第二语音样本中语音样本对应的声学特征与多个文本特征之间的相关性得分,对多个文本特征进行排序,得到文本特征排序。

其中,第二语音样本中每个语音样本对应的声学特征与多个文本特征中每个文本特征之间分别具有一相关性得分,根据第二语音样本中每个语音样本对应的声学特征与多个文本特征中每个文本特征之间的相关性得分,对多个文本特征进行排序,可以得到文本特征排序。

步骤d215、根据多个候选文本的排序与多个文本特征的排序之间的差异,调整Transformer网络的网络参数,并根据调整后的网络参数继续进行训练,直至训练结束,得到预训练重打分模型。

下面通过一个具体的示例对步骤d214和步骤d215进行解释说明:

示例性地,针对一段语音样本,假设其对应5个候选文本和5个文本特征,分别记为候选文本1、候选文本2、候选文本3、候选文本4和候选文本5,以及,文本特征1、文本特征2、文本特征3、文本特征4和文本特征5。根据5个候选文本中每个候选文本对应的目标得分,对5个候选文本按照由高到低的顺序进行排序,得到的排序为候选文本3、候选文本1、候选文本2、候选文本4和候选文本5,则经过多次迭代训练后,文本特征1、文本特征2、文本特征3、文本特征4和文本特征5的排序应为文本特征3、文本特征1、文本特征2、文本特征4和文本特征5。

具体的,步骤d215包括:

步骤d2151、根据多个候选文本的排序与多个文本特征的排序之间的差异,确定目标函数值;根据目标函数值进行反向传播,以调整Transformer网络的网络参数。

可选的,可以根据梯度下降法来调整Transformer网络的网络参数。

下面结合附图对重打分模型的训练过程进行介绍:

图5为本申请实施例提供的重打分模型的训练过程的示例图。如图5所示,首先,通过语音识别工具提取语音样本A的声学特征,以及通过语言模型提取该语音样本A的多个候选文本中每个候选文本的文本特征;之后,将语音样本A的声学特征和多个文本特征进行组合,并输入Transformer网络,得到声学特征与每个文本特征的相关性打分,根据每个文本特征的相关性打分,对多个文本特征进行排序,得到多个文本特征的排序。之后,根据多个候选文本的排序与多个文本特征的排序之间的差异,调整Transformer网络的网络参数,并根据调整后的网络参数继续进行训练,直至训练结束,得到预训练重打分模型。

步骤d2152、根据调整后的网络参数继续训练Transformer网络,直至训练结束,得到预训练重打分模型。

其中,训练结束的判断条件包括:目标函数值小于预设阈值,或者迭代训练次数达到预设次数。而目标函数值小于预设阈值的一个判断条件可以是多个候选文本的排序与多个文本特征的排序之间的相似度大于预设相似度。多个候选文本的排序与多个文本特征的排序之间的相似度可以根据多个候选文本的排序与多个文本特征的排序中,具有相同语义的候选文本与文本特征的排序相同的候选文本的数量在全部候选文本中的占比。

上述实施例训练得到的预训练重打分模型,本质是根据无标注的语音样本进行训练得到的,重打分模型的准确度较低。本实施例可以进一步采用具有人工标注文本的第一语音样本对预训练重打分模型进行微调(finetune)。

步骤d22、根据第一语音样本中语音样本及对应的标注文本对预训练重打分模型进行训练,得到重打分模型。

可选的,可以是根据第一语音样本中的多个语音样本及每个语音样本对应的标注文本对预训练重打分模型进行训练,得到重打分模型。

可选的,步骤d22包括:

步骤d221、将第一语音样本中语音样本输入预训练重打分模型,得到第一语音样本中语音样本对应的预测文本。

可选的,可以是将第一语音样本中的多个语音样本输入预训练重打分模型,得到多个语音样本中每个语音样本对应的预测文本的得分。

步骤d222、根据第一语音样本中语音样本对应的标注文本和预测文本之间的差异,调整预训练重打分模型的网络参数,并根据调整后的网络参数继续进行训练,直至训练结束,得到重打分模型。

可选的,步骤d222包括:根据每个语音样本对应的标注文本的得分和预测文本的得分之间的差异,调整预训练重打分模型的网络参数,并根据调整后的网络参数继续进行训练,直至训练结束,得到重打分模型。

每个语音样本对应的标注文本为人工标定的文本,因此,其可以认为是每个语音样本对应的正确文本。可以将每个语音样本对应的标注文本的得分设置为满分,例如100%。

具体的,步骤d222包括:根据每个语音样本对应的标注文本的得分和预测文本的得分之间的差异,确定目标函数值;根据目标函数值进行反向传播,以调整预训练重打分模型的网络参数。

其中,预训练重打分模型的网络参数包括:权重。可选的,可以根据梯度下降法来调整预训练重打分模型的网络参数。

本实施例通过获取第一语音样本和第二语音样本;第一语音样本包括语音样本及其语音样本对应的标注文本,第二语音样本包括语音样本;确定第二语音样本中语言样本对应的多个候选文本以及候选文本对应的声学得分和语言得分;声学得分用于表征语音样本的声学特征对应的可能性字词的概率,语言得分用于表征候选文本符合自然语言的概率;对候选文本进行重打分,得到候选文本对应的重打分;根据第一语音样本、第二语音样本、第二语音样本中语音样本对应的多个候选文本以及候选文本对应的声学得分、语言得分和重打分对Transformer网络进行训练,得到重打分模型。由于对候选文本进行重打分,得到候选文本对应的重打分,并将重打分应用于重打分模型的训练过程,即根据第二语音样本中语音样本对应的多个候选文本以及候选文本对应的声学得分、语言得分和重打分共同指导重打分模型的训练过程,从而提高重打分模型的精度,进而提高重打分模型在语音识别过程中对语音识别的准确度。

另外,本实施例首先使用弱监督数据进行初步的预训练,然后用已有的小部分具有人工标注文本的语音样本进行微调,从而充分地利用了无人工标注文本的第二语音样本,将其通过预训练模型应用于重打分模型的训练过程。从而解决缺少语音文本标注的问题。

根据上述重打分模型的训练方法训练得到重打分模型后,可以将重打分模型设置于语音识别系统中,并通过语音识别系统对待识别语音进行语音识别。下面结合附图对语音识别方法进行详细介绍:

图6为本申请实施例提供的语音识别方法的流程图。如图6所示。该语音识别方法,包括如下步骤:

步骤601、获取待识别的语音数据。

步骤602、将待识别的语音数据输入语音识别系统,得到语音识别结果。

其中,语音识别系统包括语音识别模型和重打分模型,语音识别模型用于根据待识别的语音数据输出多个候选文本以及候选文本的得分,重打分模型用于对多个候选文本进行重打分,并输出按照多个候选文本的重打分对多个候选文本进行排序的排序结果,重打分模型为根据上述实施例的方法训练得到的模型。

本实施例的语音识别方法的执行主体可以是语音识别系统。

在一种可选的实施方式中,语音系统可以设置在服务器中,终端设备上的语音采集器采集待识别语音后,将待识别语音发送至服务器,服务器调用语音识别系统对待识别语音进行语音识别,得到语音识别结果,并将语音识别结果返回至终端设备。

在另一种可选的实施方式中,语音系统还可以设置在终端设备中,当终端设备上的语音采集器采集到待识别语音时,可以直接调用终端设备中的语音识别系统进行语音识别,得到语音识别结果,并将语音识别结果展示在终端设备上。

其中,待识别的语音数据可以是用户通过终端设备选择的将转换为文本的语音。

在一些即时通讯应用或人工客服场景中,当用户针对一段语音触发了语音转文本的操作,则终端设备可以将该段语音发送至服务器,服务器调用语音识别系统对待识别语音进行语音识别,得到语音识别结果,并将语音识别结果返回至终端设备。或者,终端设备调用终端设备中的语音识别系统对待识别语音进行语音识别,得到语音识别结果,并显示语音识别结果。

而在自动客服场景中,当用户通过终端设备输入一段语音,则终端设备可以将该段语音发送至服务器,服务器调用语音识别系统对待识别语音进行语音识别,得到语音识别结果,并根据语音识别结果匹配相应的回复话术,以及将回复话术返回至终端设备,终端设备显示回复话术。或者,终端设备调用终端设备中的语音识别系统对待识别语音进行语音识别,得到语音识别结果,以及,根据语音识别结果匹配相应的回复话术,并将回复话术返回至终端设备进行显示。

在上述重打分模型的训练方法的实施例的基础上,图7为本申请实施例提供的重打分模型的训练装置的结构示意图。如图7所示,该重打分模型的训练装置,包括:获取模块71,用于获取第一语音样本和第二语音样本;所述第一语音样本包括语音样本及语音样本对应的标注文本,所述第二语音样本包括语音样本;确定模块72,用于确定所述第二语音样本中语言样本对应的多个候选文本以及候选文本对应的声学得分和语言得分;所述声学得分用于表征语音样本对应的可能性词的概率,所述语言得分用于表征候选文本符合自然语言的概率;重打分模块73,用于对候选文本进行重打分,得到候选文本对应的重打分;训练模块74,用于根据所述第一语音样本、所述第二语音样本、所述第二语音样本中语音样本对应的多个候选文本以及候选文本对应的声学得分、语言得分和重打分对Transformer网络进行训练,得到重打分模型。

在一些实施例中,所述重打分模块73对候选文本进行重打分,得到候选文本对应的重打分,具体包括:将候选文本输入预重打分模型,得到候选文本对应的重打分;所述预重打分模型是根据所述第一语音样本中的语音样本及其语音样本对应的标注文本对循环神经网络进行训练得到的模型。

在一些实施例中,所述训练模块74根据所述第一语音样本、所述第二语音样本、所述第二语音样本中语音样本对应的多个候选文本以及候选文本对应的声学得分、语言得分和重打分对Transformer网络进行训练,得到重打分模型,包括:根据所述候选文本对应的声学得分、语言得分和重打分,确定所述候选文本对应的目标得分;根据所述第一语音样本、所述第二语音样本、所述第二语音样本中语音样本对应的多个候选文本以及候选文本对应的目标得分对Transformer网络进行训练,得到重打分模型。

在一些实施例中,所述确定模块72根据候选文本对应的声学得分、语言得分和重打分,确定候选文本对应的目标得分,包括:根据所述候选文本对应的声学得分、语言得分和重打分的加权和,得到所述候选文本对应的目标得分。

在一些实施例中,所述训练模块74根据所述第一语音样本、所述第二语音样本、所述第二语音样本中语音样本对应的多个候选文本以及候选文本对应的目标得分对Transformer网络进行训练,得到重打分模型,包括:根据所述第二语音样本、所述第二语音样本中语音样本对应的多个候选文本以及候选文本对应的目标得分对Transformer网络进行训练,得到预训练重打分模型;根据所述第一语音样本中语音样本及其语音样本对应的标注文本对所述预训练重打分模型进行训练,得到所述重打分模型。

在一些实施例中,所述训练模块74根据所述第二语音样本、所述第二语音样本中语音样本对应的多个候选文本以及候选文本对应的目标得分对Transformer网络进行训练,得到预训练重打分模型,包括:对所述第二语音样本中语音样本进行声学特征的提取,得到所述第二语音样本中语音样本对应的声学特征;对语音样本对应的多个候选文本进行文本特征的提取,得到语音样本对应的多个文本特征,其中,每个文本特征对应一个候选文本;根据所述第二语音样本中语音样本对应的声学特征和多个文本特征对Transformer网络进行训练,得到所述第二语音样本中语音样本对应的声学特征与多个文本特征之间的相关性得分;根据所述第二语音样本中语音样本对应的声学特征与多个文本特征之间的相关性得分,对多个文本特征进行排序,得到文本特征排序;根据多个候选文本的排序与多个文本特征的排序之间的差异,调整所述Transformer网络的网络参数,并根据调整后的网络参数继续进行训练,直至训练结束,得到所述预训练重打分模型。

在一些实施例中,所述训练模块74根据所述第一语音样本中语音样本及对应的标注文本对所述预训练重打分模型进行训练,得到所述重打分模型,包括:将所述第一语音样本中语音样本输入所述预训练重打分模型,得到所述第一语音样本中语音样本对应的预测文本;根据所述第一语音样本中语音样本对应的标注文本和预测文本之间的差异,调整所述预训练重打分模型的网络参数,并根据调整后的网络参数继续进行训练,直至训练结束,得到所述重打分模型。

在一些实施例中,所述确定模块72确定所述第二语音样本中语音样本对应的多个候选文本以及候选文本对应的声学得分和语言得分,包括:将所述第二语音样本中语音样本输入语音识别模型,得到所述第二语音样本中语音样本对应的多个候选文本以及候选文本对应的声学得分;所述语音识别模型是根据所述第一语音样本中的语音样本及其对应的标注文本训练得到的模型;针对语音样本对应的多个候选文本,通过语言模型对所述多个候选文本进行打分,得到多个候选文本对应的语言得分;所述语言模型是根据文本数据进行训练得到的模型。

本申请实施例提供的重打分模型的训练装置,可用于执行上述实施例中重打分模型的训练方法的技术方案,其实现原理和技术效果类似,在此不再赘述。

在上述语音识别方法的实施例的基础上,图8为本申请实施例提供的语音识别装置的结构示意图。如图8所示,该语音识别装置,包括:获取模块81和语音识别模块82;其中,获取模块81,用于获取待识别的语音数据;语音识别模块82,用于将所述待识别的语音数据输入语音识别系统,得到语音识别结果;其中,所述语音识别系统包括语音识别模型和重打分模型,所述语音识别模型用于根据所述待识别的语音数据输出多个候选文本以及候选文本的得分,所述重打分模型用于对所述多个候选文本进行重打分,并按照所述多个候选文本的重打分对所述多个候选文本进行排序的排序结果,所述重打分模型为根据重打分模型的训练方法进行训练得到的模型。

本申请实施例提供的语音识别装置,可用于执行上述实施例中语音识别方法的技术方案,其实现原理和技术效果类似,在此不再赘述。

在上述重打分模块的训练方法和语音识别方法的实施例的基础上,图9为本申请实施例提供的语音识别系统的结构示意图。如图9所示,该语音识别系统,包括:语音识别模型91,用于根据所述待识别的语音数据输出多个候选文本以及每个候选文本的得分;采用如上述实施例中重打分模块的训练方法进行训练得到的重打分模型92,用于对所述多个候选文本中每个候选文本进行重打分,并输出按照所述多个候选文本的重打分对所述多个候选文本进行排序的排序结果。

在一些可选的实施例中,所述系统还包括:语音采集装置93,用于采集待识别的语音数据,并将所述待识别的语音数据输入所述语音识别模型。

需要说明的是,应理解以上装置的各个模块的划分仅仅是一种逻辑功能的划分,实际实现时可以全部或部分集成到一个物理实体上,也可以物理上分开。且这些模块可以全部以软件通过处理元件调用的形式实现;也可以全部以硬件的形式实现;还可以部分模块通过处理元件调用软件的形式实现,部分模块通过硬件的形式实现。例如,训练模块74可以为单独设立的处理元件,也可以集成在上述装置的某一个芯片中实现,此外,也可以以程序代码的形式存储于上述装置的存储器中,由上述装置的某一个处理元件调用并执行以上训练模块74的功能。其它模块的实现与之类似。此外这些模块全部或部分可以集成在一起,也可以独立实现。这里的处理元件可以是一种集成电路,具有信号的处理能力。在实现过程中,上述方法的各步骤或以上各个模块可以通过处理器元件中的硬件的集成逻辑电路或者软件形式的指令完成。

图10为本申请实施例提供的电子设备的结构示意图。如图10所示,该电子设备可以包括:收发器101、处理器102、存储器103。

处理器102执行存储器存储的计算机执行指令,使得处理器102执行上述实施例中的方案。处理器102可以是通用处理器,包括中央处理器CPU、网络处理器(networkprocessor,NP)等;还可以是数字信号处理器DSP、专用集成电路ASIC、现场可编程门阵列FPGA或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。

存储器103通过系统总线与处理器102连接并完成相互间的通信,存储器103用于存储计算机程序指令。

收发器101可以用于获取待识别语音,以及返回语音识别结果。

系统总线可以是外设部件互连标准(peripheral component interconnect,PCI)总线或扩展工业标准结构(extended industry standard architecture,EISA)总线等。系统总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。收发器用于实现数据库访问装置与其他计算机(例如客户端、读写库和只读库)之间的通信。存储器可能包含随机存取存储器(randomaccess memory,RAM),也可能还包括非易失性存储器(non-volatile memory)。

本申请实施例提供的电子设备,可以是上述实施例的服务器或终端设备。

本申请实施例还提供一种运行指令的芯片,该芯片用于执行上述实施例中重打分模型的训练方法或语音识别方法的技术方案。

本申请实施例还提供一种计算机可读存储介质,该计算机可读存储介质中存储有计算机指令,当该计算机指令在计算机上运行时,使得计算机执行上述实施例重打分模型的训练方法或语音识别方法的技术方案。

本申请实施例还提供一种计算机程序产品,该计算机程序产品包括计算机程序,其存储在计算机可读存储介质中,至少一个处理器可以从计算机可读存储介质读取计算机程序,至少一个处理器执行计算机程序时可实现上述实施例中重打分模型的训练方法或语音识别方法的技术方案。

本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本申请的其它实施方案。本申请旨在涵盖本申请的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本申请的一般性原理并包括本申请未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本申请的真正范围和精神由下面的权利要求书指出。

应当理解的是,本申请并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本申请的范围仅由所附的权利要求书来限制。

相关技术
  • 重打分模型的训练和语音识别方法、装置、系统及设备
  • 重打分语言模型训练和语音识别方法、装置、系统及设备
技术分类

06120114729058