语音识别以及模型训练方法、装置、设备和存储介质与流程

专利2022-06-29  53


本申请涉及语音处理技术领域,特别是涉及语音识别以及模型训练方法、装置、设备和存储介质。



背景技术:

随着多媒体技术和网络技术的飞速发展和广泛应用,存在很多需要进行语音识别的场景。例如可以通过语音对设备进行控制,因此设备需要对用户的语音进行识别,得到文本,再基于文本触发对应的操作指令,以对设备进行操作。

目前,可以采用语音识别模型对语音进行识别,然而,经常存在利用语音识别模型识别得到的结果与正确的识别结果相差比较大的情况,导致语音识别效果差。



技术实现要素:

基于此,有必要针对上述语音识别效果差的问题,提供一种语音识别以及模型训练方法、装置、设备和存储介质。

一种语音识别模型训练方法,所述方法包括:获取目标用户对应的第一样本语音数据以及所述第一样本语音数据对应的第一参考语音识别结果;获取更新前的目标模型,所述更新前的目标模型包括目标语音提取模型、目标特征提取模型以及目标语音识别模型,所述目标特征提取模型桥接在所述目标语音提取模型以及所述目标语音识别模型之间;将所述第一样本语音数据输入到所述更新前的目标模型中,以利用所述目标语音提取模型、所述目标特征提取模型以及所述目标语音识别模型进行语音识别,得到第一模型输出结果;根据所述第一模型输出结果以及所述第一参考语音识别结果得到所述目标特征提取模型对应的目标模型损失值;根据所述目标模型损失值对所述更新前的目标模型中的目标特征提取模型的模型参数进行更新,得到更新后的目标模型,以利用所述更新后的目标模型对所述目标用户的语音数据进行语音识别。

一种语音识别模型训练装置,所述装置包括:第一样本语音数据获取模块,用于获取目标用户对应的第一样本语音数据以及所述第一样本语音数据对应的第一参考语音识别结果;更新前的目标模型获取模块,用于获取更新前的目标模型,所述更新前的目标模型包括目标语音提取模型、目标特征提取模型以及目标语音识别模型,所述目标特征提取模型桥接在所述目标语音提取模型以及所述目标语音识别模型之间;第一模型输出结果得到模块,用于将所述第一样本语音数据输入到所述更新前的目标模型中,以利用所述目标语音提取模型、所述目标特征提取模型以及所述目标语音识别模型进行语音识别,得到第一模型输出结果;目标模型损失值得到模块,用于根据所述第一模型输出结果以及所述第一参考语音识别结果得到所述目标特征提取模型对应的目标模型损失值;更新后的目标模型得到模块,用于根据所述目标模型损失值对所述更新前的目标模型中的目标特征提取模型的模型参数进行更新,得到更新后的目标模型,以利用所述更新后的目标模型对所述目标用户的语音数据进行语音识别。

在一些实施例中,所述第一模型输出结果得到模块用于:将所述第一样本语音数据输入到所述目标语音提取模型中进行语音提取,得到第一训练语音数据;将所述第一训练语音数据输入到所述目标特征提取模型中进行特征提取,得到第一训练特征;将所述第一训练特征输入到所述目标语音识别模型中进行语音识别,得到第一模型输出结果。

在一些实施例中,所述目标模型损失值得到模块用于:根据所述第一模型输出结果以及所述第一参考语音识别结果得到所述目标特征提取模型对应的第一模型损失值;根据所述第一训练语音数据以及所述第一样本语音数据对应的第一参考语音数据得到第二模型损失值;根据所述第一模型损失值以及所述第二模型损失值计算得到所述目标特征提取模型对应的目标模型损失值。

在一些实施例中,所述目标模型损失值得到模块用于:根据所述第一模型损失值以及对应的第一权重、所述第二模型损失值以及对应的第二权重进行加权求和计算,得到所述目标特征提取模型对应的目标模型损失值。

在一些实施例中,所述更新前的目标模型获取模块用于:获取训练用户对应的第二样本语音数据以及所述第二样本语音数据对应的第二参考语音识别结果,组成训练样本;根据所述训练样本对第一语音提取模型、第一特征提取模型以及第一语音识别模型进行联合训练,得到所述更新前的目标模型,其中联合训练时根据联合损失值进行模型参数的更新,所述联合损失值根据所述第一语音提取模型对应的模型损失值以及所述第一语音识别模型对应的模型损失值确定。

在一些实施例中,所述第一语音识别模型的得到模块用于:获取训练用户对应的第三样本语音数据对应的各个训练音频帧,以及所述训练音频帧对应的目标音素类别;利用所述初始语音识别模型的编码模型提取得到各个所述训练音频帧对应的编码特征;根据所述目标音素类别的训练音频帧对应的编码特征得到各个所述目标音素类别对应的音素类别中心向量;根据所述训练音频帧对应的编码特征与对应的音素类别中心向量的差异确定中心损失值;根据所述中心损失值调整所述初始语音识别模型中的模型参数,得到所述第一语音识别模型。

在一些实施例中,所述更新后的目标模型得到模块用于:从所述目标特征提取模型的最后一层开始,根据所述目标模型损失值对所述目标特征提取模型的模型参数进行反向梯度更新,直至更新到所述目标特征提取模型的第一层停止参数更新,得到更新后的目标模型。

在一些实施例中,所述第一样本语音数据获取模块用于:获取目标用户触发目标任务开启的任务开启语音数据,作为所述目标用户对应的第一样本语音数据;获取触发所述目标任务开启的标准语音识别结果,作为所述第一样本语音数据对应的第一参考语音识别结果。

一种计算机设备,包括存储器和处理器,所述存储器中存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行上述语音识别方法的步骤。

一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行上述语音识别方法的步骤。

上述语音识别模型训练方法、装置、计算机设备和存储介质,通过在前端的语音提取模型以及后端的语音识别模型之间部署特征提取模型,既能够利用语音提取模型提取有效的语音数据,减少噪声,又能够利用特征提取模型提取语音特征,减少语音提取失真导致的影响。此外,利用目标用户的语音数据对该特征提取模型的参数进行更新,在提高了训练得到的目标模型根据说话人进行自适应识别的能力,即提高了对目标用户的语音识别效果的同时,也能够减少说话人自适应训练的复杂度。

一种语音识别方法,所述方法包括:获取目标用户对应的目标语音数据;获取更新后的目标模型,所述更新后的目标模型包括目标语音提取模型、目标特征提取模型以及目标语音识别模型,所述目标特征提取模型桥接在所述目标语音提取模型以及所述目标语音识别模型之间,所述目标特征提取模型中的模型参数根据所述目标用户对应的第一样本语音数据以及对应的第一参考语音识别结果更新得到;将所述目标语音数据输入到所述更新后的目标模型中,得到目标语音识别结果。

一种语音识别装置,所述装置包括:目标语音数据获取模块,用于获取目标用户对应的目标语音数据;更新后的目标模型获取模块,用于获取更新后的目标模型,所述更新后的目标模型包括目标语音提取模型、目标特征提取模型以及目标语音识别模型,所述目标特征提取模型桥接在所述目标语音提取模型以及所述目标语音识别模型之间,所述目标特征提取模型中的模型参数根据所述目标用户对应的第一样本语音数据以及对应的第一参考语音识别结果更新得到;目标语音识别结果得到模块,用于将所述目标语音数据输入到所述更新后的目标模型中,得到目标语音识别结果。

在一些实施例中,所述装置还包括:接收用户获取模块,用于获取所述目标语音数据对应的接收用户;提取语音数据得到模块,用于获取所述目标语音提取模型对所述目标语音数据进行提取得到的提取语音数据;发送模块,用于将所述提取语音数据以及所述目标语音识别结果发送给所述接收用户对应的终端,以使得所述终端播放所述提取语音数据以及展示所述目标语音识别结果。

一种计算机设备,包括存储器和处理器,所述存储器中存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行上述语音识别方法的步骤。

一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行上述语音识别方法的步骤。

上述语音识别方法、装置、计算机设备和存储介质,通过在前端的语音提取模型以及后端的语音识别模型之间部署特征提取模型,既能够利用语音提取模型提取有效的语音数据,减少噪声,又能够利用特征提取模型提取语音特征,减少语音提取失真导致的影响。此外,利用目标用户的语音数据对该特征提取模型的参数进行更新,在提高了训练得到的目标模型根据说话人进行自适应识别的能力,即提高了对目标用户的语音识别效果的同时,也能够减少说话人自适应训练的复杂度。

附图说明

图1为一个实施例中提供的语音识别方法的应用环境图;

图2为一个实施例中语音识别方法的流程图;

图3为一个实施例中目标模型的架构图;

图4为一个实施例中用目标语音提取模型、目标特征提取模型以及目标语音识别模型进行语音识别,得到第一模型输出结果的流程图;

图5为一个实施例中根据第一模型输出结果以及第一参考语音识别结果得到目标特征提取模型对应的目标模型损失值的流程图;

