1.本公开涉及计算机技术领域,尤其是一种语音识别方法、装置、计算机可读存储介质及电子设备。
背景技术:2.近年来,智能语音交互技术得到了快速的发展,这使得语音助手的应用场景越来越广泛,众多的智能终端如车载智能终端、智能电视、智能音箱等都开始提供语音助手功能,允许用户通过语音指令请求各种任务的执行。
3.在一些场景下,由于外界噪声对语音交互的影响较大,导致语音识别成功率降低。例如,在车载语音交互中,在打开空调、开启车窗等场景下,语音识别成功率会由于高噪声的影响而有所下降。目前,为了降低噪声对语音识别的影响,通常采用的方法是在语音识别之前首先进行降噪处理。
技术实现要素:4.本公开的实施例提供了一种语音识别方法、装置、计算机可读存储介质及电子设备。
5.本公开的实施例提供了一种语音识别方法,该方法包括:获取对用户进行语音采集得到的待识别音频信号;对待识别音频信号进行一级语音识别,得到至少一个一级语音识别结果;对至少一个一级语音识别结果进行场景类别判决,得到表征用户所处场景的场景类别;对待识别音频信号进行场景类别对应的场景化语音识别,得到场景化语音识别结果;基于至少一个一级语音识别结果和场景化语音识别结果,确定二级语音识别结果。
6.根据本公开实施例的另一个方面,提供了一种语音识别装置,该装置包括:获取模块,用于获取对用户进行语音采集得到的待识别音频信号;第一识别模块,用于对待识别音频信号进行一级语音识别,得到至少一个一级语音识别结果;判决模块,用于对至少一个一级语音识别结果进行场景类别判决,得到表征用户所处场景的场景类别;第二识别模块,用于对待识别音频信号进行场景类别对应的场景化语音识别,得到场景化语音识别结果;第一确定模块,用于基于至少一个一级语音识别结果和场景化语音识别结果,确定二级语音识别结果。
7.根据本公开实施例的另一个方面,提供了一种计算机可读存储介质,计算机可读存储介质存储有计算机程序,计算机程序用于执行上述语音识别方法。
8.根据本公开实施例的另一个方面,提供了一种电子设备,电子设备包括:处理器;用于存储处理器可执行指令的存储器;处理器,用于从存储器中读取可执行指令,并执行指令以实现上述语音识别方法。
9.基于本公开上述实施例提供的语音识别方法、装置、计算机可读存储介质及电子设备,通过首先对采集自用户语音的待识别音频信号进行一级语音识别,得到一级语音识别结果,然后对待识别音频信号进行场景类别判决,得到表征用户所处场景的场景类别,再
对待识别音频信号进行场景类别对应的场景化语音识别,得到场景化语音识别结果,最后基于至少一个一级语音识别结果和场景化语音识别结果,确定二级语音识别结果,实现了针对用户所处的场景进行有针对性地语音识别,在不同场景下可以充分规避相应的噪声对识别的影响,提高了语音识别的准确性。
10.下面通过附图和实施例,对本公开的技术方案做进一步的详细描述。
附图说明
11.通过结合附图对本公开实施例进行更详细的描述,本公开的上述以及其他目的、特征和优势将变得更加明显。附图用来提供对本公开实施例的进一步理解,并且构成说明书的一部分,与本公开实施例一起用于解释本公开,并不构成对本公开的限制。在附图中,相同的参考标号通常代表相同部件或步骤。
12.图1是本公开所适用的系统图。
13.图2是本公开一示例性实施例提供的语音识别方法的流程示意图。
14.图3是本公开另一示例性实施例提供的语音识别方法的流程示意图。
15.图4是本公开另一示例性实施例提供的语音识别方法的流程示意图。
16.图5是本公开另一示例性实施例提供的语音识别方法的流程示意图。
17.图6是本公开另一示例性实施例提供的语音识别方法的流程示意图。
18.图7是本公开另一示例性实施例提供的语音识别方法的流程示意图。
19.图8是本公开另一示例性实施例提供的语音识别方法的流程示意图。
20.图9是本公开一示例性实施例提供的场景化信号处理模型包括的神经网络的训练流程示意图。
21.图10是本公开一示例性实施例提供的场景化语音识别模型的训练流程示意图。
22.图11是本公开一示例性实施例提供的语音识别装置的结构示意图。
23.图12是本公开另一示例性实施例提供的语音识别装置的结构示意图。
24.图13是本公开一示例性实施例提供的电子设备的结构图。
具体实施方式
25.下面,将参考附图详细地描述根据本公开的示例实施例。显然,所描述的实施例仅仅是本公开的一部分实施例,而不是本公开的全部实施例,应理解,本公开不受这里描述的示例实施例的限制。
26.应注意到:除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本公开的范围。
27.本领域技术人员可以理解,本公开实施例中的“第一”、“第二”等术语仅用于区别不同步骤、设备或模块等,既不代表任何特定技术含义,也不表示它们之间的必然逻辑顺序。
28.还应理解,在本公开实施例中,“多个”可以指两个或两个以上,“至少一个”可以指一个、两个或两个以上。
29.还应理解,对于本公开实施例中提及的任一部件、数据或结构,在没有明确限定或者在前后文给出相反启示的情况下,一般可以理解为一个或多个。
30.另外,本公开中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。另外,本公开中字符“/”,一般表示前后关联对象是一种“或”的关系。
31.还应理解,本公开对各个实施例的描述着重强调各个实施例之间的不同之处,其相同或相似之处可以相互参考,为了简洁,不再一一赘述。
32.同时,应当明白,为了便于描述,附图中所示出的各个部分的尺寸并不是按照实际的比例关系绘制的。
33.以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本公开及其应用或使用的任何限制。
34.对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,所述技术、方法和设备应当被视为说明书的一部分。
35.应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。
36.本公开实施例可以应用于终端设备、计算机系统、服务器等电子设备,其可与众多其它通用或专用计算系统环境或配置一起操作。适于与终端设备、计算机系统、服务器等电子设备一起使用的众所周知的终端设备、计算系统、环境和/或配置的例子包括但不限于:个人计算机系统、服务器计算机系统、瘦客户机、厚客户机、手持或膝上设备、基于微处理器的系统、机顶盒、可编程消费电子产品、网络个人电脑、小型计算机系统、大型计算机系统和包括上述任何系统的分布式云计算技术环境,等等。
37.终端设备、计算机系统、服务器等电子设备可以在由计算机系统执行的计算机系统可执行指令(诸如程序模块)的一般语境下描述。通常,程序模块可以包括例程、程序、目标程序、组件、逻辑、数据结构等等,它们执行特定的任务或者实现特定的抽象数据类型。计算机系统/服务器可以在分布式云计算环境中实施,分布式云计算环境中,任务是由通过通信网络链接的远程处理设备执行的。在分布式云计算环境中,程序模块可以位于包括存储设备的本地或远程计算系统存储介质上。
38.申请概述
39.现有的语音识别方法,在高噪声的场景下降噪能力有限,识别时受噪声的干扰较大,识别准确性较低。
40.示例性系统
41.图1示出了可以应用本公开的实施例的语音识别方法或语音识别装置的示例性系统架构100。
42.如图1所示,系统架构100可以包括终端设备101,网络102和服务器103。网络102用于在终端设备101和服务器103之间提供通信链路的介质。网络102可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
43.用户可以使用终端设备101通过网络102与服务器103交互,以接收或发送消息等。终端设备101上可以安装有各种通讯客户端应用,例如语音识别应用、搜索类应用、网页浏览器应用、购物类应用、即时通信工具等。
44.终端设备101可以是各种电子设备,包括但不限于诸如移动电话、笔记本电脑、数字广播接收器、pda(个人数字助理)、pad(平板电脑)、pmp(便携式多媒体播放器)、车载终端
(例如车载导航终端)等等的移动终端以及诸如数字tv、台式计算机等等的固定终端。
45.服务器103可以是提供各种服务的服务器,例如对终端设备101上传的待识别音频信号进行识别的后台语音识别服务器。后台语音识别服务器可以对接收到的待识别音频信号进行处理,得到处理结果(例如二级语音识别结果)。
46.需要说明的是,本公开的实施例所提供的语音识别方法可以由服务器103执行,也可以由终端设备101执行,相应地,语音识别装置可以设置于服务器103中,也可以设置于终端设备101中。
47.应该理解,图1中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。在待识别音频信号不需要从远程获取的情况下,上述系统架构可以不包括网络,只包括服务器或终端设备。
48.示例性方法
49.图2是本公开一示例性实施例提供的语音识别方法的流程示意图。本实施例可应用在电子设备(如图1所示的终端设备101或服务器103)上,如图2所示,该方法包括如下步骤:
50.步骤201,获取对用户进行语音采集得到的待识别音频信号。
51.在本实施例中,电子设备可以从本地或从远程获取对用户进行语音采集得到的待识别音频信号。其中,待识别音频信号可以是在各种场景下采集的。例如,用户在车辆上与车载终端进行语音交互,待识别音频信号可以是车辆上的麦克风对用户的语音进行采集得到的。
52.步骤202,对待识别音频信号进行一级语音识别,得到至少一个一级语音识别结果。
53.在本实施例中,电子设备可以对待识别音频信号进行一级语音识别,得到至少一个一级语音识别结果。其中,一级语音识别采用的方法可以是现有任意一种适用的语音识别方法。例如,利用采用现有的声学模型和解码器相结合,对待识别音频信号进行一级语音识别。
54.步骤203,对至少一个一级语音识别结果进行场景类别判决,得到表征用户所处场景的场景类别。
55.在本实施例中,电子设备可以对至少一个一级语音识别结果进行场景类别判决,得到表征用户所处场景的场景类别。
56.具体地,电子设备可以采用各种方式进行场景类别判决。作为一个示例,可以采用基于规则匹配的方式,对至少一个一级语音识别结果分别进行关键词匹配,从而确定场景类别。例如,若至少一个一级语音识别结果包括“关闭空调”、“降低空调风速”等信息时,确定场景类别为当前空调正在运行的场景;若至少一个一级语音识别结果包括“关闭音乐”、“下一首”等信息时,可以确定场景类别为当前正在播放音乐的场景。
57.作为另一示例,还可以采用nlu(自然语言理解,natural language understanding)算法对至少一个一级语音识别结果进行分析从而确定场景类别。nlu算法可以基于cnn(卷积神经网络,convolutional neural networks)、rnn(循环神经网络,recurrent neural network),通过预先训练实现。
58.步骤204,对待识别音频信号进行场景类别对应的场景化语音识别,得到场景化语
音识别结果。
59.在本实施例中,电子设备可以对待识别音频信号进行场景类别对应的场景化语音识别,得到场景化语音识别结果。具体地,不同的场景类别可以对应不同的场景化语音识别方法。例如,不同的场景类别对应不同的降噪算法,可以将待识别音频信号按照相应的降噪算法进行降噪后再进行语音识别,得到场景化语音识别结果。
60.步骤205,基于至少一个一级语音识别结果和场景化语音识别结果,确定二级语音识别结果。
61.在本实施例中,电子设备可以基于至少一个一级语音识别结果和场景化语音识别结果,确定二级语音识别结果。作为示例,可以确定至少一个一级语音识别结果中是否存在与场景化语音识别结果相同的目标一级语音识别结果,若存在,则将场景化语音识别结果确定为二级语音识别结果,若不存在,可以将二级语音识别结果设置为表示识别无效的信息。
62.本公开的上述实施例提供的方法,通过首先对采集自用户语音的待识别音频信号进行一级语音识别,得到一级语音识别结果,然后对待识别音频信号进行场景类别判决,得到表征用户所处场景的场景类别,再对待识别音频信号进行场景类别对应的场景化语音识别,得到场景化语音识别结果,最后基于至少一个一级语音识别结果和场景化语音识别结果,确定二级语音识别结果,实现了针对用户所处的场景进行有针对性地语音识别,在不同场景下可以充分规避相应的噪声对识别的影响,提高了语音识别的准确性。
63.在一些可选的实现方式中,如图3所示,步骤202可以如下执行:
64.步骤2021,对待识别音频信号进行一级语音识别,得到至少两个一级语音识别结果。
65.具体地,在利用语音识别模型等方式进行语音识别时,通常输出至少两个一级语音识别结果,每个一级语音识别结果对应于一个置信度,用于表示每个一级语音识别结果为正确结果的概率。
66.步骤2022,按照至少两个一级语音识别结果分别对应的置信度,从至少两个一级语音识别结果中确定至少一个一级语音识别结果。
67.通常,可以将至少两个一级语音识别结果按照置信度的大小排序,从中确定置信度最高的至少一个一级语音识别结果。
68.本实现方式通过基于至少两个一级语音识别结果的置信度的大小,从中确定至少一个一级语音识别结果,可以使后续进行场景类别判决时,有效利用高准确性的至少一个一级语音识别结果,提高场景类别判决的准确性。
69.在一些可选的实现方式中,如图4所示,步骤203可以如下执行:
70.步骤2031,对至少一个一级语音识别结果分别进行场景类别判决,得到至少一个初始场景类别。
71.具体地,本步骤执行后,可以得到每个一级语音识别结果对应的初始场景类别。在利用场景类别判决模型等方式对每个一级语音识别结果进行场景类别判决时,每个一级语音识别结果对应于至少一个初始场景类别,且每个初始场景类别对应于一个置信度,用于表示一级语音识别结果属于对应的初始场景类别的概率。对于至少一个一级语音识别结果中的每个一级语音识别结果,电子设备可以从该一级语音识别结果对应的至少一个初始场
景类别中,选择置信度最高的初始场景类别作为该一级语音识别结果对应的初始场景类别。
72.步骤2032,基于至少一个初始场景类别分别对应的置信度,从至少一个初始场景类别中确定表征用户所处场景的场景类别。
73.通常,可以将至少一个初始场景类别中的置信度最高的场景类别确定为表征用户所处场景的场景类别。
74.本实现方式通过确定至少一个一级语音识别结果分别对应的初始场景类别,并基于各个初始场景类别的置信度的大小,从中确定表征用户所处场景的场景类别,可以提高确定场景类别的准确性。
75.在一些可选的实现方式中,如图5所示,步骤205可以包括如下子步骤:
76.步骤2051,从至少一个一级语音识别结果中确定与场景化语音识别结果相同的目标一级语音识别结果。
77.需要说明的是,这里的相同是指含义相同,识别出的一级语音识别结果和场景化语音识别结果的文字可以相同或相似。例如,一级语音识别结果为“打开空调”,场景化语音识别结果为“开空调”,则确定两者相同。
78.步骤2052,确定场景化语音识别结果对应的置信度。
79.场景化语音识别结果对应的置信度可以在利用场景化语音识别模型等方式对待识别音频信号进行场景化语音识别时即可得到。
80.步骤2053,基于述场景化语音识别结果对应的置信度和目标一级语音识别结果对应的置信度,确定二级语音识别结果。
81.具体地,作为示例,当场景化语音识别结果对应的置信度大于等于目标一级语音识别结果对应的置信度时,可以确定场景化语音识别结果为二级语音识别结果;当场景化语音识别结果对应的置信度小于目标一级语音识别结果对应的置信度时,可以生成表示本次识别无效的二级语音识别结果,或者将场景化语音识别结果为二级语音识别结果的同时,生成用于提示用户本次识别得到的二级语音识别结果可能错误的提示信息。
82.可选的,若至少一个一级语音识别结果中不包括目标一级语音识别结果,可以进一步确定场景化语音识别结果对应的置信度是否大于或等于预设置信度阈值。如果大于或等于预设置信度阈值,确定场景化语音识别结果为二级语音识别结果。否则,可以生成表示本次识别无效的二级语音识别结果。
83.本实现方式通过从至少一个一级语音识别结果中确定与场景化语音识别结果相同的目标一级语音识别结果,并基于述场景化语音识别结果对应的置信度和目标一级语音识别结果对应的置信度,确定二级语音识别结果,可以充分地将一级语音识别结果和场景化语音识别结果相结合确定二级语音识别结果,提高语音识别的准确性。
84.在一些可选的实现方式中,如图6所示,在步骤205之后,该方法还可以包括如下步骤:
85.步骤206,确定目标设备当前的语音识别模式。
86.其中,语音识别模式表示语音识别所应用的场景。通常,语音识别模式可以包括但不限于唤醒模式、通用模式等。目标设备为与用户进行语音交互的设备。例如用于对车辆上的各种设备进行控制的车载终端。
87.步骤207,若语音识别模式为唤醒模式,基于二级语音识别结果执行唤醒操作。
88.其中,唤醒模式通常为目标设备在待机状态时所处的模式,此时可以通过识别唤醒词对目标设备进行唤醒。例如,若二级语音识别结果与预设的唤醒词相同时,针对目标设备进行唤醒操作,将目标设备唤醒。
89.步骤208,若语音识别模式为通用模式,基于二级语音识别结果执行通用语音交互操作。
90.通用模式为目标设备正常启动后所处的模式,此时用户可以与目标设备进行语音交互,通过语音交互进行各种通用语音交互操作,例如基于二级语音识别结果控制播放音乐、打开或关闭空调等。
91.本实现方式通过确定目标设备的语音识别模式,针对不同的语音识别模式,基于二级语音识别结果进行不同方式的语音交互,从而有效利用了该语音识别方法的语音识别准确性高的特点,提高与目标设备进行语音交互的准确性。
92.在一些可选的实现方式中,如图7所示,步骤201可以如下执行:
93.步骤2011,获取对用户的语音采集的初始音频信号。
94.其中,初始音频信号即为麦克风采集的未经处理的音频信号。
95.步骤2012,对初始音频信号进行一级信号处理,将处理后得到的音频信号确定为待识别音频信号。
96.其中,一级信号处理包括以下至少一种处理方式:回声消除处理、降噪处理。作为示例,回声消除可以采用lms(最小均方,least mean square)算法,降噪可以采用omlsa(最优改进对数谱幅度估计,optimally modified log
‑
spectral amplitude estimator)算法。
97.通过对初始音频信号进行一级信号处理得到待识别音频信号,可以使后续对待识别音频信号进行处理时,降低噪声的影响,提高语音识别的精度。
98.进一步参考图8,示出了语音识别方法的又一个实施例的流程示意图。如图8所示,在上述图2所示实施例的基础上,步骤204可以包括如下步骤:
99.步骤2041,对待识别音频信号进行降噪处理,得到降噪音频信号。
100.其中,降噪处理可以采用现有的降噪算法进行,或者利用下述可选实施例中的方法进行降噪处理。
101.步骤2042,从预先训练的至少两个场景化语音识别模型中提取场景类别对应的目标场景化语音识别模型。
102.其中,场景化语音识别模型用于表征降噪音频数据与场景化语音识别结果的对应关系。场景化语音识别模型可以通过各种方式实现,例如包括神经网络、计算公式等。
103.上述至少两个场景化语音识别模型分别对应于一种场景类别,每个场景化语音识别模型可以是预先利用从对应的场景类别指示的场景中采集的训练样本,采用机器学习方法训练得到的。
104.步骤2043,基于目标场景化语音识别模型对降噪音频信号进行结果识别,得到场景化语音识别结果。
105.具体地,可以将降噪音频信号输入目标场景化语音识别模型,由目标场景化语音识别模型输出场景化语音识别结果。
106.上述图8对应实施例提供的方法,通过首先对待识别音频信号进行降噪处理,再利用对应的目标场景化语音识别模型对降噪降噪音频信号进行识别,可以进一步降低待识别音频信号中的噪声对识别的影响,同时采用专门用于对待识别音频信号的来源所处的场景对应的目标场景化语音识别模型,实现了针对不同的场景采用不同的场景化语音识别模型进行语音识别,进一步提高了语音识别的准确性。
107.在一些可选的实现方式中,步骤2041可以包括如下子步骤:
108.步骤一,从预先训练的至少两个场景化信号处理模型中确定场景类别对应的目标场景化信号处理模型。
109.其中,场景化信号处理模型用于表征待识别音频信号与降噪音频信号的对应关系。场景化信号处理模型可以通过各种方式实现,例如包括神经网络、计算公式等。
110.上述至少两个场景化信号处理模型分别对应于一种场景类别,每个场景化信号处理模型可以是预先利用从对应的场景类别指示的场景中采集的训练样本,采用机器学习方法训练得到的。
111.步骤二,基于目标场景化信号处理模型对待识别音频信号进行降噪处理,得到降噪音频信号。
112.具体地,可以将待识别音频信号输入目标场景化信号处理模型,由目标场景化信号处理模型包括的各个组成部分对输入的信号进行处理,输出降噪音频信号。
113.本实现方式通过利用专门用于对待识别音频信号的来源所处的场景对应的目标场景化信号处理模型,实现了针对不同的场景采用不同的降噪方法进行降噪处理,能够更加有针对性地待识别音频信号进行降噪处理,提高了对待识别音频信号进行降噪的精度,有助于进一步提高语音识别的准确性。
114.在一些可选的实现方式中,上述步骤二可以如下执行:
115.首先,确定待识别音频信号的频域能量。
116.具体地,电子设备可以从待识别音频信号中提取频域信息,频域信息可以为对待识别音频信号进行傅里叶变换后的频谱,根据频域信息确定频域能量。需要说明的是,获得频域能量的方法在本领域有相关技术,这里不再赘述。
117.然后,基于目标场景化处理模型包括的神经网络,确定频域能量的先验信噪比和后验信噪比。
118.其中,该神经网络用于表征频谱能量与先验信噪比和后验信噪比的对应关系,该神经网络可以是预先训练得到的。将频域能量输入神经网络,神经网络可以对频域能量进行分析,输出先验信噪比和后验信噪比。其中,先验信噪比和后验信噪比是现有的噪声抑制量算法中常用的物理量,这里不再赘述。
119.最后,基于目标场景化处理模型包括的降噪网络,根据先验信噪比和后验信噪比,对待识别音频信号进行降噪处理,得到降噪音频信号。
120.具体地,可以将神经网络输出的先验信噪比和后验信噪比代替现有的降噪算法(例如omlsa算法)中使用的先验信噪比和后验信噪比,由降噪网络执行该降噪算法,可以得到降噪音频信号。
121.本实现方式通过首先利用目标场景化处理模型包括的神经网络确定待识别音频信号的先验信噪比和后验信噪比,然后利用先验信噪比和后验信噪比进行降噪处理,有效
利用了神经网络预测先验信噪比和后验信噪比的准确性高的特点,由降噪网络利用高准确性的先验信噪比和后验信噪比进行降噪,从而精确地对待识别音频信号进行降噪,得到低噪声含量的降噪音频信号,有助于提高场景化语音识别结果的准确性。
122.在一些可选的实现方式中,如图9所示,上述至少两个场景化信号处理模型分别包括的神经网络预先通过如下步骤训练得到:
123.步骤901,获取针对预设的至少两个场景分别采集的第一训练样本集合。
124.其中,第一训练样本集合中的训练样本包括样本语音数据和样本噪声数据。样本语音数据和样本噪声数据可以是针对不同的场景得到的。具体采集方式如下:在设定的场景下,录制样本噪声数据;采用棚录纯净语音的方式采集样本语音数据。然后将采集的样本噪声数据和样本语音数据按照不同的信噪比进行混合,得到第一训练样本集合。
125.步骤902,基于样本语音数据和样本噪声数据,确定第一训练样本集合中的训练样本分别对应的先验信噪比、后验信噪比和混合数据频域能量。
126.其中,混合数据频域能量为将样本语音数据和样本噪声数据混合后的频域能量。
127.具体地,对于第一训练样本集合中的一个训练样本,可以首先确定该训练样本中的样本语音数据的频域能量和样本噪声数据的频域能量,这里分别称为语音频域能量和噪声频域能量。然后,根据先验信噪比的计算公式s=语音频域能量/噪声频域能量,在各个频点上计算先验信噪比s。再然后,将样本语音数据和样本噪声数据在时域上相加得到带噪数据,并确定带噪数据的频域能量,这里称为混合数据频域能量。最后,根据后验信噪比的计算公式b=混合数据频域能量/噪声频域能量,在各个频点上计算后验信噪比b。
128.步骤903,对于至少两个场景中的每个场景,将该场景下的第一训练样本集合中的训练样本对应的混合数据频域能量作为该场景下的初始场景化信号处理模型包括的神经网络的输入,将输入的混合数据频域能量对应的先验信噪比和后验信噪比作为神经网络的期望输出,训练得到该场景下的场景化信号处理模型包括的神经网络。
129.具体地,上述神经网络可以是基于机器学习方法对初始网络进行训练得到的。初始网络可以包括卷积神经网络、循环神经网络等。初始网络可以设置有初始参数,参数在训练过程中可以被不断地调整。电子设备可以基于预设的损失函数计算损失值,根据损失值确定神经网络是否训练完成。在这里,需要说明的是,损失值可以用于表征实际输出与期望输出之间的差异。当损失值符合预设条件(例如损失值小于等于预设的损失值阈值,或经过多次迭代计算后,损失值不再减小)时,确定神经网络训练完成。实践中,可以采用预设的各种损失函数计算实际输出相对于期望输出的损失值。例如,可以采用l2所示函数、l1损失函数计算损失值。
130.本实现方式通过预先从至少两个场景分别采集对应的第一训练样本集合,基于第一训练样本集合训练得到每个场景对应的神经网络,从而可以有效利用反映各种场景下的噪声情况的大量训练样本,训练得到能够大大提高确定实际音频信号的先验信噪比和后验信噪比的神经网络,从而有助于进一步提高对待识别音频信号进行降噪的精度。
131.在一些可选的实现方式中,如图10所示,上述至少两个场景化语音识别模型预先通过如下步骤训练得到:
132.步骤1001,获取针对预设的至少两个场景分别采集的第二训练样本集合。
133.其中,第二训练样本集合中的训练样本包括样本降噪音频信号和标注信息。
134.样本降噪音频信号可以基于如下方式生成:基于第一训练样本包括的样本语音数据和样本噪声数据生成的带噪数据,利用图9对应实施例训练得到的至少两个场景化信号处理模型对带噪数据进行降噪处理,得到样本降噪音频信号。
135.标注信息用于表征样本降噪音频信号的语音特征,例如,标注信息可以包括对应的样本降噪音频信号的音素信息(即根据语音的自然属性划分出来的最小语音单位)、音素信息对应的文字等。
136.步骤1002,对于至少两个场景中的每个场景,将该场景下的第二训练样本集合中的训练样本包括的样本降噪音频信号作为该场景下的初始场景化语音识别模型的输入,将输入的样本降噪音频信号对应的标注信息作为初始场景化语音识别模型的期望输出,训练得到该场景下的场景化语音识别模型。
137.具体地,电子设备可以利用机器学习方法,将上述第二训练样本集合中的训练样本包括的样本降噪音频信号作为输入,将与输入的样本降噪音频信号对应的标注信息作为期望输出,对初始模型(例如包括特征提取网络、用于确定音素的声学模型、用于确定样本降噪音频信号对应的文字序列的语言模型、用于确定文字序列的最佳匹配路径的解码器等)进行训练,针对每次训练输入的样本降噪音频信号,可以得到实际输出。其中,实际输出是初始模型实际输出的数据,对应于标注信息。然后,上述执行主体可以采用梯度下降法和反向传播法,基于实际输出和期望输出,调整初始模型的参数,使表示实际输出和期望输出的差距的损失值最小,将每次调整参数后得到的模型作为下次训练的初始模型,并在满足预设的训练结束条件的情况下,结束训练,从而训练得到每个场景下的场景化语音识别模型。
138.上述训练结束条件可以包括但不限于以下至少一项:训练时间超过预设时长;训练次数超过预设次数;利用预设的损失函数计算所得的损失值小于预设损失值阈值。
139.本实现方式通过预先采集至少两个场景分别对应的第二训练样本集合,基于第二训练样本集合训练得到每个场景对应的场景化语音识别模型,从而可以有效利用反映各种场景下的语音特点的大量训练样本,训练得到场景化语音识别模型,从而有助于进一步使用场景化语音识别模型得到高精度的场景化语音识别结果。
140.示例性装置
141.图11是本公开一示例性实施例提供的语音识别装置的结构示意图。本实施例可应用在电子设备上,如图11所示,语音识别装置包括:获取模块111,用于获取对用户进行语音采集得到的待识别音频信号;第一识别模块112,用于对待识别音频信号进行一级语音识别,得到至少一个一级语音识别结果;判决模块113,用于对至少一个一级语音识别结果进行场景类别判决,得到表征用户所处场景的场景类别;第二识别模块114,用于对待识别音频信号进行场景类别对应的场景化语音识别,得到场景化语音识别结果;第一确定模块115,用于基于至少一个一级语音识别结果和场景化语音识别结果,确定二级语音识别结果。
142.在本实施例中,获取模块111可以从本地或从远程获取对用户进行语音采集得到的待识别音频信号。其中,待识别音频信号可以是在各种场景下采集的。例如,用户在车辆上与车载终端进行语音交互,待识别音频信号可以是车辆上的麦克风对用户的语音进行采集得到的。
143.在本实施例中,第一识别模块112可以对待识别音频信号进行一级语音识别,得到至少一个一级语音识别结果。其中,一级语音识别采用的方法可以是现有的语音识别方法。例如,利用采用现有的声学模型和解码器相结合,对待识别音频信号进行一级语音识别。
144.在本实施例中,判决模块113可以对至少一个一级语音识别结果进行场景类别判决,得到表征用户所处场景的场景类别。
145.具体地,判决模块113可以采用各种方式进行场景类别判决。作为一个示例,可以采用基于规则匹配的方式,对至少一个一级语音识别结果分别进行关键词匹配,从而确定场景类别。例如,若至少一个一级语音识别结果包括“关闭空调”、“降低空调风速”等信息时,确定场景类别为当前空调正在运行的场景;若至少一个一级语音识别结果包括“关闭音乐”、“下一首”等信息时,可以确定场景类别为当前正在播放音乐的场景。
146.作为另一示例,还可以采用nlu(自然语言理解,natural language understanding)算法对至少一个一级语音识别结果进行分析从而确定场景类别。nlu算法可以基于cnn(卷积神经网络,convolutional neural networks)、rnn(循环神经网络,recurrent neural network),通过预先训练实现。
147.在本实施例中,第二识别模块114可以对待识别音频信号进行场景类别对应的场景化语音识别,得到场景化语音识别结果。具体地,不同的场景类别可以对应不同的场景化语音识别方法。例如,不同的场景类别对应不同的场景化语音识别模型,可以将待识别音频信号输入对应的场景化语音识别模型,得到场景化语音识别结果。再例如,不同的场景类别对应不同的降噪算法,可以将待识别音频信号按照相应的降噪算法进行降噪后再进行语音识别,得到场景化语音识别结果。
148.在本实施例中,第一确定模块115可以基于至少一个一级语音识别结果和场景化语音识别结果,确定二级语音识别结果。作为示例,可以确定至少一个一级语音识别结果中是否存在与场景化语音识别结果相同的目标一级语音识别结果,若存在,则将场景化语音识别结果确定为二级语音识别结果,若不存在,可以将二级语音识别结果设置为表示识别无效的信息。
149.参照图12,图12是本公开另一示例性实施例提供的语音识别装置的结构示意图。
150.在一些可选的实现方式中,第一识别模块112包括:第一识别单元1121,用于对待识别音频信号进行一级语音识别,得到至少两个一级语音识别结果;第一确定单元1122,用于按照至少两个一级语音识别结果分别对应的置信度,从至少两个一级语音识别结果中确定至少一个一级语音识别结果。
151.在一些可选的实现方式中,判决模块113包括:判决单元1131,用于对至少一个一级语音识别结果分别进行场景类别判决,得到至少一个初始场景类别;第二确定单元1132,用于基于至少一个初始场景类别分别对应的置信度,从至少一个初始场景类别中确定表征用户所处场景的场景类别。
152.在一些可选的实现方式中,第二识别模块114包括:降噪单元1141,用于对待识别音频信号进行降噪处理,得到降噪音频信号;提取单元1142,用于从预先训练的至少两个场景化语音识别模型中提取场景类别对应的目标场景化语音识别模型;第二识别单元1143,用于基于目标场景化语音识别模型对降噪音频信号进行结果识别,得到场景化语音识别结果。
153.在一些可选的实现方式中,降噪单元1141包括:确定子单元11411,用于从预先训练的至少两个场景化信号处理模型中确定场景类别对应的目标场景化信号处理模型;降噪子单元11412,用于基于目标场景化信号处理模型对待识别音频信号进行降噪处理,得到降噪音频信号。
154.在一些可选的实现方式中,降噪子单元11412进一步用于:确定待识别音频信号的频域能量;基于目标场景化处理模型包括的神经网络,确定频域能量的先验信噪比和后验信噪比;基于目标场景化处理模型包括的降噪网络,根据先验信噪比和后验信噪比,对待识别音频信号进行降噪处理,得到降噪音频信号。
155.在一些可选的实现方式中,至少两个场景化信号处理模型分别包括的神经网络预先通过如下步骤训练得到:获取针对预设的至少两个场景分别采集的第一训练样本集合,其中,第一训练样本集合中的训练样本包括样本语音数据和样本噪声数据;基于样本语音数据和样本噪声数据,确定第一训练样本集合中的训练样本分别对应的先验信噪比、后验信噪比和混合数据频域能量,其中,混合数据频域能量为将样本语音数据和样本噪声数据混合后的频域能量;对于至少两个场景中的每个场景,将该场景下的第一训练样本集合中的训练样本对应的混合数据频域能量作为该场景下的初始场景化信号处理模型包括的神经网络的输入,将输入的混合数据频域能量对应的先验信噪比和后验信噪比作为神经网络的期望输出,训练得到该场景下的场景化信号处理模型包括的神经网络。
156.在一些可选的实现方式中,至少两个场景化语音识别模型预先通过如下步骤训练得到:获取针对预设的至少两个场景分别采集的第二训练样本集合,其中,第二训练样本集合中的训练样本包括样本降噪音频信号和标注信息;对于至少两个场景中的每个场景,将该场景下的第二训练样本集合中的训练样本包括的样本降噪音频信号作为该场景下的初始场景化语音识别模型的输入,将输入的样本降噪音频信号对应的标注信息作为初始场景化语音识别模型的期望输出,训练得到该场景下的场景化语音识别模型。
157.在一些可选的实现方式中,第一确定模块115包括:第三确定单元1151,用于从至少一个一级语音识别结果中确定与场景化语音识别结果相同的目标一级语音识别结果;第四确定单元1152,用于确定场景化语音识别结果对应的置信度;第五确定单元1153,用于基于述场景化语音识别结果对应的置信度和目标一级语音识别结果对应的置信度,确定二级语音识别结果。
158.在一些可选的实现方式中,该装置还包括:第二确定模块116,用于确定目标设备当前的语音识别模式;唤醒模块117,用于若语音识别模式为唤醒模式,基于二级语音识别结果执行唤醒操作;交互模块118,用于若语音识别模式为通用模式,基于二级语音识别结果执行通用语音交互操作。
159.在一些可选的实现方式中,获取模块111包括:获取单元1111,用于获取对用户的语音采集的初始音频信号;处理单元1112,用于对初始音频信号进行一级信号处理,将处理后得到的音频信号确定为待识别音频信号,其中,一级信号处理包括以下至少一种处理方式:回声消除处理、降噪处理。
160.本公开上述实施例提供的语音识别装置,通过首先对采集自用户语音的待识别音频信号进行一级语音识别,得到一级语音识别结果,然后对待识别音频信号进行场景类别判决,得到表征用户所处场景的场景类别,再对待识别音频信号进行场景类别对应的场景
化语音识别,得到场景化语音识别结果,最后基于至少一个一级语音识别结果和场景化语音识别结果,确定二级语音识别结果,实现了针对用户所处的场景进行有针对性地语音识别,在不同场景下可以充分规避相应的噪声对识别的影响,提高了语音识别的准确性。
161.示例性电子设备
162.下面,参考图13来描述根据本公开实施例的电子设备。该电子设备可以是如图1所示的终端设备101和服务器103中的任一个或两者、或与它们独立的单机设备,该单机设备可以与终端设备101和服务器103进行通信,以从它们接收所采集到的输入信号。
163.图13图示了根据本公开实施例的电子设备的框图。
164.如图13所示,电子设备1300包括一个或多个处理器1301和存储器1302。
165.处理器1301可以是中央处理单元(cpu)或者具有数据处理能力和/或指令执行能力的其他形式的处理单元,并且可以控制电子设备1300中的其他组件以执行期望的功能。
166.存储器1302可以包括一个或多个计算机程序产品,计算机程序产品可以包括各种形式的计算机可读存储介质,例如易失性存储器和/或非易失性存储器。易失性存储器例如可以包括随机存取存储器(ram)和/或高速缓冲存储器(cache)等。非易失性存储器例如可以包括只读存储器(rom)、硬盘、闪存等。在计算机可读存储介质上可以存储一个或多个计算机程序指令,处理器1301可以运行程序指令,以实现上文的本公开的各个实施例的语音识别方法以及/或者其他期望的功能。在计算机可读存储介质中还可以存储诸如待识别音频信号、一级语音识别结果、二级语音识别结果等各种内容。
167.在一个示例中,电子设备1300还可以包括:输入装置1303和输出装置1304,这些组件通过总线系统和/或其他形式的连接机构(未示出)互连。
168.例如,在该电子设备是终端设备101或服务器103时,该输入装置1303可以是麦克风、鼠标、键盘等设备,用于输入待识别音频信号、各种指令等。在该电子设备是单机设备时,该输入装置1303可以是通信网络连接器,用于从终端设备101和服务器103接收所输入的待识别音频信号、各种指令等。
169.该输出装置1304可以向外部输出各种信息,包括确定出的二级语音识别结果。该输出设备1304可以包括例如显示器、扬声器、打印机、以及通信网络及其所连接的远程输出设备等等。
170.当然,为了简化,图13中仅示出了该电子设备1300中与本公开有关的组件中的一些,省略了诸如总线、输入/输出接口等等的组件。除此之外,根据具体应用情况,电子设备1300还可以包括任何其他适当的组件。
171.示例性计算机程序产品和计算机可读存储介质
172.除了上述方法和设备以外,本公开的实施例还可以是计算机程序产品,其包括计算机程序指令,所述计算机程序指令在被处理器运行时使得所述处理器执行本说明书上述“示例性方法”部分中描述的根据本公开各种实施例的语音识别方法中的步骤。
173.所述计算机程序产品可以以一种或多种程序设计语言的任意组合来编写用于执行本公开实施例操作的程序代码,所述程序设计语言包括面向对象的程序设计语言,诸如java、c++等,还包括常规的过程式程序设计语言,诸如“c”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备
或服务器上执行。
174.此外,本公开的实施例还可以是计算机可读存储介质,其上存储有计算机程序指令,所述计算机程序指令在被处理器运行时使得所述处理器执行本说明书上述“示例性方法”部分中描述的根据本公开各种实施例的语音识别方法中的步骤。
175.所述计算机可读存储介质可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以包括但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑盘只读存储器(cd
‑
rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。
176.以上结合具体实施例描述了本公开的基本原理,但是,需要指出的是,在本公开中提及的优点、优势、效果等仅是示例而非限制,不能认为这些优点、优势、效果等是本公开的各个实施例必须具备的。另外,上述公开的具体细节仅是为了示例的作用和便于理解的作用,而非限制,上述细节并不限制本公开为必须采用上述具体的细节来实现。
177.本说明书中各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似的部分相互参见即可。对于系统实施例而言,由于其与方法实施例基本对应,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
178.本公开中涉及的器件、装置、设备、系统的方框图仅作为例示性的例子并且不意图要求或暗示必须按照方框图示出的方式进行连接、布置、配置。如本领域技术人员将认识到的,可以按任意方式连接、布置、配置这些器件、装置、设备、系统。诸如“包括”、“包含”、“具有”等等的词语是开放性词汇,指“包括但不限于”,且可与其互换使用。这里所使用的词汇“或”和“和”指词汇“和/或”,且可与其互换使用,除非上下文明确指示不是如此。这里所使用的词汇“诸如”指词组“诸如但不限于”,且可与其互换使用。
179.可能以许多方式来实现本公开的方法和装置。例如,可通过软件、硬件、固件或者软件、硬件、固件的任何组合来实现本公开的方法和装置。用于所述方法的步骤的上述顺序仅是为了进行说明,本公开的方法的步骤不限于以上具体描述的顺序,除非以其它方式特别说明。此外,在一些实施例中,还可将本公开实施为记录在记录介质中的程序,这些程序包括用于实现根据本公开的方法的机器可读指令。因而,本公开还覆盖存储用于执行根据本公开的方法的程序的记录介质。
180.还需要指出的是,在本公开的装置、设备和方法中,各部件或各步骤是可以分解和/或重新组合的。这些分解和/或重新组合应视为本公开的等效方案。
181.提供所公开的方面的以上描述以使本领域的任何技术人员能够做出或者使用本公开。对这些方面的各种修改对于本领域技术人员而言是非常显而易见的,并且在此定义的一般原理可以应用于其他方面而不脱离本公开的范围。因此,本公开不意图被限制到在此示出的方面,而是按照与在此公开的原理和新颖的特征一致的最宽范围。
182.为了例示和描述的目的已经给出了以上描述。此外,此描述不意图将本公开的实施例限制到在此公开的形式。尽管以上已经讨论了多个示例方面和实施例,但是本领域技术人员将认识到其某些变型、修改、改变、添加和子组合。