用于语音识别的方法、装置、设备、车辆和介质与流程

阅读: 评论:0



1.本公开涉及人工智能领域,特别是涉及一种用于语音识别的方法、装置、计算机设备、车辆、计算机可读存储介质和计算机程序产品。


背景技术:



2.近年来,随着人工智能技术的飞速发展,各种人工智能系统已经逐渐应用到人们的生产和生活中。语音识别是人工智能领域的一个重要应用及分支,其主要作用是利用深度学习等技术将语音信号转为相应的文本,是人机交互中的第一部分,也是最重要的一部分。
3.在语音识别系统中,如何保障用户的音频数据在传输过程中的隐私安全是目前关注的热点。相关技术中是将语音信号直接传输到云端,并通过部署在云端的语音识别神经网络模型完成语音识别处理,然后将得到的语音识别结果再返回至用户终端。


技术实现要素:



4.提供一种缓解、减轻或甚至消除上述问题中的一个或多个的机制将是有利的。
5.根据本公开的一方面,提供了一种用于语音识别的方法,应用于终端设备,所述终端设备包括端对端语音识别神经网络模型的编码器,所述方法包括:获取语音音频流;从所述语音音频流中提取声学特征,得到声学特征序列;利用所述编码器对所述声学特征序列进行编码,得到所述编码器输出的编码特征序列,其中,所述编码特征序列包括至少一个编码特征向量;将所述编码特征序列传输至云端设备,以供所述云端设备处理,其中,所述云端设备包括所述端对端语音识别神经网络模型的解码器;以及接收来自所述云端设备的语音识别结果,其中,所述语音识别结果由所述解码器对所述编码特征序列进行处理得到。
6.根据本公开的另一方面,提供了一种用于语音识别的方法,应用于云端设备,所述云端设备包括端对端语音识别神经网络模型的解码器,所述方法包括:接收来自终端设备的编码特征序列,其中,所述终端设备包括所述端对端语音识别神经网络模型的编码器,所述编码特征序列由所述编码器对声学特征序列进行编码得到,所述编码特征序列包括至少一个编码特征向量;利用所述解码器处理所述编码特征序列,得到所述解码器输出的语音识别结果;以及将所述语音识别结果传输至所述终端设备。
7.根据本公开的又另一方面,提供了一种用于语音识别的装置,应用于终端设备,所述终端设备包括端对端语音识别神经网络模型的编码器,所述装置包括:语音音频获取模块,用于获取语音音频流;声学特征提取模块,用于从所述语音音频流中提取声学特征,得到声学特征序列;声学特征编码模块,用于利用所述编码器对所述声学特征序列进行编码,得到所述编码器输出的编码特征序列,其中,所述编码特征序列包括至少一个编码特征向量;编码特征传输模块,用于将所述编码特征序列传输至云端设备,以供所述云端设备处理,其中,所述云端设备包括所述端对端语音识别神经网络模型的解码器;以及识别结果接收模块,接收来自所述云端设备的语音识别结果,其中,所述语音识别结果由所述解码器对
所述编码特征序列进行处理得到。
8.根据本公开的又另一方面,提供了一种用于语音识别的装置,应用于云端设备,所述云端设备包括端对端语音识别神经网络模型的解码器,所述装置包括:编码特征接收模块,用于接收来自终端设备的编码特征序列,其中,所述终端设备包括所述端对端语音识别神经网络模型的编码器,所述编码特征序列由所述编码器对声学特征序列进行编码得到,所述编码特征序列包括至少一个编码特征向量;编码特征解码模块,用于利用所述解码器处理所述编码特征序列,得到所述解码器输出的语音识别结果;以及识别结果传输模块,用于将所述语音识别结果传输至所述终端设备。
9.根据本公开的又另一方面,提供了一种计算机设备,包括:至少一个处理器;以及至少一个存储器,其上存储有计算机程序,其中,所述计算机程序在被所述至少一个处理器执行时,使所述至少一个处理器执行上文描述的应用于终端设备的用于语音识别的方法,或应用于云端设备的用于语音识别的方法。
10.根据本公开的又另一方面,提供了一种车辆,包括:上述应用于终端设备的用于语音识别的装置;或者计算机设备,所述计算机设备包括至少一个处理器和至少一个存储器,所述至少一个存储器上存储有计算机程序,其中,所述计算机程序在被所述至少一个处理器执行时,使所述至少一个处理器执行如上所述的应用于终端设备的用于语音识别的方法。
11.根据本公开的又另一方面,提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时,使所述处理器执行上文描述的应用于终端设备的用于语音识别的方法或应用于云端设备的用于语音识别的方法。
12.根据本公开的再另一方面,提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时,使所述处理器执行上文描述的应用于终端设备的用于语音识别的方法或应用于云端设备的用于语音识别的方法。
13.根据在下文中所描述的实施例,本公开的这些和其它方面将是清楚明白的,并且将参考在下文中所描述的实施例而被阐明。
附图说明
14.在下面结合附图对于示例性实施例的描述中,本公开的更多细节、特征和优点被公开,在附图中:
15.图1是图示出根据示例性实施例的可以在其中实施本文描述的各种方法的示例系统的示意图;
16.图2是图示出根据示例性实施例的应用于终端设备的用于语音识别的方法的示意性流程图。
17.图3是图示出根据示例性实施例的应用于云端设备的用于语音识别的方法的示意性流程图。
18.图4是图示出根据另一示例性实施例的应用于云端设备的用于语音识别的方法的部分示意性流程图。
19.图5是图示出由终端设备和云端设备相互配合实现语音识别的示例工作流程的流程图。
20.图6是图示出根据示例性实施例的应用于终端设备的用于语音识别的装置的示意性框图。
21.图7是图示出根据示例性实施例的应用于云端设备的用于语音识别的装置的示意性框图。
22.图8是图示出能够应用于示例性实施例的示例性计算机设备的框图。
具体实施方式
23.在本公开中,除非另有说明,否则使用术语“第一”、“第二”等来描述各种要素不意图限定这些要素的位置关系、时序关系或重要性关系,这种术语只是用于将一个元件与另一元件区分开。在一些示例中,第一要素和第二要素可以指向该要素的同一实例,而在某些情况下,基于上下文的描述,它们也可以指代不同实例。
24.在本公开中对各种所述示例的描述中所使用的术语只是为了描述特定示例的目的,而并非旨在进行限制。除非上下文另外明确地表明,如果不特意限定要素的数量,则该要素可以是一个也可以是多个。如本文使用的,术语“多个”意指两个或更多,并且术语“基于”应解释为“至少部分地基于”。此外,术语“和/或”以及
“……
中的至少一个”涵盖所列出的项目中的任何一个以及全部可能的组合方式。
25.相关技术中,通常是将终端设备采集到的用户音频数据直接传输至云端设备,并由部署在云端设备的语音识别神经网络模型对接收到的音频数据进行处理,以将得到的识别结果返回至用户终端设备。然而,此种直接在终端设备和云端设备之间传输音频数据的方式使得音频数据很容易在传输链路上被窃取,无法保障用户隐私数据的传输安全。
26.相关技术中,还包括在终端设备处对用户的语音音频数据进行声学特征提取,然后将提取到的声学特征传输至云端设备进行语音识别。但对于此种方式,虽然窃取者不能直接得到用户的音频数据,却仍可以根据提取到的声学特征逆向恢复音频数据,同样也无法保证用户音频数据的隐私安全。
27.根据本公开的实施例,提供了一种用于语音识别的方法,通过将端对端语音识别神经网络模型的编码器和解码器分别设置在终端设备和云端设备,实现了在终端设备处对语音音频数据进行编码得到编码数据,再将不能逆向恢复的编码数据传输至云端的解码器部分进行解码,因此提高了在终端设备和云端设备之间进行音频数据传输的安全性,有效保证了用户的隐私安全。
28.进一步地,通过将端对端语音识别神经网络模型的编码器和解码器分开部署在终端设备和云端设备,有效降低了单侧设备所需进行的计算量,解决了单侧设备算力有限的问题,降低了语音识别的实现难度,提高了处理效率。
29.图1是图示出根据示例性实施例的可以在其中实施本文描述的各种方法的示例系统100的示意图。
30.参考图1,该系统100包括车载系统110、服务器120、以及将车载系统110与服务器120通信地耦合的网络130。
31.车载系统110包括显示器114和可经由显示器114显示的应用程序(app)112。应用程序112可以为车载系统110默认安装的或由用户102下载和安装的应用程序,或者作为轻量化应用程序的小程序。在应用程序112为小程序的情况下,用户102可以通过在宿主应用
中搜索应用程序112(例如,通过应用程序112的名称等)或扫描应用程序112的图形码(例如,条形码、二维码等)等方式,在车载系统110上直接运行应用程序112,而无需安装应用程序112。在一些实施例中,车载系统110可以包括一个或多个处理器和一个或多个存储器(未示出),并且车载系统110被实现为车载计算机。在一些实施例中,车载系统110可以包括更多或更少的显示屏114(例如,不包括显示屏114),和/或一个或多个扬声器或其他人机交互设备。在一些实施例中,车载系统110可以不与服务器120通信。
32.服务器120可以代表单台服务器、多台服务器的集、分布式系统、或者提供基础云服务(诸如云数据库、云计算、云存储、云通信)的云服务器。将理解的是,虽然图1中示出服务器120与仅一个车载系统110通信,但是服务器120可以同时为多个车载系统提供后台服务。
33.网络130允许按照约定的通信协议和数据交互标准,在车-x(“x”意指车、路、行人或互联网等)之间,进行无线通讯和信息交换。网络130的示例包括局域网(lan)、广域网(wan)、个域网(pan)、和/或诸如互联网之类的通信网络的组合。网络130可以是有线或无线网络。在一个示例中,网络130可以是车内网、车际网和/或车载移动互联网。
34.为了本公开实施例的目的,在图1的示例中,应用程序112可以为语音识别应用程序,该语音识别应用程序可以提供基于用户的语音音频流进行声学特征提取和对声学特征序列进行编码处理的功能。与此相应,服务器120可以是与语音识别应用程序一起使用的服务器。该服务器120可以基于车载系统110中运行的应用程序112上传的用户的编码特征序列进行相应解码,并将解码后得到的语音识别结果发送回车载系统110中运行的应用程序112,以反馈给用户。替换地,服务器120也可以将上述语音识别结果提供给车载系统110,由车载系统110中运行的应用程序112对其进行调用并反馈给用户。
35.图2是图示出根据示例性实施例的应用于终端设备的用于语音识别的方法200的示意性流程图。
36.参考图2,上述终端设备包括端对端语音识别神经网络模型的编码器,方法200包括如下步骤。
37.步骤210,获取语音音频流。
38.在一些实施例中,当获取该用户的语音音频流后,可以首先可以对该语音音频流进行一些预处理操作。预处理操作例如可以包括去除语音音频流中的静音片段、分帧等,其中,分帧例如可以是将该语音音频流按照帧长25ms、帧移10ms的方式将该语音音频流分为多个音频帧。
39.在一些实施例中,可以对用户的语音音频流进行实时采集以及实时预处理。在一些示例中,响应于采集到第一预设时长(例如为50ms)的语音音频后,即对该段语音音频进行上述预处理及声学特征提取操作。由此,通过对语音音频流进行实时处理,从而避免对一段较长的语音音频进行集中处理时对计算资源的占用,提升了计算效率。
40.步骤220,从语音音频流中提取声学特征,得到声学特征序列。
41.根据一些实施例,步骤220包括:对语音音频流进行fbank(filter bank,语谱图)声学特征提取和mfcc(mel frequency cepstral coefficient,梅尔频率倒谱参数)声学特征提取的至少一种。
42.可以理解的是,对语音音频流进行其他形式的声学特征提取也是可能的,在此不
作具体限制。
43.在一些实施例中,可以分别对该语音音频流的每一个音频帧进行上述声学特征的提取。在一些实施例中,在提取到上述声学特征的基础上,可以进一步采用一个滑窗(窗口长度例如为5帧),对连续的多个帧的声学特征进行均值规整,从而消除各个帧两端可能存在的信号不连续性。
44.在一些实施例中,可以进一步对上述声学特征进行差分处理。差分处理例如可以为一阶差分处理、二阶差分处理等,并将进行差分处理后的声学特征作为编码器的输入特征。由此,通过差分处理,能够获得更加丰富的声学特征,从而为后续的语音识别提供更多的特征信息,进一步提升语音识别的准确率。
45.步骤230,利用编码器对声学特征序列进行编码,得到编码器输出的编码特征序列,其中,编码特征序列包括至少一个编码特征向量。
46.在一些实施例中,声学特征序列包括至少一个声学特征向量。每个声学特征向量可以被设置为对应于语音音频流中的一个音节或一个词语,在此不作限制。
47.在一些实施例中,端对端语音识别神经网络模型还包括注意力模型,编码器包括rnn(recurrent neural network,循环神经网络)结构。步骤230包括,将上述至少一个声学特征向量输入编码器中进行编码处理,并将编码器中每个声学特征向量对应的rnn单元的隐层状态作为一个编码特征向量,从而得到至少一个编码特征向量作为上述编码特征序列。将该编码特征序列传输至云端设备进行注意力计算和解码处理。
48.可以理解的是,本公开的重点在于将端对端语音识别神经网络模型的编码器和解码器分开部署于终端设备和云端设备。在其他实施例中,端对端语音识别神经网络模型可以具有其他的具体网络结构。例如,不在端对端语音识别神经网络模型中设置上述注意力模型等,在此不作限制。
49.步骤240,将编码特征序列传输至云端设备,以供云端设备处理,其中,云端设备包括端对端语音识别神经网络模型的解码器。
50.步骤250,接收来自云端设备的语音识别结果,其中,语音识别结果由解码器对编码特征序列进行处理得到。
51.根据一些实施例,上述端对端语音识别神经网络模型包括transformer和conformer模型中的至少一种。
52.根据本公开实施例的应用于终端设备的用于语音识别的方法,通过将端对端语音识别神经网络模型的编码器和解码器分别设置在终端设备和云端设备,实现了在终端设备处对语音音频数据进行编码得到编码数据,再将不能逆向恢复的编码数据传输至云端的解码器部分进行解码,因此提高了在终端设备和云端设备之间进行音频数据传输的安全性,有效保证了用户的隐私安全。
53.进一步地,通过将端对端语音识别神经网络模型的编码器和解码器分开部署在终端设备和云端设备,有效降低了单侧设备所需进行的计算量,解决了单侧设备算力有限的问题,降低了语音识别的实现难度,提高了处理效率。
54.在一些实施例中,本公开实施例提供的方法200可以应用于车辆中的智能座舱,以使该智能座舱具备对智能座舱中的用户的语音音频进行语音识别的功能。可理解的,本公开的实施例提供的方法200也可以应用于类似的其他场景中,在此不做限制。
55.图3是图示出根据示例性实施例的应用于云端设备的用于语音识别的方法300的示意性流程图。
56.参考图3,上述云端设备包括端对端语音识别神经网络模型的解码器,方法300包括如下步骤。
57.步骤310,接收来自终端设备的编码特征序列,其中,终端设备包括端对端语音识别神经网络模型的编码器,编码特征序列由编码器对声学特征序列进行编码得到,编码特征序列包括至少一个编码特征向量。
58.对于步骤310,编码特征序列的生成方法可参考上述针对步骤230的描述,在此不再进行赘述。
59.步骤320,利用解码器处理编码特征序列,得到解码器输出的语音识别结果。
60.现在参考图4,根据一些实施例,云端设备还包括端对端语音识别神经网络模型的注意力模型,并且步骤320包括:
61.·
在针对编码特征序列的第一个处理周期中:
62.步骤421,将编码特征序列输入注意力模型进行第一注意力计算,得到注意力模型输出的第一上下文向量,其中,第一上下文向量指示编码特征序列中的每个编码特征向量对解码器在第一个处理周期输出的语音识别内容的重要程度;
63.步骤422,将第一上下文向量输入解码器,得到解码器在第一个处理周期输出的语音识别内容,并将输出的语音识别内容添加至语音识别内容序列;
64.·
在第一个处理周期之后针对编码特征序列的第n个处理周期中:
65.步骤423,响应于针对编码特征序列的解码未结束,将编码特征序列和解码器在第n-1个处理周期的隐层状态输入注意力模型进行第二注意力计算,得到注意力模型输出的第二上下文向量,其中,第二上下文向量指示编码特征序列中的每个编码特征向量对解码器在第n个处理周期输出的语音识别内容的重要程度,n为大于1的整数;
66.步骤424,将解码器在第n-1个处理周期的隐层状态、第二上下文向量和解码器在第n-1个处理周期输出的语音识别内容输入解码器,得到解码器在第n个处理周期输出的语音识别内容,并将输出的语音识别内容添加至语音识别内容序列;
67.步骤425,响应于针对编码特征序列的解码结束,基于语音识别内容序列中的所有语音识别内容生成语音识别结果。
68.需要说明的是,端对端语音识别神经网络模型可以具有任何已知或将来的网络结构。例如,在一些示例中,上述端对端语音识别神经网络模型可以不包括注意力模型等,在此不作限制。
69.步骤303,将语音识别结果传输至终端设备。
70.在一些实施例中,语音识别结果为用户的语音音频流包括的内容对应的文本数据。在另一些实施例中,语音识别结果为根据用户的语音音频流中的语音指令生成的相应的操作指令,上述操作指令用于控制终端设备执行用户指示的操作。
71.在一些实施例中,还包括将上述编码器、注意力模型和解码器将作为一个整体模型,并使用目标训练数据集对该整体模型进行预训练。上述目标训练数据集包括多个训练数据对,每个训练数据对包括从样本音频数据中提取的声学特征向量和该样本音频对应的标注文本。
72.根据本公开实施例的应用于云端设备的用于语音识别的方法,通过将端对端语音识别神经网络模型的编码器和解码器分别设置在终端设备和云端设备,实现了在终端设备处对语音音频数据进行编码得到编码数据,再将不能逆向恢复的编码数据传输至云端的解码器部分进行解码,因此提高了在终端设备和云端设备之间进行音频数据传输的安全性,有效保证了用户的隐私安全。
73.进一步地,通过将端对端语音识别神经网络模型的编码器和解码器分开部署在终端设备和云端设备,有效降低了单侧设备所需进行的计算量,解决了单侧设备算力有限的问题,降低了语音识别的实现难度,提高了处理效率
74.应当理解,本公开实施例中的应用于终端设备的方法200和应用于云端设备的方法300相互配合,实现了语音识别功能。但需要说明的是,方法200和方法300也可以单独或相互配合地应用于其他场景中,对此不作限制。
75.此处以一个具体示例对本公开实施例的语音识别流程进行详细说明。需要说明的是,以下示例仅作举例说明之用,并不因此将其限制于此。
76.图5图示出了由终端设备和云端设备相互配合实现语音识别的示例工作流程的流程图。
77.参见图5,终端设备执行下述步骤510~530。
78.步骤510,采集用户的语音音频流。
79.步骤520,从采集到的语音音频流中提取出声学特征向量a1,a2和a3,得到声学特征序列{a1,a2,a3}。需要说明的是,上述声学特征向量的数量仅作举例说明之用,并不因此将其限制于此。
80.步骤503,利用编码器对声学特征序列{a1,a2,a3}进行编码处理,并将编码器中声学特征向量a1对应的隐层状态b1、声学特征向量a2对应的隐层状态b2和声学特征向量a3对应的隐层状态b3作为编码特征向量,得到编码特征序列{b1,b2,b3}以传输至云端设备。
81.云端设备执行下述步骤540~550。
82.步骤540,接收来自终端设备的编码特征序列{b1,b2,b3},并对其进行注意力计算和解码处理。
83.具体而言,在第一个处理周期:
84.将编码特征序列{b1,b2,b3}输入注意力模型进行第一注意力计算,得到注意力模型输出的第一上下文向量c1,第一上下文向量c1指示b1、b2和b3对解码器在第一个处理周期输出的语音识别内容的重要程度。
85.第一上下文向量c1可以表示如下
86.c1=g(a1*b1,a2*b2,a3*b3)
87.其中,函数g(
·
)表示根据b1、b2和b3生成针对整个编码特征序列的语义表示向量的变换函数;a1、a2和a3表示解码器在第一处理周期的解码过程中对b1、b2和b3分配的注意力的概率分布。
88.在一个示例中,函数g可以表示对b1、b2和b3进行加权计算,a1、a2和a3可以分别表示b1、b2和b3在进行加权计算时的权重系数,例如,a1为0.2、a2为0.3且a3为0.5。但应当理解,上述示例仅作举例说明之用,并不因此将其限制于此。
89.将第一上下文向量c1输入解码器进行解码处理,得到解码器在第一个处理周期输
出的语音识别内容y1,并将y1添加至语音识别内容序列y。
90.语音识别内容y1可以表示如下
91.y1=f(c1)
92.其中,函数f(
·
)表示解码器进行解码时所使用的变换函数。应当理解,上述函数f(
·
)取决于解码器的具体网络结构,对此不作限制。
93.在第二个处理周期:
94.响应于针对编码特征序列{b1,b2,b3}的解码未结束,将编码特征序列{b1,b2,b3}和解码器在第一个处理周期对应的隐层状态q1输入注意力模型进行第二注意力计算,得到注意力模型输出的上下文向量c2,上下文向量c2指示b1、b2和b3对解码器在第二个处理周期输出的语音识别内容的重要程度。
95.上下文向量c2可以表示如下
96.c2=g(a4*b1,a5*b2,a6*b3)
97.其中,a4、a5和a6表示解码器在第二处理周期的解码过程中对b1、b2和b3分配的注意力的概率分布。
98.将解码器在第一个处理周期对应的隐层状态q1、上下文向量c2和解码器在第一个处理周期输出的语音识别内容y1输入解码器,得到解码器在第二个处理周期输出的语音识别内容y2,并将y2添加至语音识别内容序列y。
99.语音识别内容y2可以表示如下
100.y2=f(c2,y1,q1)
101.在第三个处理周期:
102.响应于针对编码特征序列{b1,b2,b3}的解码未结束,将编码特征序列{b1,b2,b3}和解码器在第二个处理周期对应的隐层状态q输入注意力模型进行第二注意力计算,得到注意力模型输出的上下文向量c3,上下文向量c3指示b1、b2和b3对解码器在第三个处理周期输出的语音识别内容的重要程度。
103.上下文向量c3可以表示如下
104.c3=g(a7*b1,a8*b2,a9*b3)
105.其中,a7、a8和a9表示解码器在第三处理周期的解码过程中对b1、b2和b3分配的注意力的概率分布。
106.将解码器在第二个处理周期对应的隐层状态q2、上下文向量c3和解码器在第二个处理周期输出的语音识别内容y2输入解码器,得到解码器在第三个处理周期输出的语音识别内容y3,并将y3添加至语音识别内容序列y。
107.语音识别内容y3可以表示如下
108.y3=f(c3,y2,q2)
109.以此类推,对于之后的每个处理周期,响应于针对编码特征序列{b1,b2,b3}的解码未结束,均在当前处理周期内执行上述类似的注意力计算和解码操作,以得到多个语音识别内容并添加至语音识别内容序列y。
110.在第n个处理周期:
111.响应于针对编码特征序列{b1,b2,b3}的解码结束,执行步骤550,基于语音识别内容序列y{y1,y2,
……
,y
n-1
}中的所有语音识别内容生成语音识别结果x,并将语音识别结果x
返回终端设备。
112.需要说明的是,上述示例仅作举例说明之用,并不因此将其限制于此。可以将任何适当的端对端语音识别神经网络模型的编码器和解码器分别部署在终端设备和云端设备,以执行本公开实施例的方法200和方法300。
113.根据本公开的实施例,如图6所示,还提供了一种应用于终端设备的用于语音识别的装置600,包括:
114.语音音频获取模块610,用于获取语音音频流;
115.声学特征提取模块620,用于从语音音频流中提取声学特征,得到声学特征序列;
116.声学特征编码模块630,用于利用编码器对声学特征序列进行编码,得到编码器输出的编码特征序列,其中,编码特征序列包括至少一个编码特征向量;
117.编码特征传输模块640,用于将编码特征序列传输至云端设备,以供云端设备处理,其中,云端设备包括端对端语音识别神经网络模型的解码器;以及
118.识别结果接收模块650,接收来自云端设备的语音识别结果,其中,语音识别结果由解码器对编码特征序列进行处理得到。
119.这里,装置600的上述各模块610~650的操作分别与前述方法200的步骤210~250的操作类似,在此不再进行赘述。
120.根据本公开的实施例,如图7所示,还提供了一种应用于云端设备的用于语音识别的装置700,包括:
121.编码特征接收模块710,用于接收来自终端设备的编码特征序列,其中,终端设备包括端对端语音识别神经网络模型的编码器,编码特征序列由编码器对声学特征序列进行编码得到,编码特征序列包括至少一个编码特征向量;
122.编码特征解码模块720,用于利用解码器处理编码特征序列,得到解码器输出的语音识别结果;以及
123.识别结果传输模块730,用于将语音识别结果传输至终端设备。
124.这里,装置700的上述各模块710~730的操作分别与前述方法300的步骤310~330的操作类似,在此不再进行赘述。
125.虽然上面参考特定模块讨论了特定功能,但是应当注意,本文讨论的各个模块的功能可以分为多个模块,和/或多个模块的至少一些功能可以组合成单个模块。本文讨论的特定模块执行动作包括该特定模块本身执行该动作,或者替换地该特定模块调用或以其他方式访问执行该动作(或结合该特定模块一起执行该动作)的另一个组件或模块。因此,执行动作的特定模块可以包括执行动作的该特定模块本身和/或该特定模块调用或以其他方式访问的、执行动作的另一模块。
126.还应当理解,本文可以在软件硬件元件或程序模块的一般上下文中描述各种技术。上面关于图6和图7描述的各个模块可以在硬件中或在结合软件和/或固件的硬件中实现。例如,这些模块可以被实现为计算机程序代码/指令,该计算机程序代码/指令被配置为在一个或多个处理器中执行并存储在计算机可读存储介质中。可替换地,这些模块可以被实现为硬件逻辑/电路。soc可以包括集成电路芯片(其包括处理器(例如,中央处理单元(central processing unit,cpu)、微控制器、微处理器、数字信号处理器(digital signal processor,dsp)等)、存储器、一个或多个通信接口、和/或其他电路中的一个或多个部件),
并且可以可选地执行所接收的程序代码和/或包括嵌入式固件以执行功能。
127.根据本公开的一方面,提供了一种计算机设备,其包括至少一个处理器、至少一个存储器以及存储在至少一个存储器上的计算机程序。该至少一个处理器被配置为执行计算机程序以执行图2或图3所示的用于语音识别的方法。
128.根据本公开的一方面,提供了一种车辆,其包括上述应用于终端设备的用于语音识别的装置600;或者上述计算机设备,该计算机设备包括至少一个处理器、至少一个存储器以及存储在该至少一个存储器上的计算机程序,该至少一个处理器被配置为执行计算机程序以执行图2所示的应用于终端设备的用于语音识别的方法。
129.根据本公开的一方面,提供了一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时,使所述处理器执行图2或图3所示的用于语音识别的方法。
130.根据本公开的一方面,提供了一种计算机程序产品,其包括计算机程序,该计算机程序被处理器执行时,使所述处理器执行图2或图3所示的用于语音识别的方法。
131.在下文中,结合图8描述这样的计算机设备、非暂态计算机可读存储介质和计算机程序产品的说明性示例。
132.图8示出了可以被用来实施本文所描述的方法的计算机设备800的示例配置。举例来说,图1中所示的服务器120和/或车载系统110可以包括类似于计算机设备800的架构。上述方法200和方法300也可以全部或至少部分地由计算机设备800或类似设备或系统实现。
133.计算机设备800可以包括能够诸如通过系统总线814或其他适当的连接彼此通信的至少一个处理器802、存储器804、(多个)通信接口806、显示设备808、其他输入/输出(i/o)设备810以及一个或更多大容量存储设备812。
134.处理器802可以是单个处理单元或多个处理单元,所有处理单元可以包括单个或多个计算单元或者多个核心。处理器802可以被实施成一个或更多微处理器、微型计算机、微控制器、数字信号处理器、中央处理单元、状态机、逻辑电路和/或基于操作指令来操纵信号的任何设备。除了其他能力之外,处理器802可以被配置成获取并且执行存储在存储器804、大容量存储设备812或者其他计算机可读介质中的计算机可读指令,诸如操作系统816的程序代码、应用程序818的程序代码、其他程序820的程序代码等。
135.存储器804和大容量存储设备812是用于存储指令的计算机可读存储介质的示例,所述指令由处理器802执行来实施前面所描述的各种功能。举例来说,存储器804一般可以包括易失性存储器和非易失性存储器二者(例如ram、rom等等)。此外,大容量存储设备812一般可以包括硬盘驱动器、固态驱动器、可移除介质、包括外部和可移除驱动器、存储器卡、闪存、软盘、光盘(例如cd、dvd)、存储阵列、网络附属存储、存储区域网等等。存储器804和大容量存储设备812在本文中都可以被统称为存储器或计算机可读存储介质,并且可以是能够把计算机可读、处理器可执行程序指令存储为计算机程序代码的非暂态介质,所述计算机程序代码可以由处理器802作为被配置成实施在本文的示例中所描述的操作和功能的特定机器来执行。
136.多个程序可以存储在大容量存储设备812上。这些程序包括操作系统816、一个或多个应用程序818、其他程序820和程序数据822,并且它们可以被加载到存储器804以供执行。这样的应用程序或程序模块的示例可以包括例如用于实现以下系统/功能的计算机程
序逻辑(例如,计算机程序代码或指令):方法200、方法300和/或本文描述的另外的实施例。
137.虽然在图8中被图示成存储在计算机设备800的存储器804中,但是模块816、818、820和822或者其部分可以使用可由计算机设备800访问的任何形式的计算机可读介质来实施。如本文所使用的,“计算机可读介质”至少包括两种类型的计算机可读介质,也就是计算机可读存储介质和通信介质。
138.计算机可读存储介质包括通过用于存储信息的任何方法或技术实施的易失性和非易失性、可移除和不可移除介质,所述信息诸如是计算机可读指令、数据结构、程序模块或者其他数据。计算机可读存储介质包括而不限于ram、rom、eeprom、闪存或其他存储器技术,cd-rom、数字通用盘(dvd)、或其他光学存储装置,磁盒、磁带、磁盘存储装置或其他磁性存储设备,或者可以被用来存储信息以供计算机设备访问的任何其他非传送介质。与此相对,通信介质可以在诸如载波或其他传送机制之类的已调制数据信号中具体实现计算机可读指令、数据结构、程序模块或其他数据。本文所定义的计算机可读存储介质不包括通信介质。
139.一个或更多通信接口806用于诸如通过网络、直接连接等等与其他设备交换数据。这样的通信接口可以是以下各项中的一个或多个:任何类型的网络接口(例如,网络接口卡(nic))、有线或无线(诸如ieee 802.11无线lan(wlan))无线接口、全球微波接入互操作(wi-max)接口、以太网接口、通用串行总线(usb)接口、蜂窝网络接口、bluetoothtm接口、近场通信(nfc)接口等。通信接口806可以促进在多种网络和协议类型内的通信,其中包括有线网络(例如lan、电缆等等)和无线网络(例如wlan、蜂窝、卫星等等)、因特网等等。通信接口806还可以提供与诸如存储阵列、网络附属存储、存储区域网等等中的外部存储装置(未示出)的通信。
140.在一些示例中,可以包括诸如监视器之类的显示设备808,以用于向用户显示信息和图像。其他i/o设备810可以是接收来自用户的各种输入并且向用户提供各种输出的设备,并且可以包括触摸输入设备、手势输入设备、摄影机、键盘、遥控器、鼠标、打印机、音频输入/输出设备等等。
141.本文描述的技术可以由计算机设备800的这些各种配置来支持,并且不限于本文所描述的技术的具体示例。例如,该功能还可以通过使用分布式系统在“云”上全部或部分地实现。云包括和/或代表用于资源的平台。平台抽象云的硬件(例如,服务器)和软件资源的底层功能。资源可以包括在远离计算机设备800的服务器上执行计算处理时可以使用的应用和/或数据。资源还可以包括通过因特网和/或通过诸如蜂窝或wi-fi网络的订户网络提供的服务。平台可以抽象资源和功能以将计算机设备800与其他计算机设备连接。因此,本文描述的功能的实现可以分布在整个云内。例如,功能可以部分地在计算机设备800上以及部分地通过抽象云的功能的平台来实现。
142.虽然在附图和前面的描述中已经详细地说明和描述了本公开,但是这样的说明和描述应当被认为是说明性的和示意性的,而非限制性的;本公开不限于所公开的实施例。通过研究附图、公开内容和所附的权利要求书,本领域技术人员在实践所要求保护的主题时,能够理解和实现对于所公开的实施例的变型。在权利要求书中,词语“包括”不排除未列出的其他元件或步骤,不定冠词“一”或“一个”不排除多个,术语“多个”是指两个或两个以上,并且术语“基于”应解释为“至少部分地基于”。在相互不同的从属权利要求中记载了某些措
施的仅有事实并不表明这些措施的组合不能用来获益。
143.以下将描述本公开的一些示例性方面。
144.方面1是一种用于语音识别的方法,应用于终端设备,终端设备包括端对端语音识别神经网络模型的编码器,方法包括:
145.获取语音音频流;
146.从语音音频流中提取声学特征,得到声学特征序列;
147.利用编码器对声学特征序列进行编码,得到编码器输出的编码特征序列,其中,编码特征序列包括至少一个编码特征向量;
148.将编码特征序列传输至云端设备,以供云端设备处理,其中,云端设备包括端对端语音识别神经网络模型的解码器;以及
149.接收来自云端设备的语音识别结果,其中,语音识别结果由解码器对编码特征序列进行处理得到。
150.方面2是根据方面1的方法,其中,从语音音频流中提取声学特征包括:
151.对语音音频流进行fbank声学特征提取和mfcc声学特征提取中的至少一种。
152.方面3是根据方面1或2的方法,其中,端对端语音识别神经网络模型为transformer模型或conformer模型。
153.方面4是一种用于语音识别的方法,应用于云端设备,云端设备包括端对端语音识别神经网络模型的解码器,方法包括:
154.接收来自终端设备的编码特征序列,其中,终端设备包括端对端语音识别神经网络模型的编码器,编码特征序列由编码器对声学特征序列进行编码得到,编码特征序列包括至少一个编码特征向量;
155.利用解码器处理编码特征序列,得到解码器输出的语音识别结果;以及
156.将语音识别结果传输至终端设备。
157.方面5是根据方面4的方法,其中,云端设备还包括端对端语音识别神经网络模型的注意力模型,并且其中,利用解码器处理编码特征序列,包括:
158.在针对编码特征序列的第一个处理周期中:
159.将编码特征序列输入注意力模型进行第一注意力计算,得到注意力模型输出的第一上下文向量,其中,第一上下文向量指示编码特征序列中的每个编码特征向量对解码器在第一个处理周期输出的语音识别内容的重要程度;
160.将第一上下文向量输入解码器,得到解码器在第一个处理周期输出的语音识别内容,并将输出的语音识别内容添加至语音识别内容序列;
161.在第一个处理周期之后针对编码特征序列的第n个处理周期中:
162.响应于针对编码特征序列的解码未结束,将编码特征序列和解码器在第n-1个处理周期的隐层状态输入注意力模型进行第二注意力计算,得到注意力模型输出的第二上下文向量,其中,第二上下文向量指示编码特征序列中的每个编码特征向量对解码器在第n个处理周期输出的语音识别内容的重要程度,n为大于1的整数;
163.将解码器在第n-1个处理周期的隐层状态、第二上下文向量和语音识别内容序列中输入解码器,得到解码器在第n个处理周期输出的语音识别内容,并将输出的语音识别内容添加至语音识别内容序列;
164.响应于针对编码特征序列的解码结束,基于语音识别内容序列中的所有语音识别内容生成语音识别结果。
165.方面6是根据方面4或5的方法,其中,端对端语音识别神经网络模型为transformer模型或conformer模型。
166.方面7是一种用于语音识别的装置,应用于终端设备,终端设备包括端对端语音识别神经网络模型的编码器,装置包括:
167.语音音频获取模块,用于获取语音音频流;
168.声学特征提取模块,用于从语音音频流中提取声学特征,得到声学特征序列;
169.声学特征编码模块,用于利用编码器对声学特征序列进行编码,得到编码器输出的编码特征序列,其中,编码特征序列包括至少一个编码特征向量;
170.编码特征传输模块,用于将编码特征序列传输至云端设备,以供云端设备处理,其中,云端设备包括端对端语音识别神经网络模型的解码器;以及
171.识别结果接收模块,接收来自云端设备的语音识别结果,其中,语音识别结果由解码器对编码特征序列进行处理得到。
172.方面8是一种用于语音识别的装置,应用于云端设备,云端设备包括端对端语音识别神经网络模型的解码器,装置包括:
173.编码特征接收模块,用于接收来自终端设备的编码特征序列,其中,终端设备包括端对端语音识别神经网络模型的编码器,编码特征序列由编码器对声学特征序列进行编码得到,编码特征序列包括至少一个编码特征向量;
174.编码特征解码模块,用于利用解码器处理编码特征序列,得到解码器输出的语音识别结果;以及
175.识别结果传输模块,用于将语音识别结果传输至终端设备。
176.方面9是一种计算机设备,包括:
177.至少一个处理器;以及
178.至少一个存储器,其上存储有计算机程序,
179.其中,计算机程序在被至少一个处理器执行时,使至少一个处理器执行如方面1-6中任一方面的方法。
180.方面10是一种车辆,包括:
181.如方面7的用于语音识别的装置;或者
182.计算机设备,计算机设备包括至少一个处理器和至少一个存储器,至少一个存储器上存储有计算机程序,其中,计算机程序在被至少一个处理器执行时,使至少一个处理器执行如方面1-3中任一方面的方法。
183.方面11是一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时,使处理器执行如方面1-6中任一方面的方法。
184.方面12是一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时,使处理器执行如方面1-6中任一方面的方法。