图6为一个实施例中第一语音识别模型的得到步骤的流程图;

图7为一个实施例中语音识别方法的流程图;

图8为一个实施例中语音通话界面的示意图;

图9a为一个实施例中训练语音提取模型的示意图;

图9b为一个实施例中联合训练语音提取模型、特征提取模型以及语音识别模型的示意图;

图9c为一个实施例中对特征提取模型进行说话人自适应训练的示意图;

图10为一个实施例中语音识别模型训练装置的结构框图;

图11为一个实施例中语音识别装置的结构框图;

图12为一个实施例中计算机设备的内部结构框图。

具体实施方式

为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。

可以理解,本申请所使用的术语“第一”、“第二”等可在本文中用于描述各种元件,但除非特别说明,这些元件不受这些术语限制。这些术语仅用于将第一个元件与另一个元件区分。举例来说,在不脱离本申请的范围的情况下,可以将第一样本语音数据称为第二样本语音数据,且类似地,可将第二语样本语音数据称为第一样本语音数据。

人工智能(artificialintelligence,ai)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。

人工智能技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。

语音技术(speechtechnology)的关键技术有自动语音识别技术(asr)和语音合成技术(tts)以及声纹识别技术。让计算机能听、能看、能说、能感觉,是未来人机交互的发展方向,其中语音成为未来最被看好的人机交互方式之一。

自然语言处理(naturelanguageprocessing,nlp)是计算机科学领域与人工智能领域中的一个重要方向。它研究能实现人与计算机之间用自然语言进行有效通信的各种理论和方法。自然语言处理是一门融语言学、计算机科学、数学于一体的科学。因此,这一领域的研究将涉及自然语言,即人们日常使用的语言,所以它与语言学的研究有着密切的联系。自然语言处理技术通常包括文本处理、语义理解、机器翻译、机器人问答、知识图谱等技术。

机器学习(machinelearning,ml)是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。机器学习是人工智能的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域。机器学习和深度学习通常包括人工神经网络、置信网络、强化学习、迁移学习、归纳学习、式教学习等技术。

随着人工智能技术研究和进步,人工智能技术在多个领域展开研究和应用,例如常见的智能家居、智能穿戴设备、虚拟助理、智能音箱、智能营销、无人驾驶、自动驾驶、无人机、机器人、智能医疗、智能客服等,相信随着技术的发展,人工智能技术将在更多的领域得到应用,并发挥越来越重要的价值。

本申请实施例提供的方案涉及人工智能的语音处理等技术,具体通过如下实施例进行说明:

图1为一个实施例中提供的语音识别方法的应用环境图,如图1所示,在该应用环境中,包括目标用户对应的终端110以及服务器120。

服务器120上存储有更新前的目标模型,更新前的目标模型依次包括目标语音提取模型、目标特征提取模型以及目标语音识别模型,所述目标特征提取模型桥接在所述目标语音提取模型以及所述目标语音识别模型之间。为了实现语音识别的说话人自适应,当终端110检测到目标用户的语音数据时,可以向服务器120发送语音数据,作为训练样本,服务器120根据目标用户的语音数据对目标模型中的目标特征提取模型进行更新,得到更新后的目标模型。由于更新后的目标模型采用目标用户的语音进行了参数的更新,即根据说话人进行了自适应调整,因此该模型针对该目标用户的语音数据的识别效果更好。服务器120可以建立目标用户与更新后的目标模型的对应关系,当需要得到目标用户的语音识别结果时,则可以用对应的更新后的模型进行更新。可以理解,目标模型也可以是部署于终端110中。

本申请实施例提供的方法可以应用于对智能设备进行控制中,也可以应用于翻译场景中。例如,当a用户购买了智能家居设备如电视,可以通过语音对该智能家居设备进行控制,智能家居设备的后台服务器存储了更新前的目标模型,但由于该模型可能是根据数万个用户的语音数据训练得到的,即根据非特定人的训练数据训练的,并不具有针对性。而每个人的发声位置或者口音都具有其独特性,因此根据a用户的语音数据进行进一步的说话人自适应训练,使得利用a用户的少量语料训练模型,就能够针对a用户进行模型的自适应调整。

服务器120可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群,可以是提供云服务器、云数据库、云存储和cdn等基础云计算服务的云服务器。终端110可以是智能手机、平板电脑、笔记本电脑、台式计算机、智能音箱、智能手表等,但并不局限于此。终端110以及服务器120可以通过网络等通讯连接方式进行连接,本申请在此不做限制。

如图2所示,在一个实施例中,提出了一种语音识别模型训练方法,可以理解,本申请的实施例所指的语音识别模型的训练,是指对实现语音识别功能有关的目标模型中的一个或多个模型进行训练,并不是只指对目标模型中的语音识别模型进行训练。本实施例主要以该方法应用于上述图1中的服务器120来举例说明。具体可以包括以下步骤:

步骤s202,获取目标用户对应的第一样本语音数据以及第一样本语音数据对应的第一参考语音识别结果。

具体地,目标用户是任意的需要根据该用户的语音数据对模型的参数进行说话人自适应调整的用户。例如,目标用户可以是正在通过计算机设备执行交互式任务的用户,交互式任务可以是游戏,游戏中需要进行语音通话,为了更好的识别该用户的语音,需要对模型的参数进自适应调整。样本语音数据是指该语音数据是用于进行模型训练的样本数据。样本语音数据对应的参考语音识别结果是该样本语音数据的标准语音识别结果。在采用有监督的模型训练方法进行模型训练时,根据模型输出的预测语音识别结果与标准语音识别结果进行模型参数的调整。例如,样本语音可以是“请进入游戏”的语音,则对应的参考语音识别结果是文本“请进入游戏”或者文本“请进入游戏”对应的音素。第一样本语音数据的个数可以是多个,例如可以采集目标用户的多个语音流。

在一些实施例中,可以是当检测到新用户时,则触发执行本申请实施例提供的模型训练方法,即将新用户作为目标用户,获取新用户的样本语音数据,对目标模型中的目标特征提取模型进行更新,得到更新后的目标模型,以对该新用户的语音进行识别。

在一些实施例中,可以是将向预设账户转移预设数量的资源的用户作为目标用户,资源可以是电子货币。例如,当a用户支付30元用于购买语音识别服务时,则将a用户作为目标用户。

在一些实施例中,获取目标用户对应的第一样本语音数据以及第一样本语音数据对应的第一参考语音识别结果包括:获取目标用户触发目标任务开启的任务开启语音数据,作为目标用户对应的第一样本语音数据;获取触发目标任务开启的标准语音识别结果,作为第一样本语音数据对应的第一参考语音识别结果。

具体地,目标任务可以是任意的任务。例如可以是交互式任务,交互(interaction)是发生在可以相互影响的两个用户或者更多用户之间的行为。用户可以是指人也可以是指机器。交互式任务可以为游戏。任务可以通过语音触发,任务开启语音数据是指用于触发任务开启的语音数据。标准语音识别结果是预先设置的,是用于开启任务的语音识别结果,当语音的识别结果与该语音识别结果一致,则可以开启任务。标准语音识别结果是文本形式的数据。在需要通过语音开启任务时,目标用户一般需要按照相关指示例如设备说明书的指示发出语音数据,才能开启任务,由于触发任务开启的语音数据一般比较简单,且一般需要特定的语音数据才可以开启。因此如果目标用户的语音数据可以开启目标任务,则说明目标用户的语音识别结果与标准语音识别结果的区别是非常小的,只有这样,机器才能识别出用户是希望开启任务。因此可以将该预先设置的标准语音识别结果作为第一参考语音识别结果。本申请实施例中,通过将触发目标任务开启的标准语音识别结果作为任务开启语音数据的参考语音识别结果,可以在说话人自适应训练时,在不需要人工对语音数据的参考识别结果进行标注的条件下,自动获取得到准确的参考语音识别结果,提高了模型训练的效率。

在一些实施例中,当任务开启语音数据有多段语音以及标准语音识别结果有多个时,则可以根据标准语音识别结果的排列顺序以及语音接收顺序进行一一对应。

举个实际的例子,例如对于xx游戏,进入xx游戏的标准语音一般是“进入xx游戏”以及当发出“请确认是否进入”的提示信息时,需要用户发出“确认进入”的语音,才能进入xx游戏。因此,如果用户的终端最终进入了xx游戏,则说明用户的语音的识别结果与标准识别结果是一致的或者差异小。因此如果标准语音识别结果的排列顺序依次为文本“进入xx游戏”、“确认进入”。则可以将文本“进入xx游戏”作为用户第一段语音的参考语音识别结果。将文本“确认进入”作为用户第二段语音的参考语音识别结果。

在一些实施例中,语音数据可以是一个或多个麦克风采集得到的。“多个”是指至少两个。

在一些实施例中,可以是在交互式任务开启的过程中获取目标用户的任务开启语音数据进行模型的更新,以使得在目标用户进入交互式任务后,可以及时利用更新后的模型对目标用户的语音进行识别,提高语音识别任务的准确性,以更好的识别用户的语音。

