1.本公开涉及计算机技术领域中的语言、自然语言处理、深度学习技术领域,尤其涉及一种语音识别方法、装置、电子设备和存储介质。
背景技术:2.目前,随着人工智能、自然语言处理等技术的发展,语音识别技术得到了广泛的应用,给人们生活带来很多便利。然而,相关技术中的语音识别方法,在中英文混合识别场景下,由于中英文训练语料的稀疏性,英文语料的识别较为困难,中英文混合识别效果较差。
技术实现要素:3.提供了一种语音识别方法、装置、电子设备和存储介质。
4.根据第一方面,提供了一种语音识别方法,包括:接收并识别语音信息;响应于所述语音信息中的英文语料,获取所述英文语料对应的中文候选语料;基于所述中文候选语料在语言模型的得分,对所述英文语料在所述语言模型的得分进行修正,得到所述英文语料在所述语言模型的目标得分;基于所述英文语料在声学模型的得分和所述目标得分,对所述语音信息进行解码,得到所述语音信息的识别文本。
5.根据第二方面,提供了一种语音识别装置,包括:接收模块,用于接收并识别语音信息;获取模块,用于响应于所述语音信息中的英文语料,获取所述英文语料对应的中文候选语料;修正模块,用于基于所述中文候选语料在语言模型的得分,对所述英文语料在所述语言模型的得分进行修正,得到所述英文语料在所述语言模型的目标得分;解码模块,用于基于所述英文语料在声学模型的得分和所述目标得分,对所述语音信息进行解码,得到所述语音信息的识别文本。
6.根据第三方面,提供了一种电子设备,包括:至少一个处理器;以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行本公开第一方面所述的语音识别方法。
7.根据第四方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,所述计算机指令用于使所述计算机执行本公开第一方面所述的语音识别方法。
8.根据第五方面,提供了一种计算机程序产品,包括计算机程序,其中,所述计算机程序被处理器执行时实现本公开第一方面所述的语音识别方法。
9.应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。
附图说明
10.附图用于更好地理解本方案,不构成对本公开的限定。其中:
11.图1是根据本公开第一实施例的语音识别方法的流程示意图;
12.图2是根据本公开第二实施例的语音识别方法中对语音信息进行解码,得到语音信息的识别文本的流程示意图;
13.图3是根据本公开第三实施例的语音识别方法的示意图;
14.图4是根据本公开第一实施例的语音识别装置的框图;
15.图5是根据本公开第二实施例的语音识别装置的框图;
16.图6是用来实现本公开实施例的语音识别方法的电子设备的框图。
具体实施方式
17.以下结合附图对本公开的示范性实施例做出说明,其中包括本公开实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本公开的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
18.语音可包括语音识别、语音交互等技术领域,是人工智能领域中的一个重要方向。
19.语音识别(voice recognition)是一种让机器通过识别和理解过程把语音信号转变为相应的文本或命令的技术,主要包括特征提取技术、模式匹配准则及模型训练技术三个方面。
20.语音交互(voice interaction)是一种机器与用户以语音为信息载体进行互动、沟通、信息交换等交互行为的技术,相较于传统的人机交互,具有方便快捷、用户舒适性高的优点。
21.自然语言处理(natural language processing,nlu)是研究能有效地实现自然语言通信的计算机系统,特别是其中的软件系统的一门科学,是计算机科学领域与人工智能领域中的一个重要方向。
22.深度学习(deep learning,dl)是机器学习(machine learning,ml)领域中一个新的研究方向,是学习样本数据的内在规律和表示层次,使得机器能够像人一样具有分析学习能力,能够识别文字、图像和声音等数据的一门科学,广泛应用于语音和图像识别。
23.图1是根据本公开第一实施例的语音识别方法的流程示意图。
24.如图1所示,本公开第一实施例的语音识别方法包括:
25.s101,接收并识别语音信息。
26.需要说明的是,本公开实施例的语音识别方法的执行主体可为具有数据信息处理能力的硬件设备和/或驱动该硬件设备工作所需必要的软件。可选地,执行主体可包括工作站、服务器,计算机、用户终端及其他智能设备。其中,用户终端包括但不限于手机、电脑、智能语音交互设备、智能家电、车载终端等。
27.本公开的实施例中,可接收并识别语音信息。应说明的是,本公开实施例中,对语音信息的语言类型不做限定。例如,语音信息可为英文语料,也可为中文语料和英文语料构成的混合语料等。
28.可选的,可通过语音采集装置接收语音信息,并通过语音识别装置识别语音信息。其中,语音采集装置可为麦克风(microphone)、麦克风阵列(microphone array)等,语音识别装置可为预先训练好的语音识别模型,语音识别模型可根据实际情况进行设置,例如,语音识别模型可为深度学习模型。
29.可选的,识别语音信息可包括识别语音信息的语言类型。例如,语音信息为英文语料时,可识别语音信息为英文语料,语音信息为中文语料和英文语料构成的混合语料时,可识别语音信息为中文语料和英文语料构成的混合语料。
30.s102,响应于语音信息中的英文语料,获取英文语料对应的中文候选语料。
31.本公开的实施例中,语音信息包括英文语料时,可响应于语音信息中的英文语料,并获取英文语料对应的中文候选语料。
32.其中,英文语料对应的中文候选语料可为英文语料对应的中文翻译结果。例如,若英文语料为“education”,“education”对应的中文候选语料可包括教育、教学、培养、学历等。
33.可以理解的是,英文语料可包括一个或多个英文单词,每个英文单词可对应至少一个中文候选语料。
34.可选的,可预先建立英文语料和中文候选语料之间的映射关系或者映射表,在获取到英文语料之后,查询映射关系或者映射表,能够获取到英文语料对应的中文候选语料。应说明的是,上述映射关系或者映射表均可根据实际情况进行设置。
35.可选的,可通过翻译器获取英文语料对应的中文候选语料。可以理解的是,翻译器可将英文语料进行翻译,得到英文语料对应的中文翻译结果,可将中文翻译结果作为英文语料对应的中文候选语料。
36.s103,基于中文候选语料在语言模型的得分,对英文语料在语言模型的得分进行修正,得到英文语料在语言模型的目标得分。
37.本公开的实施例中,可将英文语料输入至lm(language model,语言模型),得到英文语料在语言模型的得分,还可将英文语料对应的中文候选语料输入至语言模型,得到中文候选语料在语言模型的得分。应说明的是,可通过语言模型获取中文语料和/或英文语料的得分,即语言模型为中英文混合语言模型。其中,语言模型可根据实际情况进行设置,例如,可为深度学习模型。
38.本公开的实施例中,可基于中文候选语料在语言模型的得分,对英文语料在语言模型的得分进行修正,得到英文语料在语言模型的目标得分。
39.相关技术中,中英文混合识别场景下,由于中英文训练语料的稀疏性,英文语料的识别较为困难,中英文混合识别效果较差。为了解决这一问题,本公开中可基于翻译策略,利用英文语料对应的中文候选语料在语言模型的得分,对英文语料在语言模型的得分进行修正,即可共享中英文语料的语言模型概率,提升中英文混合识别效果。
40.可以理解的是,英文语料可对应至少一个中文候选语料,则可获取至少一个中文候选语料在语言模型的得分。
41.可选的,基于中文候选语料在语言模型的得分,对英文语料在语言模型的得分进行修正,可包括将英文语料在语言模型的得分与中文候选语料在语言模型的得分进行比较,选取最高的得分作为英文语料的目标得分。
42.例如,英文语料a可对应3个中文候选语料,分别为中文候选语料b、c、d,则可获取英文语料a在语言模型的得分lm_score0,获取中文候选语料b、c、d分别在语言模型的得分lm_score1、lm_score2、lm_score3,将lm_score0、lm_score1、lm_score2、lm_score3进行比较,若lm_score2最高,则可将lm_score2作为英文语料a的目标得分。
43.s104,基于英文语料在声学模型的得分和目标得分,对语音信息进行解码,得到语音信息的识别文本。
44.本公开的实施例中,可将英文语料输入至am(acoustic model,声学模型),得到英文语料在声学模型的得分。其中,声学模型可根据实际情况进行设置,例如,可为深度学习模型。
45.本公开的实施例中,可基于英文语料在声学模型的得分和目标得分,对语音信息进行解码,得到语音信息的识别文本。
46.可选的,可将英文语料在声学模型的得分和目标得分输入至解码器,通过解码器对语音信息进行解码,得到语音信息的识别文本。
47.可选的,可将英文语料在声学模型的得分和目标得分输入至预设解码算法,通过预设解码算法对语音信息进行解码,得到语音信息的识别文本。其中,预设解码算法可根据实际情况进行设置,包括但不限于贪心解码(greedy decoding)算法、簇搜索(beam search)算法、维特比(viterbi)算法等,这里不做过多限定。
48.综上,根据本公开实施例的语音识别方法,可基于翻译策略,利用英文语料对应的中文候选语料在语言模型的得分,对英文语料在语言模型的得分进行修正以得到目标得分,可共享中英文语料的语言模型概率,并可基于英文语料在声学模型的得分和目标得分,对语音信息进行解码,得到语音信息的识别文本,可有效提升中英文混合识别效果,且不需要改变语言模型的结构,成本较低。
49.在上述任一实施例的基础上,如图2所示,步骤s104中基于英文语料在声学模型的得分和目标得分,对语音信息进行解码,得到语音信息的识别文本,可包括:
50.s201,根据英文语料在声学模型的得分和目标得分,得到英文语料的总得分。
51.可选的,根据英文语料在声学模型的得分和目标得分,得到英文语料的总得分,可包括获取语言模型的第一权重和声学模型的第二权重,基于第一权重和第二权重,对目标得分和声学模型的得分进行加权,得到总得分。
52.其中,基于第一权重和第二权重,对目标得分和声学模型的得分进行加权,得到总得分,可包括获取第一权重与目标得分的第一乘积值,获取第二权重与声学模型的得分的第二乘积值,将第一乘积值和第二乘积值的和值,作为英文语料的总得分。
53.例如,若目标得分为lm_score,英文语料在声学模型的得分为am_score,语言模型的第一权重为a,声学模型的第二权重为b,则英文语料的总得分tot_score=a*lm_score+b*am_score。
54.s202,基于总得分对语音信息进行解码,以得到识别文本。
55.可以理解的是,可基于总得分,在预设的解码空间中对语音信息进行解码,以得到识别文本。
56.可以理解的是,解码空间中可包括多个解码路径,可将语音信息在每个解码路径进行解码,每个解码路径包括至少一个节点,每个节点对应至少一个识别结果,进而可将每个解码路径之中节点对应的识别结果构成的词序列,作为该解码路径对应的识别文本。
57.可选的,可获取语音信息在多个解码路径的得分,基于总得分,从解码空间中选取得分最大的解码路径作为目标解码路径,将目标解码路径之中节点对应的词序列,作为识别文本。可以理解的是,得分最大的解码路径为识别最准确的解码路径,该方法可从解码空
间中筛选出识别最准确的目标解码路径,有助于提高中英文混合识别的准确性。
58.由此,该方法可根据英文语料在声学模型的得分和目标得分,得到英文语料的总得分,并基于总得分对语音信息进行解码,以得到识别文本。
59.如图3所示,可将语音信息中的英文语料输入至翻译器中,以得到英文语料对应的n个中文候选语料,可将n个中文候选语料分别输入至语言模型中,得到n个中文候选语料分别在语言模型的得分,分别为lm_score1、lm_score2、lm_score3至lm_scoren,可将英文语料输入至语言模型中,得到英文语料在语言模型的得分lm_score0,可将lm_score0与lm_score1、lm_score2、lm_score3至lm_scoren进行比较,选取最高的得分作为英文语料的目标得分lm_score。还可将英文语料输入至声学模型,得到英文语料在声学模型的得分am_score,基于lm_score和am_score得到英文语料的总得分tot_score,并基于总得分tot_score,通过解码器对语音信息进行解码,以得到识别文本。
60.图4是根据本公开第一实施例的语音识别装置的框图。
61.如图4所示,本公开实施例的语音识别装置400,包括:接收模块401、获取模块402、修正模块403和解码模块404。
62.接收模块401,用于接收并识别语音信息;
63.获取模块402,用于响应于所述语音信息中的英文语料,获取所述英文语料对应的中文候选语料;
64.修正模块403,用于基于所述中文候选语料在语言模型的得分,对所述英文语料在所述语言模型的得分进行修正,得到所述英文语料在所述语言模型的目标得分;
65.解码模块404,用于基于所述英文语料在声学模型的得分和所述目标得分,对所述语音信息进行解码,得到所述语音信息的识别文本。
66.在本公开的一个实施例中,所述修正模块403,具体用于:将所述英文语料在所述语言模型的得分与所述中文候选语料在所述语言模型的得分进行比较,选取最高的得分作为所述英文语料的所述目标得分。
67.综上,本公开实施例的语音识别装置,可基于翻译策略,利用英文语料对应的中文候选语料在语言模型的得分,对英文语料在语言模型的得分进行修正以得到目标得分,可共享中英文语料的语言模型概率,并可基于英文语料在声学模型的得分和目标得分,对语音信息进行解码,得到语音信息的识别文本,可有效提升中英文混合识别效果,且不需要改变语言模型的结构,成本较低。
68.图5是根据本公开第二实施例的语音识别装置的框图。
69.如图5所示,本公开实施例的语音识别装置500,包括:接收模块501、获取模块502、修正模块503和解码模块504。
70.其中,接收模块501与接收模块401具有相同功能和结构,获取模块502与获取模块402具有相同功能和结构,修正模块503与修正模块403具有相同功能和结构。
71.在本公开的一个实施例中,所述解码模块504,包括:得分计算单元5041,用于根据所述英文语料在所述声学模型的得分和所述目标得分,得到所述英文语料的总得分;解码单元5042,用于基于所述总得分,对所述语音信息进行解码,以得到所述识别文本。
72.在本公开的一个实施例中,所述解码单元5042,具体用于:基于所述总得分,从解码空间中选取得分最大的解码路径作为目标解码路径,将所述目标解码路径之中节点对应
的词序列,作为所述识别文本。
73.在本公开的一个实施例中,所述得分计算单元5041,具体用于:获取所述语言模型的第一权重和所述声学模型的第二权重;基于所述第一权重和所述第二权重,对所述目标得分和所述声学模型的得分进行加权,得到所述总得分。
74.综上,本公开实施例的语音识别装置,可基于翻译策略,利用英文语料对应的中文候选语料在语言模型的得分,对英文语料在语言模型的得分进行修正以得到目标得分,可共享中英文语料的语言模型概率,并可基于英文语料在声学模型的得分和目标得分,对语音信息进行解码,得到语音信息的识别文本,可有效提升中英文混合识别效果,且不需要改变语言模型的结构,成本较低。
75.根据本公开的实施例,本公开还提供了一种电子设备、一种可读存储介质和一种计算机程序产品。
76.图6示出了可以用来实施本公开的实施例的示例电子设备600的示意性框图。电子设备旨在表示各种形式的数字计算机,诸如,膝型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本公开的实现。
77.如图6所示,电子设备600包括计算单元601,其可以根据存储在只读存储器(rom)602中的计算机程序或者从存储单元608加载到随机访问存储器(ram)603中的计算机程序,来执行各种适当的动作和处理。在ram 603中,还可存储电子设备600操作所需的各种程序和数据。计算单元601、rom 602以及ram 603通过总线604彼此相连。输入/输出(i/o)接口605也连接至总线604。
78.电子设备600中的多个部件连接至i/o接口605,包括:输入单元606,例如键盘、鼠标等;输出单元607,例如各种类型的显示器、扬声器等;存储单元608,例如磁盘、光盘等;以及通信单元609,例如网卡、调制解调器、无线通信收发机等。通信单元609允许电子设备600通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
79.计算单元601可以是各种具有处理和计算能力的通用和/或专用处理组件。计算单元601的一些示例包括但不限于中央处理单元(cpu)、图形处理单元(gpu)、各种专用的人工智能(ai)计算芯片、各种运行机器学习模型算法的计算单元、数字信号处理器(dsp)、以及任何适当的处理器、控制器、微控制器等。计算单元601执行上文所描述的各个方法和处理,例如图1至图3所述的语音识别方法。例如,在一些实施例中,语音识别方法可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元608。在一些实施例中,计算机程序的部分或者全部可以经由rom 602和/或通信单元609而被载入和/或安装到电子设备600上。当计算机程序加载到ram 603并由计算单元601执行时,可以执行上文描述的语音识别方法的一个或多个步骤。备选地,在其他实施例中,计算单元601可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行语音识别方法。
80.本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、场可编程门阵列(fpga)、专用集成电路(asic)、专用标准产品(assp)、芯片上系统的系统(soc)、负载可编程逻辑设备(cpld)、计算机硬件、固件、软件、和/或它们的组合中实
现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
81.用于实施本公开的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
82.在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦除可编程只读存储器(eprom或快闪存储器)、光纤、便捷式紧凑盘只读存储器(cd
‑
rom)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
83.为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,crt(阴极射线管)或者lcd(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
84.可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(lan)、广域网(wan)和互联网。
85.计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端
‑
服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以是云服务器,又称为云计算服务器或云主机,是云计算服务体系中的一项主机产品,以解决了传统物理主机与vps服务("virtual private server",或简称"vps")中,存在的管理难度大,业务扩展性弱的缺陷。服务器也可以为分布式系统的服务器,或者是结合了区块链的服务器。
86.根据本申请的实施例,本申请还提供了一种计算机程序产品,包括计算机程序,其中,所述计算机程序被处理器执行时实现本申请上述实施例所述的语音识别方法。
87.应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发公开中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本公开公开的技术方案所期望的结果,本文在此不进行限制。
88.上述具体实施方式,并不构成对本公开保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本公开的精神和原则之内所作的修改、等同替换和改进等,均应包含在本公开保护范围之内。