一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

使用视听匹配对自动语音识别假设进行重新评分的制作方法

2022-07-10 16:21:48 来源:中国专利 TAG:


1.本公开涉及使用视听匹配对自动语音识别(asr)假设进行重新评分。


背景技术:

2.自动语音识别(asr)是一种通常在移动设备和其他设备中使用的技术。通常,自动语音识别试图提供一个人所说内容的准确转录。在嘈杂的环境中,或者当记录的话语的音频质量很差时,获得准确的asr结果可能是困难的任务。当说话者的视频数据可用时,可以利用视频数据来帮助改进asr结果。例如,说话者的视频数据可以提供在说话者正在说出话语时的嘴唇的移动,而这又可以与话语的音频数据相组合,以帮助处理asr结果。


技术实现要素:

3.本公开的一个方面提供了一种使用视听匹配对自动语音识别(asr)假设进行重新评分的方法。该方法包括在数据处理硬件处接收与用户说出的话语相对应的音频数据和表示在用户说出话语时用户嘴唇的移动的视频数据。该方法还包括由数据处理硬件基于音频数据获得话语的多个候选转录。对于话语的多个候选转录的每个候选转录,该方法包括:由数据处理硬件生成对应候选转录的合成语音表示;以及,通过数据处理硬件确定一致性分数,该一致性分数指示对应候选转录的合成语音表示匹配在用户说出话语时的用户嘴唇的移动的似然性。该方法还包括由数据处理硬件基于为话语的多个候选转录确定的一致性分数来选择话语的多个候选转录之一作为语音识别输出。
4.本公开的实现方式可以包括以下可选特征中的一个或多个。在一些实现方式中,确定一致性分数包括:向一致性分数模型提供对应候选转录的合成语音表示和表示用户的嘴唇的移动的视频数据作为特征输入;以及,基于对应候选转录的合成语音表示与用户的嘴唇的移动相匹配的程度,从一致性分数模型中确定一致性分数作为特征输出。在这些实现方式中,一致性分数模型在包括正训练示例和负训练示例的多个训练示例上进行训练。正训练示例包括表示语音话语的音频数据和表示与语音话语匹配的说话者嘴唇的移动的视频数据,而负训练示例包括表示语音话语的音频数据和表示与语音话语不匹配的说话者嘴唇的移动的视频数据。
5.在一些示例中,选择话语的多个候选转录之一作为语音识别输出包括从话语的多个候选转录中选择与最高一致性分数相关的候选转录作为话语的语音识别输出。
6.在一些实现方式中,获得话语的多个候选转录包括:使用语音识别器模块基于音频数据生成话语的候选转录的初始集合,候选转录的初始集合中的每个候选转录与指示候选转录正确的似然性的对应似然性分数相关联。该实现方式进一步包括基于似然性分数对候选转录的初始集合中的候选转录进行排名,并且将话语的多个候选转录确定为与最高似然性分数相关联的候选转录的初始集合中的n个候选转录,根据相关联的似然性分数对识别出的多个候选进行排名。在这些实现方式中,该方法可以进一步包括,在选择话语的多个转录之一之前,由数据处理硬件基于为话语的多个候选转录确定的一致性分数来重新排名
话语的多个候选转录。
7.在一些示例中,获得话语的多个候选转录包括:使用语音识别器模块基于音频数据生成话语的候选转录的初始集合,候选转录的初始集合中的每个候选转录与指示候选转录正确的似然性的对应似然性分数相关。在这些示例中,该方法还包括:在候选转录的初始集合中识别与满足似然阈值的似然性分数相关联的两个或多个候选转录;以及,将话语的多个候选转录确定为与满足似然阈值的似然性分数相关联的在候选转录的初始集合中的识别的两个或多个候选转录。
8.在一些实现方式中,话语的多个候选转录与相同的语言相关联。在其他示例中,话语的多个候选转录中的至少一个与与其他多个候选转录不同的语言相关联。
9.在一些示例中,接收与用户说出的话语相对应的音频数据包括从与用户相关联的客户端设备接收音频数据,该客户端设备与一个或多个被配置为捕获与话语对应的音频数据的音频捕获设备通信。在这些示例中,数据处理硬件驻留于客户端设备上。在其他示例中,客户端设备远离数据处理硬件并且通过网络与数据处理硬件通信。
10.在一些实现方式中,接收表示在用户正在说出话语时用户的嘴唇的移动的视频数据包括:从与用户相关联的客户端设备接收视频数据。在这些实现方式中,客户端设备包括一个或多个视频捕获设备,该视频捕获设备被配置为记录表示在用户正在说出话语时的用户的嘴唇的移动的视频数据。
11.本公开的另一方面提供了一种用于使用视听匹配来对于(asr)假设进行重新评分的系统。该系统包括数据处理硬件和与数据处理硬件通信的存储器硬件。存储器硬件存储指令,这些指令在由数据处理硬件执行时使数据处理硬件执行操作,该操作包括:接收与用户说出的话语相对应的音频数据和表示在用户正在说出话语时用户嘴唇的移动的视频数据。该操作进一步包括基于音频数据获得话语的多个候选转录。对于话语的多个候选转录的每个候选转录,该操作包括:生成对应候选转录的合成语音表示;以及,确定一致性分数,该一致性分数指示对应候选转录的合成语音表示匹配在用户说出话语时用户的嘴唇的移动的似然性。该操作还包括:基于为话语的多个候选转录确定的一致性分数,选择话语的多个候选转录之一作为语音识别输出。
12.本公开的实现方式可以包括以下可选特征中的一个或多个。在一些实现方式中,确定一致性分数包括:向一致性分数模型提供对应候选转录的合成语音表示和表示用户的嘴唇的移动的视频数据作为特征输入;以及,基于对应候选转录的合成语音表示与用户的嘴唇的移动相匹配的程度,从一致性分数模型中确定一致性分数作为特征输出。在这些示例中,一致性分数模型在包括正训练示例和负训练示例的多个训练示例上进行训练。正训练示例包括表示语音话语的音频数据和表示与语音话语相匹配的说话者嘴唇的移动的视频数据;以及,负训练示例包括表示语音话语的音频数据和表示与语音话语不匹配的说话者的嘴唇的移动的视频数据。
13.在一些示例中,选择话语的多个候选转录之一作为语音识别输出包括:从话语的多个候选转录中选择与最高一致性分数相关的候选转录作为话语的语音识别输出。
14.在一些实现方式中,获得话语的多个候选转录包括使用语音识别器模块基于音频数据生成话语的候选转录的初始集合,候选转录的初始集合中的每个候选转录与指示候选转录正确的似然性的对应似然性分数相关联。在这些实现方式中,该操作进一步包括:基于
似然性分数对候选转录的初始集合中的候选转录进行排名;以及,将话语的多个候选转录确定为与最高似然性分数相关联的候选转录的初始集合中的n个候选转录,识别的多个候选根据相关联的似然性分数加以排名。该操作还可以包括,在选择话语的多个转录之一之前,由数据处理硬件基于为话语的多个候选转录确定的一致性分数,对话语的多个候选转录重新排名。
15.在一些示例中,获得话语的多个候选转录包括使用语音识别器模块基于音频数据生成话语的候选转录的初始集合,候选转录的初始集合中的每个候选转录)与指示候选转录正确的似然性的对应似然性分数相关联。在这些示例中,该操作进一步包括:在候选转录的初始集合中识别与满足似然阈值的似然性分数相关联的两个或多个候选转录;以及,将话语的多个候选转录确定为与满足似然阈值的似然性分数相关联的在候选转录的初始集合中的识别的两个或多个候选转录。
16.在一些实现方式中,话语的多个候选转录与相同的语言相关联。在其他示例中,话语的多个候选转录中的至少一个与与其他多个候选转录不同的语言相关联。
17.在一些示例中,接收与用户说出的话语相对应的音频数据包括从与用户相关联的客户端设备接收音频数据,客户端设备与一个或多个音频捕获设备通信,该音频捕获设备被配置为捕获对应于话语的音频数据。在这些示例中,数据处理硬件驻留在客户端设备上。在其他示例中,客户端设备远离数据处理硬件并且通过网络与数据处理硬件通信。
18.在一些实现方式中,接收表示在用户正在说出话语时的用户的嘴唇的移动的视频数据包括:从与用户相关联的客户端设备接收视频数据。在这些实现方式中,客户端设备包括一个或多个视频捕获设备,该视频捕获设备被配置为记录表示在用户正在说出话语时的用户的嘴唇的移动的视频数据。
19.在附图和以下描述中阐述本公开的一个或多个实现方式的细节。从描述和附图以及从权利要求中,其他方面、特征和优点将是显而易见的。
附图说明
20.图1是用于使用音频数据和视觉数据的自动语音识别的示例系统的示意图。
21.图2a和2b是图示词格的示例的图的示意图。
22.图3是示例模型训练器的示意图。
23.图4是用于改进自动语音识别的方法的操作的示例布置的流程图。
24.图5是可用于实现本文描述的系统和方法的示例计算设备的示意图。
25.各种附图中的相同参考符号表示相同的元件。
具体实施方式
26.本公开提供了一种计算机实现的方法,该方法改进了与用户说出的话语相关的自动语音识别(asr)。例如,话语可以涉及用户向在诸如智能电话、智能扬声器或智能显示器的用户设备上的数字助理说话。话语的音频数据用于生成话语的多个候选转录(例如,也称为“转录假设”或“asr结果假设”),从而使得能够生成多个候选转录的合成语音表示(例如,使用文本至语音系统)。然后可以使用用户在说出话语时的面部和/或嘴唇的视频数据基于每个合成语音表示与视频数据的匹配程度(即,基于每个合成语音表示与视频数据中的用
户面部和/或嘴唇的运动/移动的匹配程度)对合成语音表示的每个进行评分或排名。以这种方式,可以基于对应于与视频数据最佳匹配的合成语音表示的候选转录来选择语音识别输出。
27.该方法的一个技术效果(与仅依赖于音频数据的方法相比)是改进语音识别输出的选择。换言之,本方法使得更有可能选择正确的语音识别输出(即用户话语的准确转录)。实际上,视频数据被用作额外的数据源来验证/核实/增强基于音频的自动语音识别系统的输出。因此,当用户说出话语的视频数据可用时,该视频数据可用于确定多个候选转录中的哪一个最可能是正确的,从而提高语音识别系统的准确性。本方法解决了如何改进基于音频的自动语音识别系统的技术问题。在此这是通过使用视频数据对仅使用音频数据产生的选项进行评分或排名来实现的。
28.本方法的另一个技术效果是对话语的语言的改进的识别。特别地,如果话语的语言未知,则可以以多种语言生成多个候选转录。在这种情况下,可以基于选择的语音识别输出来识别话语的语言。由于视频数据已被用于确定最佳匹配的合成语音表示,因此相关联的候选转录更有可能是使用正确的语言。
29.在一些情况下,设想在云中(即远离用户设备)执行音频数据分析,在用户设备本身上完成随后的视频数据匹配。这种布置的一个技术效果是降低的带宽需求,因为视频数据可以保留在用户设备上而无需将其传输到远程云服务器。如果要将视频数据传输到云,则可能首先需要对其进行压缩以进行传输。因此,在用户设备本身上进行视频匹配的另一个技术效果是可以使用未压缩(最高质量)的视频数据执行视频数据匹配。使用未压缩的视频数据使得更容易地识别合成语音表示和视频数据之间的匹配/不匹配。因此,预期会改善分数/排名,从而使得更有可能选择正确的语音识别输出。
30.在一些示例中,设想使用在大量收集的视听样本上训练的系统(例如,深度神经网络)来测量在合成语音表示和视频数据之间的匹配程度。在一个示例中,训练示例/样本包括:正训练示例/样本,其包括表示语音话语的音频数据和表示与语音话语匹配的说话者嘴唇的移动的视频数据;以及,负训练示例/样本,其包括表示语音话语的音频数据和表示与语音话语不匹配的说话者嘴唇的移动的视频数据。这样的训练数据确保系统被训练以识别在合成语音表示和视频数据之间的匹配和不匹配两者,从而提高系统的准确性。
31.图1是示出了用于使用对应于话语101的音频数据112和表示在用户10正在说出话语101时的用户10的嘴唇的移动的视频数据114对于用户10说出的话语101的自动语音识别的系统100的示例的框图。系统100包括客户端设备110、计算系统120和网络118。在示例中,计算系统120从客户端设备110接收音频数据112和视频数据114,并且计算系统120基于音频数据112获得话语101的多个候选转录135、135a-n。如本文所用,可以互换使用术语“候选转录”和“转录假设”。如下文更详细描述的,对于每个候选转录135,计算系统120被配置为生成对应候选转录135的合成语音表示145并使用视频数据114来确定一致性分数155,一致性分数155指示对应的候选转录135的合成语音表示145匹配用户10在说出话语101时嘴唇的移动的似然性。此后,计算系统120可以基于对于话语101的多个候选转录135确定的一致性分数155选择话语的多个候选转录135之一作为语音识别输出175。图1示出了图示数据流的阶段(a)到(h)。
32.客户端设备110可以是例如台式计算机、膝上型计算机、智能电话、智能扬声器、智
能显示器、平板计算机、音乐播放器、电子书阅读器或导航系统。客户端设备110包括:一个或多个音频捕获设备(例如,麦克风)103,其被配置为记录用户10所说的话语101;以及,一个或多个视频图像/视频捕获设备(例如,相机)105,其被配置为在用户10说出话语101时捕获表示用户10的嘴唇的移动的图像/视频数据114。在一些示例中,麦克风103或相机105与客户端设备110分离并且与客户端设备110通信以将记录的话语101或捕获的图像/视频数据114提供给客户端设备110。计算系统120执行的功能可以由单独的计算机系统执行或者可以分布在多个计算机系统上。网络118可以是有线的或无线的或两者的组合,并且可以包括专用网络和/或公共网络,例如互联网。
33.如将变得明显的,表示在用户10正在说话时用户10的嘴唇的移动的视频数据114可用于通过单独基于音频数据112对于为话语101获得的多个候选转录135重新评分和重新排名来提高语音识别准确性。例如,在为话语101获得一组候选转录135之后,可以对一组n个最佳候选转录135、135a-n进行进一步处理,其中,n是整数(例如,3、5或10个最有可能的转录)。因此,不是仅基于音频数据接受语音识别器模块130指示的候选转录135为最有可能,而是可以利用视频数据114对一组n个最佳候选转录135重新评分和重新排名。
34.例如,语音识别器模块130可以采用宽得足以对自然说出的话语进行建模的语言模型,但可能无法消除诸如“i say(我说)”和“ice age(冰河世纪)”之类的声学易混淆的句子之间的歧义。然而,通过将表示用户10的嘴唇的移动的视频数据与候选转录135的合成语音表示145进行比较以确定候选转录135的一致性分数155,包括比“我说”的一致性分数155更高的一致性分数155的句子“冰河世纪”可以指示用户10更有可能说出“冰河世纪”而不是“我说”。
35.n个最佳候选转录135中的每一个可以被提供为对应候选转录135的合成语音表示145。分析n个最佳候选转录135中的每一个的一致性分数155以例如确定对应候选转录135的每个合成语音表示145与视频数据114匹配程度,视频数据114表示用户10在说出获得候选转录135的话语101的同时的嘴唇的移动。每个对应候选转录135的一致性分数155可以例如基于对应候选转录135的合成语音表示145匹配用户10在用户10说出话语101的同时的嘴唇的移动的似然性指示每个候选转录正确的似然性程度。如果候选转录135具有低一致性分数155(例如,一致性分数155小于一致性分数阈值),则候选转录135不太可能是话语101的正确的转录。另一方面,如果候选转录135具有高一致性分数155(例如,一致性分数155大于或等于一致性分数阈值),则候选转录135更可能是正确的。因此,基于视频数据114和候选转录135的合成语音表示145的一致性分数155可用于单独基于音频数据112对语音识别器模块130获得的n个最佳候选转录135重新排名。
36.在图1的示例中,在阶段(a)期间,用户10说出话语101,并且客户端设备110的麦克风103记录话语101。例如,话语101可以包括用户10说出术语“kite(风筝)”。同时,相机105捕获表示用户10当用户10说出话语101时的嘴唇的移动的视频数据114。此后,客户端设备110经由网络118向计算系统120发送对应于由麦克风103记录的话语101的音频数据112以及由相机105捕获的视频数据114。
37.在阶段(b)期间,计算系统120接收音频数据112并基于音频数据112获得话语101的多个候选转录135。例如,计算系统120可以包括语音识别器模块130(例如,自动语音识别(asr)模块),用于基于音频数据112生成指示对于话语101可能的多个候选转录135的词格
200。
38.图2a是可以由图1的语音识别器模块130提供的词格200、200a的示例。词格200a表示可以形成话语101的不同候选转录135的多个可能的词组合。
39.词格200a包括对应于词之间的可能边界的一个或多个节点202a-g。词格200a包括多个边204a-l,用于从词格200a产生的转录假设(例如,候选转录135)中的可能词。此外,边204a-1中的每一个可以具有该边是来自对应节点的正确边的一个或多个权重或概率。权重由语音识别器模块130确定,并且可以基于例如语音数据与该边的词之间匹配的置信度以及该词在语法和/或词汇上与词格200a中的其他词的拟合程度。
40.例如,最初,通过词格200a的最可能的路径(例如,最可能的候选转录135)可以包括边204c、204e、204i、204k,其具有文本“we're coming about 11:30(我们大约11:30来)”。第二最佳路径(例如,第二最佳候选转录)可以包括边204d、204h、204j、304l,其具有文本“deer hunting scouts 7:30(鹿狩猎侦察兵7:30)”。
41.每对节点可以具有对应于各种候选转录135中的替代词的一个或多个路径。例如,在开始于节点202a和结束于节点202c的节点对之间的初始最可能路径是边204c“we’re(我们是)”。该路径具有交替路径,其包括边204a-b“we are(我们是)”和边204d“deer”。
42.图2b是可以由图1的语音识别器模块130提供的分层词格200、200b的示例。词格200b包括节点252a-1,节点252a-1表示构成话语101的各种候选转录135的词。节点252a-1之间的边表明可能的候选转录包括:(1)节点252c、252e、252i、252k“we’re coming about 11:30(我们在大约11:30来)”;(2)节点252a、252b、252e、252i、252k“we are coming about 11:30”;(3)节点252a、252b、252f、252g、252i、252k“we are come at about 11:30”;(4)节点252d、252f、252g、252i、252k“deer come at about 11:30(鹿在大约11:30来)”;(5)节点252d、252h、252j、252k“deer hunting scouts 11:30”;以及(6)节点252d、252h、252j、252l“deer hunting scouts 7:30”。
43.同样,节点252a-l之间的边可以具有基于语音识别的置信度和结果文本的语法/词汇分析的相关联权重或概率。在此示例中,“we’re coming about 11:30”可能目前是最好的假设,而“deer hunting scouts7:30”可能是下一个最佳假设。可以在将词及其替代词组合在一起的词格200b中做出一个或多个分段254a-d。例如,分段254a包括词“we're”和替代词“we are”和“deer(鹿)”。分段254b包括词“coming(来)”和替代词“come at(到达)”和“hunting(狩猎)”。分段254c包括词“about(大约)”和替代词“scouts”,且分段254d包括词“11:30”和替代词“7:30”。
44.返回参考图1,语音识别器模块130可以使用声学模型和语言模型来生成词格200或者否则基于音频数据112识别话语101的多个候选转录135。语音识别器模块130还可以例如通过提供候选转录135的似然性分数和/或排名而指示语音识别器模块130认为哪个候选转录135最有可能是正确的。
45.在阶段(c)期间,计算系统120从在词格200中接收的一组候选转录内识别出一组最高排名候选转录135。例如,使用来自在语音识别器模块130的似然性分数或排名信息,计算系统120可以选择具有最高似然性的n个候选转录135,其中,n是整数。在所示示例中,前五个候选转录(例如,被指示为最可能正确的五个)被选择作为一组最高排名的候选转录135、135a-n。在所示示例中,该组最高排名候选转录135包括按从最高到最低的顺序排名的
词“write(写)”、“bite(叮咬)”、“sight(风景)”、“night(夜)”和“kite”。值得注意的是,“kite”的候选转录135排在最后,即使这是在记录的话语101中用户10实际说出的词。换句话说,如果从语音识别器模块130输出的最高排名候选转录135被选择作为语音识别结果,则词“write”将被错误地选择而不是选择词“kite”。
46.在一些示例中,语音识别器模块130基于音频数据112生成话语101的候选转录135的初始集合,由此初始集合中的每个候选转录135与指示候选转录135是正确的似然性的对应似然性分数相关联。此后,语音识别器模块130基于似然性分数(例如,从最可能到最不可能)对初始集合中的候选转录135进行排名,并且阶段(c)将话语的多个候选转录135确定为在与最高似然性分数相关联的候选转录的初始集中的n个候选转录135。在此,将所识别的多个候选转录135a-n根据相关联的似然性分数进行排名。
47.在另外的示例中,在语音识别器模块130生成候选转录135的初始集合之后,语音识别器模块130识别初始集合中与满足似然阈值的似然性分数相关联的两个或多个候选转录135。这里,阶段(c)将话语的多个候选转录135a-n确定为初始集合中与满足似然阈值的似然性分数相关联的所识别的两个或多个候选转录135。在这些示例中,与低似然性分数相关联的候选转录135被排除在考虑之外。
48.在阶段(d)期间,计算系统120将每个候选转录135提供给文本至语音(tts)模块140(例如,语音合成器或语音合成模块)。对于在阶段(c)识别的每个候选转录135a-n,tts模块140被配置为生成对应候选转录135a-n的合成语音表示145、145a-n。例如,tts模块140可以将来自每个候选转录135的文本转换成对应的合成语音表示145。
49.在阶段(e),计算系统120将表示用户10的嘴唇的移动的视频数据114和从tts模块140对于每个候选转录135输出的合成语音表示145作为特征输入提供给一致性分数确定器150。进而,一致性分数确定器150被配置为将候选转录135a-n的一致性分数155、155a-n确定为特征输出。一致性分数确定器150可以并行地确定一致性分数155,单独地确定每个一致性分数155,或者它们的组合。
50.在确定一致性分数155之前,一致性分数确定器150可以初始处理每个合成语音表示145和视频数据114以将每个合成语音表示145与视频数据114时间对齐。也就是说,一致性分数确定器150可以应用任何技术来识别和标记视频数据114中包含用户10在说出话语101时嘴唇的移动的帧,并且使用识别的和标记的帧将每个合成语音表示145与视频数据114时间对齐。
51.在所示的示例中,一致性分数确定器150包括一致性分数模型152(图3),该一致性分数模型152被训练为基于对应候选转录135的合成语音表示145与说出话语101的用户10的嘴唇的移动相匹配的程度来预测对应候选转录135的一致性分数155。本质上,一致性分数模型152被训练以在与表示嘴唇的移动的视频数据114匹配的合成语音表示145和与表示嘴唇的移动的视频数据114不匹配的合成语音表示145之间进行辨别。
52.在一些示例中,从一致性分数确定器150(即,使用一致性分数模型152)输出的一致性分数155包括二进制值,其中,“1”表示匹配由视频数据114表示的用户10的嘴唇的移动的合成语音表示145,并且“0”表示与视频数据114表示的用户10的嘴唇的移动不匹配的合成语音表示。在另外的示例中,一致性分数155是数值,例如,从零到一,指示对应候选转录135的合成语音表示145与嘴唇的移动匹配的程度。例如,与具有更接近于零的值的一致性
分数155相比,具有更接近1的值的一致性分数155更能指示匹配嘴唇的移动的合成语音表示145。在一些场景中,具有满足(例如,超过)一致性分数阈值的值的一致性分数155指示匹配说出话语101的用户10的嘴唇的移动的合成语音表示145。在这些场景中,基于初始数值是否满足一致性分数阈值,可以从一致性分数确定器150输出表示一致性分数155的二进制值。
53.通过指示用于给定候选转录135的合成语音表示145与视频数据114中用户10的嘴唇的移动匹配的程度,每个一致性分数155表示在阶段(c)识别的多个候选转录135的重新评分。表示用户10的嘴唇的移动的视频数据114与候选转录135的合成语音表示145匹配的程度可以基于例如合成语音表示145中的语音特征序列是完全还是部分匹配视频数据114中用户10的唇位置和形状序列。例如,在给定时间实例,当用户10的唇位置/形状指示在合成语音表示145发音元音时打开的用户的嘴时,模型152将识别匹配。类似地,如果在另一个时间实例,当用户10的唇位置指示在合成语音表示145正在发音“b”辅音时打开的用户的嘴时,一致性分数模型152将不会识别匹配。
54.图3示出了用于生成一致性分数模型152的示例模型训练器300。在所示示例中,模型训练器300在包括正训练示例302a和负训练示例302b的多个训练示例302上被训练。每个正训练示例302a包含表示语音话语的训练音频数据112t和表示与语音话语匹配(例如同步)的说话者嘴唇的移动的训练视频数据114t。即,模型训练器300向一致性分数模型152馈送正训练示例302a以向一致性分数确定器150教导示例,其中,一致性分数确定器150应输出一致性分数155,一致性分数155指示在合成语音表示和视频数据114中的嘴唇运动/移动之间的匹配/同步。
55.相比之下,每个负训练示例302b包含表示语音话语的训练音频数据112t和表示与语音话语不匹配(例如,不同步)的说话者嘴唇的移动的训练视频数据114t。也就是说,模型训练器300向一致性分数模型152馈送负训练示例302b以向一致性分数确定器150教导示例,其中,一致性分数确定器150应输出一致性分数155,一致性分数155指示在合成语音表示和视频数据114中的嘴唇运动/移动之间的不匹配和不同步。
56.通过在正训练示例302a和负训练示例302b上训练模型训练器300以生成一致性分数模型152,一致性分数确定器150被教导在与由视频数据114表示的嘴唇的移动匹配/同步的合成语音表示和与由视频数据114表示的嘴唇的运动/移动不匹配或不同步的合成语音表示145之间进行辨别。因此,一致性分数确定器150可以使用训练的一致性分数模型152来生成一致性分数155,其指示对应候选转录135的合成语音表示145与由视频数据114表示的嘴唇的移动相匹配的程度。
57.在一些示例中,训练音频数据112t包括语音的人工生成话语101。在其他示例中,训练音频数据112t包括合成话语145(例如,由tts模块140生成)。在其他示例中,训练音频数据112t包括合成话语145和人工生成话语101两者。
58.在一些配置中,模型训练器300被配置为将训练示例302分成训练和评估集合(例如,90%训练和10%评估)。利用这些集合,模型训练器300使用训练示例302训练一致性分数模型152直到一致性分数模型152在评估集合上的性能停止下降。一旦评估集合上的性能停止下降,一致性分数模型152就准备好进行建模,其中,一致性分数模型152允许一致性分数确定器150输出一致性分数155,每个一致性分数155指示对应候选转录135的合成语音表
示145与当用户说出话语101时用户10的嘴唇的移动匹配的似然性。
59.返回参考图1,多个候选转录135的一致性分数155、155a-n包括“write”的0.4、“bite”的0.7、“sight”的0.3、“night”的0.4和“kite”的0.9。这里,“kite”的候选转录135包括最高一致性分数155,并且实际上是用户10在话语101中实际说出的词。在阶段(f),重新排名器160从一致性分数确定器150接收多个候选转录135的一致性分数155,并基于一致性分数155输出多个候选转录135的重新排名结果165。在所示示例中,多个候选转录135被从最高一致性分数155到最低一致性分数155重新排名。因此,计算系统120(例如,通过重新排名器160)产生与新排名相关联的重新排名结果165,该新排名不同于由语音识别器模块130仅基于音频数据112指示的初始/原始排名。
60.在一些示例中,在具有相同一致性分数155的两个或多个候选转录135之间的平局的情况下,与在阶段(c)识别的更高排名相关联的候选转录135可以通过重新排名器160来在重新排名结果165中的排名得更高。也就是说,重新排名器160可以考虑与语音识别器模块130生成的多个候选转录135相关联的语音识别特征。语音识别特征可以包括由语言模型对于给定候选转录在语音识别器130处产生的信息,例如来自语音识别器模块130的语言模型概率、排名中的位置、标记的数量或置信度分数。在平局的情况下,重新排名器160可以另外考虑语义特征和/或语音识别特征。语义特征可以指示关于模式匹配分析的信息,例如,将候选转录与语法匹配。例如,如果候选转录与流行的语音动作模式匹配,则它具有更好的机会成为正确的识别。许多语音查询都是命令,例如“show me movies by jim carey(给我看jim carey的电影)”或“open web site(打开网站)”。
61.在阶段(g),计算系统120接收重新排名的结果165并从用于话语101的多个候选转录135中选择与最高一致性分数145相关联的候选转录135作为用于话语101的语音识别输出175。在所示示例中,词“kite”的候选转录135包括等于“0.9”的最高一致性分数,因此被选为话语101的语音识别输出175。
62.在阶段(h)期间,计算系统120通过网络118向客户端设备110提供语音识别输出175。客户端设备110然后可以在客户端设备110的屏幕上显示语音识别输出175和/或使用语音识别输出175来执行动作/命令。例如,客户端设备110可以提交语音识别输出175作为搜索查询或以另一种方式使用输出175。在另外的示例中,计算系统120将语音识别输出175直接提供给另一个系统以执行与语音识别输出175相关的动作/命令。例如,计算系统120可以将语音识别输出175提供给搜索引擎以使用语音识别输出175执行搜索查询。
63.虽然图1中所示的候选转录135为了简单起见被描述为单个词,但应该理解,多个候选转录135和由其产生的合成语音表示145可以包括包含在一个或多个短语、一个或多个句子的话语101或者甚至从会议或讲座中记录的更长形式的话语中的多个词。例如,音频数据112和视频数据114可以表示用户说出的整个查询,并且每个候选转录135可以是作为整体的音频数据112的相应候选转录。
64.计算系统120可以包括数据处理硬件(例如,处理器)510(图5)和与数据处理硬件510通信并且存储指令的存储器硬件520(图5),该指令当在数据处理硬件上执行时使数据处理硬件510执行操作。例如,数据处理硬件510可以执行语音识别器模块130、tts模块140、一致性分数确定器150和重新排名器160。在一些实现方式中,计算系统120的全部功能驻留在客户端设备110上。有利地,可以改进延迟,因为客户端设备110不必通过网络118传输音
频和视频数据112、114并等待接收结果产生的语音识别输出175。
65.在一些实现方式中,图1中所描述的计算系统120的功能性在客户端设备110和计算系统120之中被划分,由此一些操作在客户端设备110上执行,而其他操作在计算系统120上远程执行。例如,音频数据分析可以在计算系统120(例如,云计算环境)上执行,使得客户端设备110将音频数据112提供给语音识别器模块130以获得话语101的多个候选转录候选135,并且tts模块140可以生成话语101的多个候选转录候选135中的每个候选转录135的对应的合成语音表示145。代替提供表示当用户10说出话语101时用户10嘴唇的移动的视频数据114,客户端设备110可以在设备上执行一致性分数确定器150。因此,计算系统120可以通过网络118将针对多个候选转录135的合成语音表示145传输到客户端设备110,由此客户端设备110被配置为获得视频数据114并确定从计算系统接收的多个候选转录135的每个候选转录135的一致性分数155。如上面详细描述的,每个一致性分数155指示对应候选转录135的合成语音表示145匹配在用户10说出话语101时用户10嘴唇的移动的似然性。客户端设备110然后可以基于在设备上确定的一致性分数选择多个候选转录135之一(例如,与最高一致性分数155相关联的那个)作为语音识别输出175。
66.使用这种配置,由于视频数据114被保留在客户端设备110上而不需要通过网络118将视频数据114传输到远程计算系统120,因此带宽需求减少了。此外,如果通过网络118传输视频数据114,则视频数据114可能需要在传输之前由客户端设备110压缩,从而降低视频数据114的质量。因此,保留视频数据114并在设备上执行视频数据匹配的另一个优点是视频数据匹配可以使用未压缩(最高质量)视频数据114。也就是说,使用未压缩视频数据使得更容易识别合成语音表示145和视频数据114之间的匹配/不匹配.
67.由语音识别器模块130对于话语101输出的多个候选转录135中的每一个可以与相同的语言相关联。在一些示例中,话语101的多个候选转录135中的至少一个与与其他候选转录135不同的语言相关联。例如,计算系统120可能不先验地知道话语101的语言,并且可以依赖语音识别器模块130来使用不同的语言模型来输出在两种或更多种不同语言之间划分的多个候选转录135。在这种情况下,通过将对应的合成语音表示145与表示用户10在说出话语101时嘴唇的移动的视频数据114进行比较来识别/选择与话语101的正确语言相关联的候选转录135。也就是说,可以选择与最高一致性分数155相关联的候选转录135的语言作为语音识别输出175以识别正确的语言。由于视频数据114已用于确定最佳匹配的合成语音表示145,因此相关的候选转录135更有可能使用正确的语言。
68.在本文讨论的某些实现方式可以收集或使用关于用户的个人信息(例如,从其他电子通信中提取的用户数据、关于用户的社交网络的信息、用户的位置、用户的时间、用户的生物特征信息以及用户的活动和人口统计信息、用户之间的关系等)的情况下,为用户提供一个或多个机会来控制是否收集信息、是否存储个人信息、是否使用个人信息以及如何收集、存储和使用有关用户的信息。也就是说,本文讨论的系统和方法仅在从相关用户接收到这样做的明确授权时才收集、存储和/或使用用户个人信息。
69.例如,向用户提供对程序或特征是否收集关于该特定用户或与程序或特征相关的其他用户的用户信息的控制。向每个要收集其个人信息的用户提供一个或多个选项,以允许控制与该用户相关的信息收集,就是否收集信息以及信息的哪些部分被收集提供许可或授权。例如,可以通过通信网络向用户提供一个或多个这样的控制选项。此外,某些数据在
其被存储或使用之前可能会以一种或多种方式被处理,以便删除个人身份信息。作为一个示例,用户的身份可能会被处理,使得无法确定个人身份信息。作为另一个示例,用户的地理位置可能会被一般化到更大的区域,从而无法确定用户的特定位置。
70.图4是使用视听匹配对候选转录重新评分的方法400的示例操作布置的流程图。在操作402,方法400包括:在数据处理硬件510接收与用户10说出的话语101相对应的音频数据112和表示在用户10说出话语101时用户10的嘴唇的移动的视频数据114。在操作404,方法400包括由数据处理硬件510基于音频数据112获得话语101的多个候选转录135。在操作406,对于每个候选转录135,方法400还包括:通过数据处理硬件510生成对应候选转录135的合成语音表示145。在操作408,对于每个候选转录135,方法400还包括:通过数据处理硬件确定指示以下似然性的一致性分数155:对应候选转录135的合成语音表示145匹配在用户10说出话语101时用户10的嘴唇的移动。在操作410,方法400包括:由数据处理硬件510基于为话语101的多个候选转录135确定的一致性分数155选择话语101的多个候选转录135之一作为语音识别输出175。
71.软件应用(即,软件资源)可以指使计算设备执行任务的计算机软件。在一些示例中,软件应用可以被称为“应用”、“app”或“程序”。示例应用包括但不限于系统诊断应用、系统管理应用、系统维护应用、文字处理应用、电子表格应用、消息传递应用、媒体流应用、社交网络应用和游戏应用。
72.非暂时性存储器可以是用于在临时或永久的基础上存储程序(例如,指令序列)或数据(例如,程序状态信息)以供计算设备使用的物理设备。非暂时性存储器可以是易失性和/或非易失性可寻址半导体存储器。非易失性存储器的示例包括但不限于闪存和只读存储器(rom)/可编程只读存储器(prom)/可擦除可编程只读存储器(eprom)/电可擦除可编程只读存储器(eeprom)(例如,通常用于固件,例如引导程序)。易失性存储器的示例包括但不限于随机存取存储器(ram)、动态随机存取存储器(dram)、静态随机存取存储器(sram)、相变存储器(pcm)以及磁盘或磁带。
73.图5是可用于实现本文档中描述的系统和方法的示例计算设备500的示意图。计算设备500意欲表示各种形式的数字计算机,例如膝上型计算机、台式机、工作站、个人数字助理、服务器、刀片服务器、大型机和其他适当的计算机。这里所示的组件、它们的连接和关系以及它们的功能仅意味着是示例性的,并不意味着限制本文档中描述和/或要求保护的发明的实现方式。
74.计算设备500包括处理器510、存储器520、存储设备530、连接到存储器520和高速扩展端口550的高速接口/控制器540以及连接到低速总线570和存储设备530的低速接口/控制器560。组件510、520、530、540、550和560中的每一个都使用各种总线互连,并且可以安装在共同的主板上或以其他适当的方式安装。处理器510可以处理用于在计算设备500内执行的指令,包括存储在存储器520或存储设备530上的指令,以在诸如被耦合到高速接口540的显示器580的外部输入/输出设备上显示用于图形用户界面(gui)的图形信息。在其他实现方式中,可以酌情使用多个处理器和/或多条总线以及多个存储器和多种类型的存储器。此外,多个计算设备500可以与提供必要操作的一部分的每个设备相连接(例如,作为服务器组、刀片服务器组或多处理器系统)。
75.存储器520在计算设备500内非暂时性地存储信息。存储器520可以是计算机可读
介质、易失性存储器单元或非易失性存储器单元。非暂时性存储器520可以是用于在临时或永久基础上存储程序(例如,指令序列)或数据(例如,程序状态信息)以供计算设备500使用的物理设备。非易失性存储器的示例包括但不限于闪存和只读存储器(rom)/可编程只读存储器(prom)/可擦除可编程只读存储器(eprom)/电可擦除可编程只读存储器(eeprom)(例如,通常用于固件,例如引导程序)。易失性存储器的示例包括但不限于随机存取存储器(ram)、动态随机存取存储器(dram)、静态随机存取存储器(sram)、相变存储器(pcm)以及磁盘或磁带。
76.存储设备530能够为计算设备500提供大容量存储。在一些实现方式中,存储设备530是计算机可读介质。在各种不同的实现方式中,存储设备530可以是软盘设备、硬盘设备、光盘设备或磁带设备、闪存或其他类似的固态存储器设备或设备阵列(包括在存储区域网络或其他配置中的设备)。在另外的实现方式中,计算机程序产品有形地体现在信息载体中。计算机程序产品包含在执行时执行一种或多种方法(例如,上述那些)的指令。信息载体是计算机或机器可读介质,例如存储器520、存储设备530或处理器510上的存储器。
77.高速控制器540管理计算设备500的带宽密集型操作,而低速控制器560管理较低带宽密集型操作。这种职责分配只是示例性的。在一些实现方式中,高速控制器540被耦合到存储器520、显示器580(例如,通过图形处理器或加速器),并且被耦合到可以接受各种扩展卡(未示出)的高速扩展端口550。在一些实现方式中,低速控制器560被耦合到存储设备530和低速扩展端口590。低速扩展端口590(其可以包括各种通信端口(例如,usb、蓝牙、以太网、无线以太网))可以例如通过网络适配器被耦合到一个或多个输入/输出设备,例如键盘、定点设备、扫描仪或联网设备(例如交换机或路由器)。
78.如图所示,可以以多种不同的形式实现计算设备500。例如,它可以实现为标准服务器500a或在一组这样的服务器500a中多次实现,实现为膝上型计算机500b,或实现为机架服务器系统500c的一部分。
79.本文描述的系统和技术的各种实现方式可以实现在数字电子和/或光学电路、集成电路、专门设计的asic(专用集成电路)、计算机硬件、固件、软件和/或它们的组合中。这些不同的实现方式可以包括在一个或多个计算机程序中的实现方式,这些计算机程序在包括至少一个可编程处理器的可编程系统上是可执行和/或可解释的,该可编程处理器可以是专用或通用的,被耦合以从下述部分接收数据和指令以及向下述部分发送数据和指令:存储系统、至少一个输入设备和至少一个输出设备。
80.这些计算机程序(也称为程序、软件、软件应用或代码)包括用于可编程处理器的机器指令,并且可以以高级过程和/或面向对象的编程语言和/或以汇编/机器语言实现。如本文所用,术语“机器可读介质”和“计算机可读介质”是指用于向可编程处理器提供机器指令和/或数据的任何计算机程序产品、非暂时性计算机可读介质、装置和/或设备(例如,磁盘、光盘、存储器、可编程逻辑器件(pld)),包括接收作为机器可读信号的机器指令的机器可读介质。术语“机器可读信号”是指用于向可编程处理器提供机器指令和/或数据的任何信号。
81.本说明书中描述的过程和逻辑流程可以由一个或多个可编程处理器(也称为数据处理硬件)执行,该可编程处理器执行一个或多个计算机程序以通过对输入数据进行操作并生成输出来执行功能。过程和逻辑流程也可以由专用逻辑电路执行,专用逻辑电路例如
是fpga(现场可编程门阵列)或asic(专用集成电路)。适合于执行计算机程序的处理器包括例如通用和专用微处理器以及任何类型的数字计算机的任何一个或多个处理器。通常,处理器将从只读存储器或随机存取存储器或两者接收指令和数据。计算机的基本元件是用于执行指令的处理器和一个或多个用于存储指令和数据的存储器设备。通常,计算机还将包括下述部分或可操作地耦合以从下述部分接收数据或向下述部分传送数据:一个或多个用于存储数据的大容量存储设备(例如,磁、磁光盘或光盘)。然而,计算机不需要有这样的设备。适用于存储计算机程序指令和数据的计算机可读介质包括所有形式的非易失性存储器、介质和存储器设备,包括例如:半导体存储器设备,例如eprom、eeprom和闪存设备;磁盘,例如内部硬盘或可移动磁盘;磁光盘;以及,cdrom和dvd-rom盘。处理器和存储器可以由专用逻辑电路补充或并入在专用逻辑电路中。
82.为了提供与用户的交互,本公开的一个或多个方面可以实现在计算机上,该计算机具有:用于向用户显示信息的显示设备,例如,crt(阴极射线管)、lcd(液晶显示器)监视器或触摸屏;以及,可选的键盘和定点设备,例如鼠标或轨迹球,用户可以通过它们向计算机提供输入。也可以使用其他类型的设备来提供与用户的交互;例如,提供给用户的反馈可以是任何形式的感官反馈,例如视觉反馈、听觉反馈或触觉反馈;且可以接收以任何形式的来自用户的输入,包括声音、语音或触觉输入。此外,计算机可以通过向用户使用的设备发送文档和从其接收文档来与用户交互;例如,通过响应从网络浏览器接收到的请求,将网页发送到用户客户端设备上的网络浏览器。
83.已经描述了许多实现方式。然而,应当理解,在不背离本公开的精神和范围的情况下可以进行各种修改。因此,其他实现方式在所附权利要求的范围内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献