步骤s204,获取更新前的目标模型,更新前的目标模型包括目标语音提取模型、目标特征提取模型以及目标语音识别模型,目标特征提取模型桥接在目标语音提取模型以及目标语音识别模型之间。

具体地,语音提取模型用于进行语音的提取,以得到有效的语音数据。例如语音提取模型可以包括语音增强(speechenhancement,se)功能以及语音分离(speechseparation,ss)功能的至少一种。语音分离是指从多个用户的语音数据中提取到目标用户的语音数据。语音增强是值将有用的语音信号从当各种各样的噪声干中提取出来,以抑制噪声。根据麦克风的数量,语音提取模型分为单通道语音提取模型以及多通道语语音提取模型,单通道语音提取模型用于提取单个麦克风采集得到的语音数据。多通道语音提取模型用于提取多个麦克风采集得到的语音数据。语音提取是以用户为导向的语音处理任务,目标为得到目标用户的有效语音数据。

目标特征提取模型用于提取目标用户语音数据的特征。经过语音提取模型的语音提取,得到的为目标用户的有效语音数据,但由于可能会存在部分的失真,因此可以用特征提取模型进行特征的提取,以减少语音失真对语音识别模型的影响。

语音识别模型也可以为asr(automaticspeechrecognition,自动语音识别)模型。是用于进行语音识别的声学模型根据语音识别模型的输出可以得到语音识别结果,可以是文本形式的语音识别结果,即语音识别模型输出的可以是文本,例如,假设用户输入的语音数据为“向右走”,则语音识别结果可以为“向右走”。语音识别模型可以是以样本语音流作为训练数据,进行学习训练得到的,语音识别模型经过识别,可以得到各个音素,对音素进行组合,可以得到语音识别结果。因此可以用语字错误率(worderrorrate,wer),字符错误率(charactererrorrate,cer)或句子错误率(sentenceerrorrate,ser)的至少一种衡量语音识别模型的性能。音素是根据语音的自然属性划分出来的语音单位。不同的语种可划分出不同的发音音素。以汉语普通话为例,可以包括22个辅音和10个元音,而英语国际音标共有48个音素,其中元音音素20个,辅音音素28个。

目标特征提取模型桥接在目标语音提取模型以及目标语音识别模型之间,即目标语音提取模型在前,目标语音识别模型在后。目标语音提取模型、目标特征提取模型以及目标语音识别模型可以是预先训练得到的模型。可以是联合训练得到的,也可以是单独训练得到的。也可以是先单独对每个模型进行训练,再联合进行训练。如图3所示,为一些实施例中提供的目标模型的架构图。

目标语音提取模型、目标特征提取模型以及目标语音识别模型的模型类型可以根据需要设置,例如目标模型可以是神经网络模型,例如cnn(convolutionalneuralnetwork,卷积神经网络)模型、dnn(deepneuralnetwork,深度神经网络)模型或者rnn(recurrentneuralnetwork,循环神经网络)模型中的至少一种。循环神经网络例如可以为lstm(longshort-termmemoryneuralnetwork,长短时记忆神经网络)模型或者bilstm(bi-directionallongshort-termmemory,双向长短时记忆神经网络)。

在一些实施例中,目标语音识别模型包括编码模型以及解码模型,编码模型用于进行特征编码,得到表示语意的编码特征,解码特征用于对编码特征进行解码,得到语音识别结果。一个样本语音可以包括多个训练音频帧,可以将一个训练音频帧的编码特征与上下文窗口中的音频帧的编码特征进行拼接,再输入到解码模型中,例如上下文窗口的大小为2w 1帧。因此能够获取得到获得反映上下文信息的编码特征,从而提高语音识别网络模型的精确性。

步骤s206,将第一样本语音数据输入到更新前的目标模型中,以利用目标语音提取模型、目标特征提取模型以及目标语音识别模型进行语音识别,得到第一模型输出结果。

具体地,模型输出结果是指目标模型输出的结果,例如语音识别结果例如可以包括音素对应的状态的概率,一个音素可以由多个状态例如3个状态组成,根据状态的概率可以获取目标状态,根据目标状态可以得到音素,根据音素可以得到词语,词语组合得到的句子为最终的语音识别结果。例如模型输出结果可以是语音识别模型的激活函数层输出的概率。得到第一样本语音数据后,将第一样本语音数据输入到更新前的目标模型,第一样本语音数据依次经过目标语音提取模型、目标特征提取模型以及目标语音识别模型进行处理,可以输出第一模型输出结果。例如,目标语音提取模型可以对第一样本语音数据进行语音提取,目标特征提取模型对提取后的语音进行特征提取,语音识别结果基于提取得到的特征得到第一模型输出结果。

步骤s208,根据第一模型输出结果以及第一参考语音识别结果得到目标特征提取模型对应的目标模型损失值。

具体地,目标模型损失值根据第一模型输出结果与第一参考语音识别结果得到的,例如第一模型输出结果可以包括模型输出的音素对应的概率分布,可以获取第一参考语音识别结果对应的音素对应的概率分布,基于概率分布的差异得到损失值,概率分布的与损失值成正相关关系,差异越大,则损失值越大。例如目标模型损失值可以用交叉熵损失函数计算得到。当然也可以结合其他损失函数计算得到目标模型损失值。例如可以结合目标语音提取模型对应的模型损失值得到。损失值可以根据损失函数(lossfunction)得到。

由于第一模型输出结果是目标语音识别模型输出的结果,因此根据第一模型输出结果与第一参考语音识别结果对应的概率分布的差异可以计算得到目标语音识别模型的损失值,但本申请实施例提供的方法中,对于中间的目标特征提取模型,通过根据目标语音识别模型对应的最终语音识别损失得到目标特征提取模型对应的目标损失值,因此可以使得目标特征提取模型朝着使语音识别能力增强的方向调整模型的参数,使得调整后的特征提取模型的参数更加准确。

步骤s210,根据目标模型损失值对更新前的目标模型中的目标特征提取模型的模型参数进行更新,得到更新后的目标模型,以利用更新后的目标模型对目标用户的语音数据进行语音识别。

具体地,得到模型损失值后,可以根据梯度下降方法,朝着使损失值下降的方向调整目标特征提取模型中的模型参数,并保持目标语音提取模型以及目标语音识别模型的参数不变,从而得到更新后的目标模型。例如,对目标特征提取模型进行模型参数更新的公式可以用表示,θspk表示针对说话人进行自适应更新的模型的模型参数,在本申请实施例中为特征提取模型的模型参数。l表示目标模型损失值,β表示控制学习率的超参数。

得到更新后的目标模型后,可以利用该更新后的目标模型对目标用户的语音数据进行语音识别。可以理解,模型的训练可以是迭代多次的,即更新后的目标模型可以是迭代训练得到的,当满足模型收敛条件时再停止训练,模型收敛条件可以是模型损失值的变化小于预设损失值变化,也可以是当模型参数的变化小于预设参数变化值。例如当目标用户对应的第一样本语音数据包括多个时,则可以训练多次,每次利用多个第一样本语音数据进行模型训练。

在一些实施例中,从目标特征提取模型的最后一层开始,根据目标模型损失值对目标特征提取模型的模型参数进行反向梯度更新,直至更新到目标特征提取模型的第一层停止参数更新,得到更新后的目标模型。

具体地,反向是指参数的更新与语音数据的处理的方向是相反的,由于参数的更新是反向传播的,因此可以根据目标模型损失值得到下降梯度,从目标特征提取模型的最后一层开始,根据下降梯度开始进行模型参数的梯度更新,直至到达目标特征提取模型的第一层,则停止更新。这样,在说话人自适应的训练过程中,对目标模型进行更新时,是仅更新位于中间的特征提取模型,解决了模块化解耦的问题,使得说话人自适应的模型方法可以不局限于任何特定的前端语音提取模型架构或后端的声学模型架构,即当前端的语音提取模型或者后端的声学模型架构需要变更时,也不会影响中间的经过说话人自适应的特征提取模型,从而可以灵活地在目标模型中引进先进的前端语音提取模型和asr声学模型架构或技术。

举个例子,假设asr模型即目标语音识别模型的架构需要改变,则由于模型架构的改变,需要重新训练asr模型,如果是利用asr模型进行说话人自适应的话,由于重新训练的asr模型的训练样本是非特定人的训练样本,因此如果语音识别系统需要进行说话人自适应,则又需要获取每个用户的语音数据,针对每个用户对asr模型进行训练,导致训练成本高。而通过在asr模型与语音提取模型中引入中间模型,即特征提取模型,且利用该中间模型进行说话人自适应,即根据说话人自适应改变该中间模型的参数,那么即使asr模型重新训练了,也不影响中间模型的参数,因此将重新训练的asr模型拼接至各个用户分别对应的特征提取模型之后,可以得到各个用户对应的自适应的目标模型,从而无需针对每个说话人重新对模型进行自适应训练,也可使目标模型具有说话人自适应的能力。