技术特征:


1.一种用于语音识别的方法,应用于终端设备,所述终端设备包括端对端语音识别神经网络模型的编码器,所述方法包括:获取语音音频流;从所述语音音频流中提取声学特征,得到声学特征序列;利用所述编码器对所述声学特征序列进行编码,得到所述编码器输出的编码特征序列,其中,所述编码特征序列包括至少一个编码特征向量;将所述编码特征序列传输至云端设备,以供所述云端设备处理,其中,所述云端设备包括所述端对端语音识别神经网络模型的解码器;以及接收来自所述云端设备的语音识别结果,其中,所述语音识别结果由所述解码器对所述编码特征序列进行处理得到。2.根据权利要求1所述的方法,其中,所述从所述语音音频流中提取声学特征包括:对所述语音音频流进行fbank声学特征提取和mfcc声学特征提取中的至少一种。3.根据权利要求1或2所述的方法,其中,所述端对端语音识别神经网络模型为transformer模型或conformer模型。4.一种用于语音识别的方法,应用于云端设备,所述云端设备包括端对端语音识别神经网络模型的解码器,所述方法包括:接收来自终端设备的编码特征序列,其中,所述终端设备包括所述端对端语音识别神经网络模型的编码器,所述编码特征序列由所述编码器对声学特征序列进行编码得到,所述编码特征序列包括至少一个编码特征向量;利用所述解码器处理所述编码特征序列,得到所述解码器输出的语音识别结果;以及将所述语音识别结果传输至所述终端设备。5.根据权利要求4所述的方法,其中,所述云端设备还包括端对端语音识别神经网络模型的注意力模型,并且其中,所述利用所述解码器处理所述编码特征序列,包括:在针对所述编码特征序列的第一个处理周期中:将所述编码特征序列输入所述注意力模型进行第一注意力计算,得到所述注意力模型输出的第一上下文向量,其中,所述第一上下文向量指示所述编码特征序列中的每个编码特征向量对所述解码器在所述第一个处理周期输出的语音识别内容的重要程度;将所述第一上下文向量输入所述解码器,得到所述解码器在所述第一个处理周期输出的语音识别内容,并将输出的语音识别内容添加至语音识别内容序列;在所述第一个处理周期之后针对所述编码特征序列的第n个处理周期中:响应于针对所述编码特征序列的解码未结束,将所述编码特征序列和所述解码器在第n-1个处理周期的隐层状态输入所述注意力模型进行第二注意力计算,得到所述注意力模型输出的第二上下文向量,其中,所述第二上下文向量指示所述编码特征序列中的每个编码特征向量对所述解码器在所述第n个处理周期输出的语音识别内容的重要程度,n为大于1的整数;将所述解码器在第n-1个处理周期的隐层状态、所述第二上下文向量和所述语音识别内容序列中输入所述解码器,得到所述解码器在所述第n个处理周期输出的语音识别内容,并将输出的语音识别内容添加至所述语音识别内容序列;响应于针对所述编码特征序列的解码结束,基于所述语音识别内容序列中的所有语音
识别内容生成所述语音识别结果。6.根据权利要求4或5所述的方法,其中,所述端对端语音识别神经网络模型为transformer模型或conformer模型。7.一种用于语音识别的装置,应用于终端设备,所述终端设备包括端对端语音识别神经网络模型的编码器,所述装置包括:语音音频获取模块,用于获取语音音频流;声学特征提取模块,用于从所述语音音频流中提取声学特征,得到声学特征序列;声学特征编码模块,用于利用所述编码器对所述声学特征序列进行编码,得到所述编码器输出的编码特征序列,其中,所述编码特征序列包括至少一个编码特征向量;编码特征传输模块,用于将所述编码特征序列传输至云端设备,以供所述云端设备处理,其中,所述云端设备包括所述端对端语音识别神经网络模型的解码器;以及识别结果接收模块,接收来自所述云端设备的语音识别结果,其中,所述语音识别结果由所述解码器对所述编码特征序列进行处理得到。8.一种用于语音识别的装置,应用于云端设备,所述云端设备包括端对端语音识别神经网络模型的解码器,所述装置包括:编码特征接收模块,用于接收来自终端设备的编码特征序列,其中,所述终端设备包括所述端对端语音识别神经网络模型的编码器,所述编码特征序列由所述编码器对声学特征序列进行编码得到,所述编码特征序列包括至少一个编码特征向量;编码特征解码模块,用于利用所述解码器处理所述编码特征序列,得到所述解码器输出的语音识别结果;以及识别结果传输模块,用于将所述语音识别结果传输至所述终端设备。9.一种计算机设备,包括:至少一个处理器;以及至少一个存储器,其上存储有计算机程序,其中,所述计算机程序在被所述至少一个处理器执行时,使所述至少一个处理器执行如权利要求1-6中任一项所述的方法。10.一种车辆,包括:如权利要求7所述的用于语音识别的装置;或者计算机设备,所述计算机设备包括至少一个处理器和至少一个存储器,所述至少一个存储器上存储有计算机程序,其中,所述计算机程序在被所述至少一个处理器执行时,使所述至少一个处理器执行如权利要求1-3中任一项所述的方法。

技术总结


提供了一种用于语音识别的方法、装置、设备、车辆和存储介质。上述用于语音识别的方法应用于终端设备,终端设备包括端对端语音识别神经网络模型的编码器,该方法包括:获取语音音频流;从语音音频流中提取声学特征,得到声学特征序列;利用编码器对声学特征序列进行编码,得到编码器输出的编码特征序列,其中,编码特征序列包括至少一个编码特征向量;将编码特征序列传输至云端设备,以供云端设备处理,其中,云端设备包括端对端语音识别神经网络模型的解码器;以及接收来自云端设备的语音识别结果,其中,语音识别结果由解码器对编码特征序列进行处理得到。列进行处理得到。列进行处理得到。


技术研发人员:

魏萌 徐培来

受保护的技术使用者:

北京宾理信息科技有限公司

技术研发日:

2022.11.14

技术公布日:

2023/3/7

本文发布于:2023-03-12 23:14:40,感谢您对本站的认可!

本文链接:https://patent.en369.cn/patent/3/68445.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:所述   特征   语音识别   序列
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2022 Comsenz Inc.Powered by © 369专利查询检索平台 豫ICP备2021025688号-20 网站地图