上述语音识别模型训练方法、装置、计算机设备和存储介质,通过在前端的语音提取模型以及后端的语音识别模型之间部署特征提取模型,既能够利用语音提取模型提取有效的语音数据,减少噪声,又能够利用特征提取模型提取语音特征,减少语音提取失真导致的影响。此外,利用目标用户的语音数据对该特征提取模型的参数进行更新,在提高了训练得到的目标模型根据说话人进行自适应识别的能力,即提高了对目标用户的语音识别效果的同时,也能够减少说话人自适应训练的复杂度。

在一些实施例中,如图4所示,利用目标语音提取模型、目标特征提取模型以及目标语音识别模型进行语音识别,得到第一模型输出结果包括以下步骤:

步骤s402,将第一样本语音数据输入到目标语音提取模型中进行语音提取,得到第一训练语音数据。

具体地,第一训练语音数据是经过目标语音提取模型提取得到的,减少了噪声的目标用户对应的语音。在进行语音提取时,可以将语音采集设备例如麦克风采集得到的语音流切分,得到多个音频帧分别对应的频谱,输入到语音提取模型中,提取得到对应的频谱。音频帧的长度可以是预设长度,例如25毫秒,目标语音提取模型可以是包括理想比率掩模(idealratiomask,irm)的深度吸引子网络(deepattractornet,danet)和深度提取网络(deepextractornet,denet)。denet网络中包括一个或多个卷积神经网络。卷积神经网络可以采用bilstm网络。bilstm网络用于将语音信号从低维空间映射到高维空间。danet网络用于在高维空间中嵌入吸引子(attractor)以结合语音信号中时频信息一起参与训练。一个语音数据可以分为多个音频帧,因此语音提取模型可以得到多个频谱。

在一个实施例中,目标语音提取模型的模型架构可以根据需要设置,例如可以是bilstm模型与一个全连接层级联得到。其中bilstm模型的网络层的数量可以根据需要设置,例如四层,各层网络层之间可以是窥孔连接。窥孔连接是区别与常规级联的一种模型连接方式,可以获取到更多的上下文信息。例如,目标语音提取模型每层具有600个隐节点,最后一个bilstm层之后连接一个全连接层。全连接层用于将600维的语音特征向量映射为高维的嵌入特征矩阵,例如24000维的嵌入特征向量。

步骤s404,将第一训练语音数据输入到目标特征提取模型中进行特征提取,得到第一训练特征。

具体地,目标特征提取模型对训练语音数据进行特征提取,得到各个频谱对应的特征,即第一训练特征。目标特征提取模型的模型架构可以根据需要设置,例如由于语音数据可以分为多个音频帧,为了联系频谱图的上下文来预测输出特征,可以采用bilstm或深层卷积神经网络。

在一些实施例中,目标特征提取模型也可以具有bilstm网络层,网络层之间可以是通过窥孔连接得到。例如,第二神经网络模型可以采用窥孔连接的两层bilstm,每层具有600个隐节点,可以映射得到40维的特征向量。

在一些实施例中,可以将掩蔽处理得到的频谱图(即第一训练语音数据)输入到目标特征提取模型的bilstm层,bilstm层对该频谱图处理得到中间特征,由于bilstm输出的中间特征可能是负数,而语音的特征一般而言是非负的,例如梅尔滤波器输出的fbanks是非负的,为了符合常规的特征的定义,因此可以对中间特征进行非负处理,例如对特征进行平方运算,得到非负特征。可以将非负特征作为第一训练特征。为了提高特征的准确性,也可以对非负特征进行微分处理,微分处理为可以模拟人耳运算的运算方式,使得该特征提取过程更符合人耳处理语音数据的过程。其中,微分处理可以包括逐元素求对数、计算一阶差分或者二阶差分的至少一种。

在一些实施例中,还可以对微分处理后的特征全局均值方差归一化,归一化处理所采用的方法可以是z-score标准化等归一化方法。

步骤s406,将第一训练特征输入到目标语音识别模型中进行语音识别,得到第一模型输出结果。

具体地,可以将各个音频帧对应的第一训练特征输入到目标语音识别模型,目标语音识别模型得到第一样本语音数据对应的音素状态对应的概率,音素状态是指组成音素的状态。

在一些实施例中,对于当前音频帧对应的第一训练特征,可以与其上下文窗口中的音频帧的第一训练特征进行拼接,将拼接特征输入到目标语音识别模型中,以使得特征的语音识别结果结合了上下文的语意信息,提高语音识别结果的准确性。例如拼接当前音频帧为中心的2w 1帧的上下文窗口中每个音频帧的训练特征。其中,w表示单侧上下文窗口的大小,具体大小可以根据需求自由设定,例如可以为6。

在一些实施例中,如图5所示,根据第一模型输出结果以及第一参考语音识别结果得到目标特征提取模型对应的目标模型损失值包括:

步骤s502,根据第一模型输出结果以及第一参考语音识别结果得到目标特征提取模型对应的第一模型损失值。

具体地,可以利用交叉熵损失函数计算得到第一模型损失值,交叉熵损失函数如公式(1)所示,其中,lce为交叉熵损失值,m为用于训练的样本语音流的批量大小,t为样本语音流中音频帧的帧数。表示参考语音识别结果对应的概率,为目标语音识别模型的softmax层后对第i个节点的输出(概率),目标语音识别模型中有k个输出节点,代表k个输出类别。

第一模型损失值也可以结合中心损失值得到的,中心损失值根据语音数据的音频帧对应的编码特征与音素类别中心向量的差异得到,可以表示如公式(2)。lct为表示中心损失值;为第t帧音频帧的编码特征,目标语音识别模型在第t个音频帧时刻的编码器的输出;表示第kt类编码特征的中心向量,i为样本语音流的索引。通过该公式计算得到中心损失值,使得在调整目标特征提取模型时,可以朝着减小音频帧对应的编码特征相对其中心向量的距离,使得属于同一类音素类别对应的编码特征的差距小,从而提高了编码的准确度。

可以将根据交叉熵损失函数得到的损失值和中心损失值得到第一模型损失值,例如将交叉熵损失函数得到的损失值和中心损失值进行加权求和,得到第一模型损失值。加权的权重可以根据需要设置。用公式(3)表示,其中lcl表示第一模型损失值,λcl为控制中心损失值在第一模型损失值所占权重的系数。可以根据需要设置,例如为0.01。

lcl=lce λcllct(3)

步骤s504,根据第一训练语音数据以及第一样本语音数据对应的第一参考语音数据得到第二模型损失值。

具体地,第一样本语音数据对应的第一参考语音数据是标准的参考语音数据,例如是在噪声小的干净环境下录制的目标用户对应的语音数据。第一训练语音数据与第一样本语音数据可以是以频谱的方式存在的。可以根据第一训练语音数据与第一参考语音数据的差异得到第二模型损失值,差异与第二模型损失值可以呈正相关关系。例如可以计算第一训练语音数据与第一参考语音数据之间的均方误差损失(meansquarederror,mse),作为第二模型损失值,计算第二模型损失值的公式可以用公式(4)表示。其中,m为用于训练的样本语音流的批量大小,i表示训练样本语音流的索引,||·||2表示向量的2-范数,ss表示目标语音提取模型输出的预测频谱,表示样本语音流的参考频谱。

步骤s506,根据第一模型损失值以及第二模型损失值计算得到目标特征提取模型对应的目标模型损失值。

具体地,目标模型损失值根据第一模型损失值以及第二模型损失值得到,例如可以进行加权求和得到。

在一些实施例中,根据第一模型损失值以及对应的第一权重,第二模型损失值以及对应的第二权重进行加权求和计算,得到目标特征提取模型对应的目标模型损失值。

具体地,第一权重以及第二权重可以根据需要设置,例如第一权重可以为1,第二权重可以为2。可以将第一模型损失值程乘以第一权重,得到a,将第二模型损失值程乘以第二权重,得到b,将a与b相加,得到目标模型损失值。

本申请实施例中,目标模型损失值是根据第一模型损失值和第二模型损失值得到的,而第一模型损失值根据第一模型输出结果与第一参考语音识别结果得到,因此可以用于表示目标语音识别模型的模型损失。第二模型损失值根据第一训练语音数据与第一样本语音数据对应的第一参考语音数据得到,因此可以用于表示目标语音提取模型的模型损失,故结合这两个损失值得到目标特征提取模型的模型损失,可以使得目标特征提取模型综合考虑这两个模型的损失进行训练,学习得到的模型参数可以协调目标语音提取模型与目标语音识别模型的之间的差异,从而提高了整个目标模型的语音识别效果。

在一些实施例中,更新前的目标模型的各个模型可以是联合训练得到的,联合训练的步骤可以包括:获取训练用户对应的第二样本语音数据以及第二样本语音数据对应的第二参考语音识别结果,组成训练样本;根据训练样本对第一语音提取模型、第一特征提取模型以及第一语音识别模型进行联合训练,得到更新前的目标模型,其中联合训练时根据联合损失值进行模型参数的更新,联合损失值根据第一语音提取模型对应的模型损失值以及第一语音识别模型对应的模型损失值确定。

具体地,训练用户的个数可以用多个,例如几万个,该训练用户可以不是指定的用户,即非特定人,因此训练得到的更新前的目标模型是非特定人(speakerindependent,si)对应的语音识别模型。联合训练是指多个模型是结合在一起进行训练的,可以是端到端的训练过程,第一语音提取模型是进行联合训练之前的语音提取模型,第一特征提取模型是进行联合训练之前的特征提取模型,第一语音识别模型是进行联合训练之前的语音识别模型。联合损失值是联合训练时计算得到的模型损失值。联合损失值是根据第一语音提取模型对应的模型损失值以及第一语音识别模型对应的模型损失值确定的。例如可以是第一语音提取模型对应的模型损失值与第一语音识别模型对应的模型损失值进行加权求和得到。

第一语音提取模型对应的模型损失值可以根据语音提取模型的预测输出与真实结果的差异得到,例如可以参考公式(4)得到第一语音提取模型对应的模型损失值,只是训练时输入的样本语音流不同。第一语音识别模型对应的模型损失值根据语音识别模型的预测输出与真实输出的差异得到,例如可以参考公式(3)得到,只是训练时输入的数据不同。

在一些实施例中,得到联合损失值后,朝着使联合损失值下降的方向调整第一语音提取模型、第一特征提取模型以及第一语音识别模型的模型参数,将调整后的第一语音提取模型作为目标语音提取模型,将调整后的第一特征提取模型作为目标特征提取模型,将调整后的第一语音识别模型作为目标语音识别模型,组成更新前的目标模型。当需要对目标模型进行说话人自适应时,可获取目标说话人即目标用户的样本语音数据,对目标模型中的特征提取模型进行更新,以得到针对该目标用户进行自适应参数更新的目标模型。

在一些实施例中,根据联合损失值进行参数的反向传播的公式可以用公式(5)表示,其中表示联合损失值,可以为lcl λsslmse,即可以与计算目标模型损失值用相同的损失函数计算得到。θear表示目标模型,θextract表示语音提取模型中的模型参数,θadapt表示特征提取模型中的模型参数,θrecog表示语音识别模型的模型参数,α表示用于控制学习率的超参数。例如目标语音提取模型的模型参数根据联合损失值进行反向传播的公式可以如公式(6)所示。其中θextract表示语音提取模型的模型参数,,表示特征提取模型中除bilstm之外的模型参数,表示特征提取模型中bilstm中的模型参数。表示语音提取模型中的掩蔽矩阵,v表示语音提取模型中的嵌入特征矩阵。λss是加权因子,用于调整在联合训练时语音提取模型对应的模型损失值的“重要性”。

本申请实施例中,在进行联合训练时,根据第一语音提取模型对应的模型损失值以及第一语音识别模型对应的模型损失值确定联合损失值,因此可以综合考虑语音提取模型的模型损失以及语音识别模型的模型损失进行模型训练,因此可以不以任何单个模块性能受损作为代价进行训练,且协调了语音提取任务和语音识别任务之间的差异,使得得到的目标模型准确度更高。而且目标模型中每个模型均可以综合学习来自复杂声学环境语音信号中的干扰特征,从而可以保证全局的语音处理任务的性能,提高语音识别准确性;此外,由于网路架构中的每个模型支持灵活独立选择,单独每个模型均可实现最优配置,而无需妥协单独任一模型,从而可以同时兼顾局部的每个语音处理任务的性能,提高语音客观可懂度。

本申请实施例中,在进行联合训练时,根据联合损失值调整特征提取模型的参数,从而使得训练后的特征提取模型提取得到的特征具有鲁棒性,即本申请实施例提供的特征提取模型可以是一种中间过渡的鲁棒表征模型,故即使是在不同的环境或者对不同的用户进行语音识别,也能够提取得到稳定可靠的表示用户语音特性的特征,从而提高语音识别的准确度。

在一些实施例中,在联合训练第一语音提取模型、第一特征提取模型以及第一语音识别模型之前,可以对语音提取模型、特征提取模型或者语音识别模型中的至少一个进行单独的训练,以减少联合训练的次数,提高联合训练的效率。例如,可以先利用训练用户的样本对语音提取模型进行训练,得到第一语音提取模型。再利用训练用户的样本对语音识别模型进行模型训练,得到第一语音识别模型。当得到第一语音提取模型以及第一语音识别模型后,获取初始特征提取模型,将第一语音提取模型、初始特征提取模型以及第一语音识别模型按照顺序组合在一起,再次进行模型的训练,在模型训练时,可以只更新组合模型中,初始特征提取模型的模型参数,而不对第一语音提取模型以及第一语音识别模型的参数进行更新,即冻结第一语音提取模型以及第一语音识别模型中的模型参数,从而能够快速的训练得到第一特征提取模型。

利用训练用户的样本语音对语音提取模型进行单独训练时,该语音提取模型的模型损失值的计算可以参照公式(4)进行计算。利用训练用户的样本对初始特征提取模型进行训练时,该初始特征提取模型的模型损失值的计算可以参照公式(3)进行计算。即初始特征提取模型对应的反向传播公式可以如公式(7)所示。

利用训练用户的样本语音对语音识别模型进行单独训练时,该语音识别模型的模型损失值的计算可以参照公式(3)进行计算。

在一些实施例中,如图6所示,第一语音识别模型的得到步骤包括:

步骤s602,获取训练用户对应的第三样本语音数据对应的各个训练音频帧,以及训练音频帧对应的目标音素类别。

具体地,可以根据预设时间长度对第三样本语音数据进行切分,得到多个音频帧,例如预设时间长度可以为15ms。各个训练音频帧对应的目标音素类别是预先标注的,可以是自动标注的。音素类别可以根据需要划分,例如在普通话可以具有1.2万个类别。

步骤s604,利用初始语音识别模型的编码模型提取得到各个训练音频帧对应的编码特征。

具体地,语音识别模型可以包括编码器以及解码器,编码器将输入映射到深度特征空间,因此可以利用初始语音识别模型的编码模型提取得到各个训练音频帧对应的编码特征。语音识别模型可以是基于cldnn的声学模型,cldnn是指包括cnn、lstm和dnn的模型。其中cnn层和lstm层的输出均可以进行批量归一化,以达到更快的收敛和更好的泛化。语音识别模型的输出可以是上下文相关的音素。

步骤s606,根据目标音素类别的训练音频帧对应的编码特征得到各个目标音素类别对应的音素类别中心向量。

具体地,音素类别中心向量用于表示一个目标音素类别对应的所有编码特征的中心,可以利用聚类中心表示。

步骤s608,根据训练音频帧对应的编码特征与对应的音素类别中心向量的差异确定中心损失值。

具体地,中心损失值可以是根据编码特征与音素音素类别中心向量的差异差异得到的,例如可以参考公式(2)得到,差异越大,则中心损失值越大。因此通过中心损失值可以衡量相同音素类别的编码特征的差距,通过惩罚编码特征与其对应类的中心点之间的距离,能够提高编码特征的区分能力,从而提高语音识别模型的语音识别准确度。

步骤s610,根据中心损失值调整初始语音识别模型中的模型参数,得到第一语音识别模型。

具体地,可以朝着中心损失值变小的方向调整初始语音识别模型中的模型参数,可以经过多次迭代训练,得到第一语音识别模型。

在一些实施例中,可以结合交叉熵损失函数计算得到的损失值以及中心损失值得到该语音识别模型的损失值。例如可以根据公式(3)计算得到初始语音识别模型对应的损失值。

本申请实施例提供的方法可以用于基于单通道的语音提取模型,经过试验得到,在复杂的环境下,在即使利用一个麦克风对语音数据进行采集,利用目标模型进行语音识别也能得到良好的语音识别效果。而如果是将语音处理任务拆分为完全独立的两个模型:语音提取模型和语音识别模型。并从语音提取模型音和语音识别模型中选择任一个模型进行说话人自适应,则在进行说话人自适应后,如果语音提取模型音或者语音识别模型需要更新,则需要重新进行说话人适应的模型训练步骤。而本申请实施例提供的模型结构以及说话人自适应的模型训练方法,对桥接于目标语音提取模型以及目标语音识别模型之间的目标特征提取模型进行说话人自适应训练,使得语音提取模型音或者语音识别模型需要更新时,也不影响说话人自适应,从而可以解决模型模块化解耦的问题,也可以随时根据需要对语音提取模型以及目标语音识别模型进行更新,灵活度高。

而且,经过中间的鲁棒表征模型(特征提取模型)连接前端的语音提取和后端的语音识别模型,使整个目标模型成为一个可以端到端反向传播的网络,并且由于模块化架构,整个模型的网络可以采用“课程表”训练方法(curriculumlearning),例如首先对前端语音提取和后端语音识别模型先进行单独的预训练,然后端到端地对整个模型进行联合训练,最后针对其中的特征提取模型进行说话人自适应。相比其它相同复杂程度的网络的端到端联合训练不容易收敛的缺点,本申请实施例提供的这种“课程表”训练方法使整个网络的训练易于收敛。本申请实施例提供的梯度下降方法可以是小批量随机梯度下降方法。

如图7所示,在一个实施例中,提出了一种语音识别方法,本实施例主要以该方法应用于上述图1中的服务器120来举例说明。具体可以包括以下步骤:

步骤s702,获取目标用户对应的目标语音数据。

具体地,得到更新后的目标模型后,由于更新后的目标模型是基于说话人即目标用户自适应的模型,因此当需要对目标用户进行语音识别时,可以获取目标用户对应的目标语音数据。

步骤s704,获取更新后的目标模型,更新后的目标模型包括目标语音提取模型、目标特征提取模型以及目标语音识别模型,目标特征提取模型桥接在目标语音提取模型以及目标语音识别模型之间,目标特征提取模型中的模型参数根据目标用户对应的第一样本语音数据以及对应的第一参考语音识别结果更新得到。

具体地,建立了目标用户以及说话人自适应后的目标模型的对应关系,因此可以获取目标用户对应的更新后的目标模型。该更新后的目标模型是采用本申请实施例提供的语音识别模型训练方法训练得到的。

步骤s706,将目标语音数据输入到更新后的目标模型中,得到目标语音识别结果。

具体地,语音识别结果可以是文本形式的语音识别结果。得到语音识别结果后,可以在终端中展示语音识别结果,也可以是基于该语音识别结果发出控制指令。例如,假设语音识别结果为“向前走”,则可以控制游戏中目标用户控制的游戏人物向前走。

上述语音识别方法,通过在前端的语音提取模型以及后端的语音识别模型之间部署特征提取模型,既能够利用语音提取模型提取有效的语音数据,减少噪声,又能够利用特征提取模型提取语音特征,减少语音提取失真导致的影响。此外,利用目标用户的语音数据对该特征提取模型的参数进行更新,在提高了训练得到的目标模型根据说话人进行自适应识别的能力,即提高了对目标用户的语音识别效果的同时,也能够减少自适应训练的复杂度。

在一些实施例中,语音识别方法还可以包括以下步骤:获取目标语音数据对应的接收用户;获取目标语音提取模型对目标语音数据进行提取得到的提取语音数据;将提取语音数据以及目标语音识别结果发送给接收用户对应的终端,以使得终端播放提取语音数据以及展示目标语音识别结果。

具体地,目标语音数据是目标用户发送给接收用户的,提取语音数据是利用目标语音提取模型提取得到的语音数据,因此可以过滤掉目标语音数据中的噪声。提取语音数据及目标语音识别结果可以是一起发送给接收用户对应的终端的,也可以是先后发送的。接收用户对应的终端接收到该提取语音数据以及目标语音识别结果后,可以播放提取语音数据以及展示语音识别结果,以使得接收用户可以根据需要确定时收听语音数据还是查看语音识别结果。

本申请实施例提供的方法,通过目标语音提取模型对目标语音数据进行语音提取,可以减少目标语音数据中的噪声,提高语音通话质量。同时通过展示语音识别结果,可以使得用户利用语音识别结果理解语音数据所要表达的意思,因此语音沟通效率高。

举个实际的例子,假设在游戏场景中,在组队进行游戏时需要进行语音通话时,一般情况下,由于既有近端讲话的人声也有游戏过程中手机播放的背景音的影响,因此通话质量比较低。而通过本申请实施例提供的语音提取模型可以提取得到滤除了噪声的语音,提高了通话质量,且在语音会话界面上显示语音识别结果,可以使得用户借助语音识别得到的文字理解语音所要表达的意思。

在一些实施例中,目标用户与接收用户可以是进行语音通话的用户,如图8所示,为一些实施例中语音通话界面的示意图。在语音通话时,随着语音通话的进行,语音通话界面展示的语音识别结果可跟随语音通话中语音数据的变化进行更新。

在一些实施例中,本申请实施例提供的方法具体可以包括以下步骤:

1、对初始语音识别模型进行训练,得到第一语音识别模型。

具体地,可以获取任意用户即非特定人对应的语音数据以及对应的参考语音识别结果,对初始语音识别模型进行训练,得到第一语音识别模型。

2、对初始语音提取模型进行训练,得到第一语音提取模型。

具体地,可以获取任意用户对应的语音数据以及对应的参考语音提取结果,对初始语音提取模型进行训练,得到第一语音提取模型。可以理解,步骤1以及步骤2可以是同步进行的。

如图9a所示,可以获取非特定人的带有噪声的语音数据,以及将该语音数据对应的滤除噪声的干净语音数据作为参考语音数据对语音提取模型进行训练,基于参考语音数据的监督进行参数的反向传播,训练语音提取模型。

3、将第一语音提取模型、初始特征提取模型以及第一语音提取模型按照顺序依次拼接,基于拼接的模型对初始特征提取模型进行训练,得到第一特征提取模型。

具体地,可以冻结第一语音提取模型以及第一语音提取模型中的参数,获取训练用户对应的训练语音数据、对应的干净的参考语音数据以及对应的参考文本,对拼接的模型中的初始特征提取模型进行训练,得到第一特征提取模型。

4、根据训练样本对第一语音提取模型、第一特征提取模型以及第一语音提取模型进行联合训练,得到更新前的目标模型。

例如,如图9b所示,可以向语音提取模型输入训练用户的训练语音数据,该训练可以是非特定人的语音数据,非特定人的语音数据是指该语音数据没有指定用户。该训练语音数据经过语音提取模型后,输出提取得到的语音提取数据,根据非特定人的参考语音数据的监督,计算得到语音提取模型中的模型损失值。提取得到的语音提取数据经过特征提取模型以及语音识别模型,输出语音识别文本,基于非特定人的参考文本的监督,计算得到语音识别模型中的模型损失值,基于语音提取模型中的模型损失值以及语音识别模型中的模型损失值的加权得到联合损失值,基于联合损失值反向更新初始模型中的各个模型的模型参数,得到更新前的目标模型。

5、获取目标用户,获取目标用户对应的第一样本语音数据以及第一样本语音数据对应的第一参考语音识别结果。

具体地,可以获取需要进行说话人自适应的用户作为目标用户,获取该目标用户的样本语音数据以及第一参考语音识别结果。

6、将第一样本语音数据输入到更新前的目标模型中,以利用目标语音提取模型、目标特征提取模型以及目标语音识别模型进行语音识别,得到第一模型输出结果。

7、根据第一模型输出结果以及第一参考语音识别结果得到目标特征提取模型对应的目标模型损失值。

具体地,如图9c所示,可以向语音提取模型输入目标用户(即特定人)的自适应语音数据,该训练语音数据经过语音提取模型后,输出提取得到的语音提取数据,根据干净的目标用户的参考语音数据的监督,计算得到语音提取模型中的模型损失值。提取得到的语音提取数据经过特征提取模型以及语音识别模型,输出语音识别文本,基于特定人即目标用户的标准参考文本的监督,计算得到语音识别模型中的模型损失值,基于语音提取模型中的模型损失值以及语音识别模型中的模型损失值的加权得到特征提取模型对应的目标模型损失值,冻结语音提取模型以及语音识别模型中的模型参数,基于目标模型损失值仅对更新前的目标模型中的目标特征提取模型的模型参数进行更新,得到更新后的目标语音模型。即只对特征提取模型中的模型参数进行说话人自适应。

8、利用更新后的目标模型对目标用户的语音数据进行语音识别。

需要说明的是,本申请的一些实施例中,针对不同阶段训练得到的语音识别模型、语音提取模型以及特征提取模型,在其名称之前加上了不同的名字进行区分,例如语音识别模型分为初始语音识别模型、第一语音识别模型以及目标语音识别模型,可以理解,这些名称是为了区分不同的训练阶段,但也可存在不同的训练阶段采用相同的名称的情况,本领域技术人员可以理解,在训练时,对于同一模型,其模型的参数可以是不断的更新的。

在一个实施例中,对来自“受背景音乐干扰”和“受其他说话人干扰”两种声学环境的语音,在五种不同snr信噪比条件下(0db,5db,10db,15db和20db),对基于不同语音识别方法的字错误率(wer)进行测试对比。测试结果可参考下表一。如下表一所示,基于本申请实施例提出的ear模型进行语音识别,无论是在单任务λss=0状态下,还是在多任务λss≠0(如λss=0.1)下,其字错误率一致地优于其他语音识别系统,如基于干净语音或者有干扰语音训练的语音识别模型asr,语音提取模型ss及语音识别模型asr的级联系统。其中,这里的ear模型是本申请实施例提供的未进行说话人自适应的系统,即更新前的目标模型。

表一在五种snr信噪比条件下基于不同语音识别方法对来自两种声学环境的语音进行识别的字错误率

如图10所示,在一个实施例中,提供了一种语音识别模型训练装置,该语音识别装置可以集成于上述的服务器120中,具体可以包括第一样本语音数据获取模块1002、更新前的目标模型获取模块1004、第一模型输出结果得到模块1006、目标模型损失值得到模块1008以及更新后的目标模型得到模块1010。

第一样本语音数据获取模块1002,用于获取目标用户对应的第一样本语音数据以及第一样本语音数据对应的第一参考语音识别结果。

更新前的目标模型获取模块1004,用于获取更新前的目标模型,更新前的目标模型包括目标语音提取模型、目标特征提取模型以及目标语音识别模型,目标特征提取模型桥接在目标语音提取模型以及目标语音识别模型之间。

第一模型输出结果得到模块1006,用于将第一样本语音数据输入到更新前的目标模型中,以利用目标语音提取模型、目标特征提取模型以及目标语音识别模型进行语音识别,得到第一模型输出结果。

目标模型损失值得到模块1008,用于根据第一模型输出结果以及第一参考语音识别结果得到目标特征提取模型对应的目标模型损失值。

更新后的目标模型得到模块1010,用于根据目标模型损失值对更新前的目标模型中的目标特征提取模型的模型参数进行更新,得到更新后的目标模型,以利用更新后的目标模型对目标用户的语音数据进行语音识别。

在一些实施例中,第一模型输出结果得到模块1006用于:将第一样本语音数据输入到目标语音提取模型中进行语音提取,得到第一训练语音数据;将第一训练语音数据输入到目标特征提取模型中进行特征提取,得到第一训练特征;将第一训练特征输入到目标语音识别模型中进行语音识别,得到第一模型输出结果。

在一些实施例中,目标模型损失值得到模块1008用于:根据第一模型输出结果以及第一参考语音识别结果得到目标特征提取模型对应的第一模型损失值;根据第一训练语音数据以及第一样本语音数据对应的第一参考语音数据得到第二模型损失值;根据第一模型损失值以及第二模型损失值计算得到目标特征提取模型对应的目标模型损失值。

在一些实施例中,目标模型损失值得到模块1008用于:根据第一模型损失值以及对应的第一权重、第二模型损失值以及对应的第二权重进行加权求和计算,得到目标特征提取模型对应的目标模型损失值。

在一些实施例中,更新前的目标模型获取模块1004用于:获取训练用户对应的第二样本语音数据以及第二样本语音数据对应的第二参考语音识别结果,组成训练样本;根据训练样本对第一语音提取模型、第一特征提取模型以及第一语音识别模型进行联合训练,得到更新前的目标模型,其中联合训练时根据联合损失值进行模型参数的更新,联合损失值根据第一语音提取模型对应的模型损失值以及第一语音识别模型对应的模型损失值确定。

在一些实施例中,第一语音识别模型的得到模块用于:获取训练用户对应的第三样本语音数据对应的各个训练音频帧,以及训练音频帧对应的目标音素类别;利用初始语音识别模型的编码模型提取得到各个训练音频帧对应的编码特征;根据目标音素类别的训练音频帧对应的编码特征得到各个目标音素类别对应的音素类别中心向量;根据训练音频帧对应的编码特征与对应的音素类别中心向量的差异确定中心损失值;根据中心损失值调整初始语音识别模型中的模型参数,得到第一语音识别模型。

在一些实施例中,更新后的目标模型得到模块1010用于:从目标特征提取模型的最后一层开始,根据目标模型损失值对目标特征提取模型的模型参数进行反向梯度更新,直至更新到目标特征提取模型的第一层停止参数更新,得到更新后的目标模型。

在一些实施例中,第一样本语音数据获取模块用于:获取目标用户触发目标任务开启的任务开启语音数据,作为目标用户对应的第一样本语音数据;获取触发目标任务开启的标准语音识别结果,作为第一样本语音数据对应的第一参考语音识别结果。

如图11所示,在一个实施例中,提供了一种语音识别装置,该语音识别装置可以集成于上述的服务器120中,具体可以包括目标语音数据获取模块1102、更新后的目标模型获取模块1104以及目标语音识别结果得到模块1106。

目标语音数据获取模块1102,用于获取目标用户对应的目标语音数据。

更新后的目标模型获取模块1104,用于获取更新后的目标模型,更新后的目标模型包括目标语音提取模型、目标特征提取模型以及目标语音识别模型,目标特征提取模型桥接在目标语音提取模型以及目标语音识别模型之间,目标特征提取模型中的模型参数根据目标用户对应的第一样本语音数据以及对应的第一参考语音识别结果更新得到。

目标语音识别结果得到模块1106,用于将目标语音数据输入到更新后的目标模型中,得到目标语音识别结果。

在一些实施例中,语音识别装置还包括:接收用户获取模块,用于获取目标语音数据对应的接收用户;提取语音数据得到模块,用于获取目标语音提取模型对目标语音数据进行提取得到的提取语音数据;发送模块,用于将提取语音数据以及目标语音识别结果发送给接收用户对应的终端,以使得终端播放提取语音数据以及展示目标语音识别结果。

图12示出了一个实施例中计算机设备的内部结构图。该计算机设备具体可以是图1中的服务器120。如图12所示,该计算机设备包括通过系统总线连接的处理器、存储器以及网络接口。其中,存储器包括非易失性存储介质和内存储器。该计算机设备的非易失性存储介质存储有操作系统,还可存储有计算机程序,该计算机程序被处理器执行时,可使得处理器实现语音识别方法。该内存储器中也可储存有计算机程序,该计算机程序被处理器执行时,可使得处理器执行语音识别方法。

本领域技术人员可以理解,图12中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。

在一个实施例中,本申请提供的语音识别装置可以实现为一种计算机程序的形式,计算机程序可在如图12所示的计算机设备上运行。计算机设备的存储器中可存储组成该语音识别装置的各个程序模块,比如,图10所示的第一样本语音数据获取模块1002、更新前的目标模型获取模块1004、第一模型输出结果得到模块1006、目标模型损失值得到模块1008以及更新后的目标模型得到模块1010。各个程序模块构成的计算机程序使得处理器执行本说明书中描述的本申请各个实施例的语音识别方法中的步骤。

例如,图12所示的计算机设备可以通过如图10所示的语音识别装置中的第一样本语音数据获取模块1002获取目标用户对应的第一样本语音数据以及第一样本语音数据对应的第一参考语音识别结果。通过更新前的目标模型获取模块1004获取更新前的目标模型,更新前的目标模型包括目标语音提取模型、目标特征提取模型以及目标语音识别模型,目标特征提取模型桥接在目标语音提取模型以及目标语音识别模型之间。通过第一模型输出结果得到模块1006将第一样本语音数据输入到更新前的目标模型中,以利用目标语音提取模型、目标特征提取模型以及目标语音识别模型进行语音识别,得到第一模型输出结果。通过目标模型损失值得到模块1008根据第一模型输出结果以及第一参考语音识别结果得到目标特征提取模型对应的目标模型损失值。通过更新后的目标模型得到模块1010根据目标模型损失值对更新前的目标模型中的目标特征提取模型的模型参数进行更新,得到更新后的目标模型,以利用更新后的目标模型对目标用户的语音数据进行语音识别。

在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器存储有计算机程序,计算机程序被处理器执行时,使得处理器执行上述语音识别方法的步骤。此处语音识别方法的步骤可以是上述各个实施例的语音识别方法中的步骤。

在一个实施例中,提供了一种计算机可读存储介质,存储有计算机程序,计算机程序被处理器执行时,使得处理器执行上述语音识别方法的步骤。此处语音识别方法的步骤可以是上述各个实施例的语音识别方法中的步骤。

应该理解的是,虽然本申请各实施例的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,各实施例中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(rom)、可编程rom(prom)、电可编程rom(eprom)、电可擦除可编程rom(eeprom)或闪存。易失性存储器可包括随机存取存储器(ram)或者外部高速缓冲存储器。作为说明而非局限,ram以多种形式可得,诸如静态ram(sram)、动态ram(dram)、同步dram(sdram)、双数据率sdram(ddrsdram)、增强型sdram(esdram)、同步链路(synchlink)dram(sldram)、存储器总线(rambus)直接ram(rdram)、直接存储器总线动态ram(drdram)、以及存储器总线动态ram(rdram)等。

以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。

以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。


技术特征:

1.一种语音识别模型训练方法,所述方法包括:

获取目标用户对应的第一样本语音数据以及所述第一样本语音数据对应的第一参考语音识别结果;

获取更新前的目标模型,所述更新前的目标模型包括目标语音提取模型、目标特征提取模型以及目标语音识别模型,所述目标特征提取模型桥接在所述目标语音提取模型以及所述目标语音识别模型之间;

将所述第一样本语音数据输入到所述更新前的目标模型中,以利用所述目标语音提取模型、所述目标特征提取模型以及所述目标语音识别模型进行语音识别,得到第一模型输出结果;

根据所述第一模型输出结果以及所述第一参考语音识别结果得到所述目标特征提取模型对应的目标模型损失值;

根据所述目标模型损失值对所述更新前的目标模型中的目标特征提取模型的模型参数进行更新,得到更新后的目标模型,以利用所述更新后的目标模型对所述目标用户的语音数据进行语音识别。

2.根据权利要求1所述的方法,其特征在于,所述利用所述目标语音提取模型、所述目标特征提取模型以及所述目标语音识别模型进行语音识别,得到第一模型输出结果包括:

将所述第一样本语音数据输入到所述目标语音提取模型中进行语音提取,得到第一训练语音数据;

将所述第一训练语音数据输入到所述目标特征提取模型中进行特征提取,得到第一训练特征;

将所述第一训练特征输入到所述目标语音识别模型中进行语音识别,得到第一模型输出结果。

3.根据权利要求2所述的方法,其特征在于,所述根据所述第一模型输出结果以及所述第一参考语音识别结果得到所述目标特征提取模型对应的目标模型损失值包括:

根据所述第一模型输出结果以及所述第一参考语音识别结果得到所述目标特征提取模型对应的第一模型损失值;

根据所述第一训练语音数据以及所述第一样本语音数据对应的第一参考语音数据得到第二模型损失值;

根据所述第一模型损失值以及所述第二模型损失值计算得到所述目标特征提取模型对应的目标模型损失值。

4.根据权利要求3所述的方法,其特征在于,所述根据所述第一模型损失值以及所述第二模型损失值计算得到所述目标特征提取模型对应的目标模型损失值包括:

根据所述第一模型损失值以及对应的第一权重、所述第二模型损失值以及对应的第二权重进行加权求和计算,得到所述目标特征提取模型对应的目标模型损失值。

5.根据权利要求1所述的方法,其特征在于,所述获取更新前的目标模型的步骤包括:

获取训练用户对应的第二样本语音数据以及所述第二样本语音数据对应的第二参考语音识别结果,组成训练样本;

根据所述训练样本对第一语音提取模型、第一特征提取模型以及第一语音识别模型进行联合训练,得到所述更新前的目标模型,其中联合训练时根据联合损失值进行模型参数的更新,所述联合损失值根据所述第一语音提取模型对应的模型损失值以及所述第一语音识别模型对应的模型损失值确定。

6.根据权利要求5所述的方法,其特征在于,所述第一语音识别模型的得到步骤包括:

获取训练用户对应的第三样本语音数据对应的各个训练音频帧,以及所述训练音频帧对应的目标音素类别;

利用初始语音识别模型的编码模型提取得到各个所述训练音频帧对应的编码特征;

根据所述目标音素类别的训练音频帧对应的编码特征得到各个所述目标音素类别对应的音素类别中心向量;

根据所述训练音频帧对应的编码特征与对应的音素类别中心向量的差异确定中心损失值;

根据所述中心损失值调整所述初始语音识别模型中的模型参数,得到所述第一语音识别模型。

7.根据权利要求1所述的方法,其特征在于,所述根据所述目标模型损失值对所述更新前的目标模型中的目标特征提取模型的模型参数进行更新,得到更新后的目标模型包括:

从所述目标特征提取模型的最后一层开始,根据所述目标模型损失值对所述目标特征提取模型的模型参数进行反向梯度更新,直至更新到所述目标特征提取模型的第一层停止参数更新,得到更新后的目标模型。

8.根据权利要求1所述的方法,其特征在于,所述获取目标用户对应的第一样本语音数据以及所述第一样本语音数据对应的第一参考语音识别结果包括:

获取目标用户触发目标任务开启的任务开启语音数据,作为所述目标用户对应的第一样本语音数据;

获取触发所述目标任务开启的标准语音识别结果,作为所述第一样本语音数据对应的第一参考语音识别结果。

9.一种语音识别方法,所述方法包括:

获取目标用户对应的目标语音数据;

获取更新后的目标模型,所述更新后的目标模型包括目标语音提取模型、目标特征提取模型以及目标语音识别模型,所述目标特征提取模型桥接在所述目标语音提取模型以及所述目标语音识别模型之间,所述目标特征提取模型中的模型参数根据所述目标用户对应的第一样本语音数据以及对应的第一参考语音识别结果更新得到;

将所述目标语音数据输入到所述更新后的目标模型中,得到目标语音识别结果。

10.根据权利要求9所述的方法,其特征在于,所述方法还包括:

获取所述目标语音数据对应的接收用户;

获取所述目标语音提取模型对所述目标语音数据进行提取得到的提取语音数据;

将所述提取语音数据以及所述目标语音识别结果发送给所述接收用户对应的终端,以使得所述终端播放所述提取语音数据以及展示所述目标语音识别结果。

11.根据权利要求9所述的方法,其特征在于,所述方法还包括:

获取所述目标用户对应的第一样本语音数据以及所述第一样本语音数据对应的第一参考语音识别结果;

获取更新前的目标模型,所述更新前的目标模型包括目标语音提取模型、目标特征提取模型以及目标语音识别模型,所述目标特征提取模型桥接在所述目标语音提取模型以及所述目标语音识别模型之间;

将所述第一样本语音数据输入到所述更新前的目标模型中,以利用所述目标语音提取模型、所述目标特征提取模型以及所述目标语音识别模型进行语音识别,得到第一模型输出结果;

根据所述第一模型输出结果以及所述第一参考语音识别结果得到所述目标特征提取模型对应的目标模型损失值;

根据所述目标模型损失值对所述更新前的目标模型中的目标特征提取模型的模型参数进行更新,得到所述更新后的目标模型。

12.一种语音识别模型训练装置,所述装置包括:

第一样本语音数据获取模块,用于获取目标用户对应的第一样本语音数据以及所述第一样本语音数据对应的第一参考语音识别结果;

更新前的目标模型获取模块,用于获取更新前的目标模型,所述更新前的目标模型包括目标语音提取模型、目标特征提取模型以及目标语音识别模型,所述目标特征提取模型桥接在所述目标语音提取模型以及所述目标语音识别模型之间;

第一模型输出结果得到模块,用于将所述第一样本语音数据输入到所述更新前的目标模型中,以利用所述目标语音提取模型、所述目标特征提取模型以及所述目标语音识别模型进行语音识别,得到第一模型输出结果;

目标模型损失值得到模块,用于根据所述第一模型输出结果以及所述第一参考语音识别结果得到所述目标特征提取模型对应的目标模型损失值;

更新后的目标模型得到模块,用于根据所述目标模型损失值对所述更新前的目标模型中的目标特征提取模型的模型参数进行更新,得到更新后的目标模型,以利用所述更新后的目标模型对所述目标用户的语音数据进行语音识别。

13.一种语音识别装置,所述装置包括:

目标语音数据获取模块,用于获取目标用户对应的目标语音数据;

更新后的目标模型获取模块,用于获取更新后的目标模型,所述更新后的目标模型包括目标语音提取模型、目标特征提取模型以及目标语音识别模型,所述目标特征提取模型桥接在所述目标语音提取模型以及所述目标语音识别模型之间,所述目标特征提取模型中的模型参数根据所述目标用户对应的第一样本语音数据以及对应的第一参考语音识别结果更新得到;

目标语音识别结果得到模块,用于将所述目标语音数据输入到所述更新后的目标模型中,得到目标语音识别结果。

14.一种计算机设备,其特征在于,包括存储器和处理器,所述存储器中存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行权利要求1至8中任一项权利要求所述语音识别模型训练方法或者9至11任一项权利要求所述语音识别方法中的至少一种方法的步骤。

15.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行权利要求1至8中任一项权利要求所述语音识别模型训练方法或者9至11任一项权利要求所述语音识别方法中的至少一种方法的步骤。

技术总结
本申请涉及一种语音识别以及模型训练方法、装置、计算机设备和存储介质,涉及人工智能,语音识别模型训练方法包括:获取目标用户对应的第一样本语音数据以及第一样本语音数据对应的第一参考语音识别结果;获取更新前的目标模型;将第一样本语音数据输入到更新前的目标模型中,以利用目标语音提取模型、目标特征提取模型以及目标语音识别模型进行语音识别,得到第一模型输出结果;根据第一模型输出结果以及第一参考语音识别结果得到目标特征提取模型对应的目标模型损失值;根据目标模型损失值对更新前的目标模型中的目标特征提取模型的模型参数进行更新,得到更新后的目标模型。上述方法可以提高语音识别效果。

技术研发人员:王珺;林永业
受保护的技术使用者:腾讯科技(深圳)有限公司
技术研发日:2020.01.16
技术公布日:2020.06.05

转载请注明原文地址: https://bbs.8miu.com/read-46116.html

最新回复(0)