背景技术:
1、人类可利用交互式软件应用参与人机对话,这些交互式软件应用在本文中称为“自动化助理”(也称为“聊天机器人”、“交互式个人助理”、“智能个人助理”、“个人语音助理”、“会话智能体”等)。自动化助理通常依靠组件流水线来解释和响应口头话语(或触摸/键入的输入)。例如,自动语音辨识(asr)引擎可处理与用户的口头话语相对应的音频数据以生成asr输出,诸如口头话语的一个或多个语音假设(即,词项和/或其他词元的序列)或被预测为与口头话语相对应的音素。此外,自然语言理解(nlu)引擎可处理asr输出(或触摸/键入的输入)以生成nlu输出,诸如用户提供口头话语(或触摸/键入的输入)的意图以及可选地与意图相关联的参数的槽值。此外,可使用履行引擎来处理nlu输出,并且生成履行输出,诸如用于获得针对口头话语的响应内容和/或执行响应于口头话语的动作的结构化请求,并且可基于履行输出来生成履行数据流。
2、通常,与自动化助理的对话会话通过用户提供口头话语发起,并且自动化助理可使用前述组件流水线对口头话语作出响应以生成响应。用户可通过提供附加口头话语来继续对话会话,并且自动化助理可使用前述组件流水线对附加口头话语作出响应以生成附加响应。换句话说,这些对话会话通常是轮流进行的,因为用户在对话会话中轮流提供口头话语,并且当用户停止说话时,自动化助理在对话会话中轮流对口头话语作出响应。
技术实现思路
1、本文描述的实现方式涉及基于进一步口头输入的进一步候选文本表示来确定是否要校正口头输入的候选文本表示中的一个或多个单词,其中口头输入和进一步口头输入两者均由同一用户在对话会话中说出。例如,用户可以说出口头输入“what is a vat”。然而,在生成口头输入的候选文本表示时,在一些情况下,系统可错误辨识单词“vat”,并生成不正确的候选文本表示“what is a hat”。在一些实现方式中,系统可以向用户渲染基于不正确的候选文本表示“what is a hat”的输出。例如,系统可以渲染候选文本表示“what isa hat”的转录(例如,流式传输转录)和/或渲染基于候选文本表示“what is a hat”生成的响应(例如,包括“hat”的定义的可听响应和/或包括“hat”的图像的视觉响应)。此类输出使用户能够在对话会话期间查明对单词“vat”的错误辨识。然后,用户可以通过说出进一步口头输入“with a v”来校正该错误辨识。在一些实现方式中,系统可以基于进一步口头输入的进一步候选文本表示“with a v”来确定该进一步口头输入是否是用户为了校正口头输入的候选文本表示中的一个或多个单词而说出的。例如,基于进一步候选文本表示“with av”,系统可以确定进一步口头输入是为了校正先前口头输入的候选文本表示而说出的,还是作为用户话语的延续、对系统的单独的独立口头请求而提供的,和/或并非作为针对系统的口头请求而提供的(例如,而是针对另一个同时在场的人)。另外或替代地,系统可以基于进一步候选文本表示“with a v”来校正对单词“vat”的错误辨识,以生成经修订的文本表示“what is a vat”(即,其包括“vat”来代替“hat”)。
2、在一些实现方式中,系统可以基于使用消歧模型处理进一步候选文本表示(和/或捕获进一步口头输入的音频数据)来确定进一步候选文本表示是否旨在校正候选文本表示中的至少一个单词。在一些实现方式中,可以训练消歧模型来处理进一步候选文本表示,以识别进一步候选文本表示中是否存在一个或多个语法中的任一者。例如,语法可以包括“ends with <entity> (以<实体>结束)”,“begins with <entity> (以<实体>开始)”,“with a <entity> (具有<实体>)”,“like <entity> (类似<实体>)”、一个或多个附加或替代语法、和/或它们的组合。另外或替代地,可以训练消歧模型来处理进一步候选文本表示,以识别候选文本表示是否包括对一个或多个特定实体(例如,演员、地点、书中人物、艺术家、音乐家、一个或多个替代的特定实体,和/或它们的组合)和/或其他类别(例如,动物、电影明星、食物、一个或多个替代的特定实体,和/或它们的组合)的引用。例如,系统可以处理进一步候选文本表示“with a v”,以识别语法“with a <entity>”。另外或替代地,系统可以识别与语法的<entity>部分相对应的一个或多个属性,诸如识别与进一步候选文本表示“with a v”中的“v”相对应的一个或多个属性。
3、在一些实现方式中,系统可以识别进一步口头输入的进一步候选文本表示中的一个或多个属性。一个或多个属性可以包括发音提示(例如,“with a v”、“starting with ab”、“ending with a p”等);知识图谱实体(例如,“as in walter p. cunningham”,其中“walter p. cunningham is a famous actor”等);其他类型的类别(例如,“not theanimal”、“the movie star”等);和/或它们的组合。例如,进一步口头输入“with a v”包括基于“v”的一个或多个属性;进一步口头输入“like brad the big green cat”包括基于“brad the big green cat”的一个或多个属性;并且进一步口头输入“ends with a p”包括基于“p”的一个或多个属性。在一些实现方式中,系统可以将一个或多个属性与口头输入的候选文本表示和/或针对口头输入的候选文本表示的一个或多个附加假设进行比较。例如,系统可以将一个或多个低置信度词项、一个或多个不常用词项、一个或多个不常用实体名称、一个或多个附加词项和/或它们的组合与一个或多个属性进行比较。例如,系统可以在口头输入的候选文本表示“what is a hat”中识别低置信度词项“hat”,并且系统可以识别基于进一步文本表示“with a v”中的“v”的一个或多个属性。在一些实现方式中,系统可以基于系统对单词hat的低置信度来确定将基于“v”的一个或多个属性应用于单词“hat”,并且可以生成经修订的文本表示“what is a vat”。
4、在一些实现方式中,系统可以基于将进一步候选文本表示的一个或多个属性与候选文本表示(和/或候选文本表示的一个或多个附加假设)进行比较来确定用户是否将进一步口头输入作为对先前口头话语的校正而说出。例如,系统可以将进一步候选文本表示的一个或多个属性与候选文本表示和/或候选文本表示的附加假设中的一个或多个低置信度单词、不常用词项、不常用实体名称、一个或多个附加词项、和/或它们的组合进行比较。在一些实现方式中,候选文本表示中的每个单词可以具有对应的置信度得分,该置信度得分指示候选单词由用户在口头输入中说出的可能性。
5、作为一个具体示例,系统可以确定与候选文本表示“what is a hat”中的单词“hat”相对应的置信度得分,其中单词“hat”是对口头输入中的单词“vat”的错误辨识。系统可以基于候选文本表示中的单词“hat”的低置信度得分来确定进一步口头输入“with a v”旨在校正单词“hat”。在那些实现方式中的一些实现方式中,系统可以通过基于进一步口头输入“with a v”中的属性“v”改变候选文本表示中的单词“hat”来生成口头输入的经修订的文本表示“what is a vat”。相反,系统可以基于候选口头输入中的单词“hat”的高置信度得分来确定进一步口头输入“with a v”并非旨在校正单词“hat”。
6、在一些实现方式中,系统可以基于进一步口头输入来对候选文本表示的一个或多个假设进行重新评分。例如,系统可以基于口头输入中的词项的底层置信度和进一步口头输入的相关性得分来对一个或多个假设进行重新评分,该相关性得分指示进一步口头输入与口头输入中的词项相关的可能性。例如,在生成口头输入的候选文本表示“what is ahat”(即,口头输入的文本表示的首位假设)时,系统可以生成附加假设“what is a cat”和“what is a vat”,其中单词“hat”、“cat”和“vat”各自具有对应的置信度得分。系统可以确定单词“hat”、“cat”和“vat”中的每一者与进一步候选文本表示“with a v”之间的对应相关性得分,该对应相关性得分指示每个候选单词与进一步候选文本表示相关的可能性。在一些实现方式中,系统可以基于初始置信度得分和相关性得分对假设中的每一者进行重新评分。基于该重新评分,“what is a vat”这个假设可以成为首位假设,并且系统可以生成经修订的文本表示“what is a vat”。
7、另外或替代地,系统可以使用语言模型来确定进一步口头输入是否是为了校正候选文本表示中的至少一个单词而提供的。例如,可以基于利用语言模型处理候选文本表示来生成语言得分,该语言得分指示候选文本表示中的单词序列的可能性。可以类似地使用语言模型处理候选经修订的文本表示,以生成进一步语言得分,该进一步语言得分指示候选经修订的文本表示中的单词序列的可能性。在一些实现方式中,系统可以基于将语言得分与进一步语言得分进行比较来确定进一步口头输入是否是为了改变候选文本表示而提供的。例如,系统可以使用语言模型处理候选文本表示“what is a hat”以生成75的语言得分,并且可以使用语言模型处理候选经修订的文本表示“what is a vat”以生成90的进一步语言得分。通过比较75的语言得分和90的进一步语言得分,系统可以确定进一步口头输入“with a v”旨在校正候选文本表示中的单词“hat”,并且可以生成经修订的文本表示“what is a vat”。
8、因此,各种实现方式阐述了用于确定用户是否是为了校正对先前(例如,紧接在前的)口头输入的候选文本表示中的至少一个单词的错误辨识而说出进一步输入的技术。例如,用户可以说出口头输入“show me a picture of liza”,并且系统可以生成候选文本表示“show me a picture of lisa”,其中口头输入中的单词“liza”在候选文本表示中被错误辨识为“lisa”。用户可以说出进一步口头话语“liza like liza the frog”(其中lizathe frog是一个儿时卡通人物)来校正候选文本表示中对单词“liza”的错误辨识。在一些实现方式中,系统可以在使用流式传输自动语音辨识模型处理捕获口头输入的音频数据的同时生成口头输入的候选文本表示,其中系统可以在用户仍在说话时渲染候选文本表示的转录。这可以允许用户查看候选文本表示的转录,并在系统执行响应于候选文本表示的一个或多个进一步动作之前识别任何错误辨识。
9、例如,在系统渲染响应于候选文本表示“show me a picture of lisa”的“lisa”的图片之前,用户可以在候选文本表示的转录中识别出将“liza”错误辨识为“lisa”。在各种实现方式中,在无需采用系统资源密集型动作来获取和/或提供响应于错误辨识的口头输入的内容的情况下,可以通过用户校正对口头输入的错误辨识来节省计算资源(例如,存储器、电池电量、处理器周期等)。相比之下,如果不使用本文描述的技术,系统会在用户尝试通过重复口头输入“show me a picture of liza”(其可再次被错误辨识)来校正错误辨识之前,并且/或者在用户通过执行低延迟键入“show me a picture of liza”和/或通过执行对错误辨识的转录进行编辑来校正错误辨识之前,渲染响应于不正确的候选文本表示“show me a picture of lisa”的“lisa”的图片。另外或替代地,由用户响应于对口头输入的错误辨识而说出的进一步口头输入可以比重复口头输入更短,从而允许用户关注口头输入的被错误辨识的部分而不是整个口头输入。继续前面的示例,当系统在口头输入“showme a picture of liza”中将单词“liza”错误辨识为“lisa”时,用户可以说出进一步口头输入“no, with a z”。在各种实现方式中,与重新处理较长的口头输入相比,通过处理较短的进一步口头输入可以节省计算资源。
10、更一般地,本文公开的实现方式使用户能够提供进一步口头输入以校正对用户先前(例如,紧接在前)口头输入的候选文本表示中的至少一个单词的错误辨识。那些实现方式使得能够对错误辨识进行低延迟校正和/或防止用户需要利用替代输入模式(例如虚拟或物理键盘)来校正错误辨识。另外或替代地,那些实现方式提供了改进的用户/系统交互,该交互使得能够以对用户来说更自然的方式校正错误辨识。
11、以上描述仅作为对本文所公开的一些实现方式的概述提供。以下将以附加细节公开技术的这些和其他实现方式。应理解,前述概念和本文更详细描述的附加概念的所有组合均被视为本文所公开的主题的一部分。例如,出现在本公开末尾的所要求保护的主题的所有组合均被视为本文所公开的主题的一部分。
1.一种由一个或多个处理器实现的方法,所述方法包括:
2.如权利要求1所述的方法,其中使所述客户端装置执行基于所述经修订的文本表示的所述一个或多个动作包括渲染基于所述经修订的文本表示的进一步输出。
3.如任一前述权利要求所述的方法,进一步包括:
4.如任一前述权利要求所述的方法,进一步包括:
5.如任一前述权利要求所述的方法,其中所述口头输入的所述候选文本表示是通过使用流式传输自动语音辨识模型处理所述口头输入而生成的,并且其中所述进一步口头输入的所述进一步候选文本表示是通过使用所述流式传输自动语音辨识模型处理所述进一步口头输入而生成的。
6.如权利要求5所述的方法,其中所述流式传输自动语音辨识模型本地存储在所述客户端装置处。
7.如任一前述权利要求所述的方法,进一步包括:
8.如任一前述权利要求所述的方法,其中在无需基于生成的端点度量来确定所述口头输入已完成的情况下发生接收捕获所述进一步口头输入的所述进一步音频数据。
9.如任一前述权利要求所述的方法,其中生成所述口头输入的所述候选文本表示包括:
10.如权利要求9所述的方法,其中处理所述进一步候选文本表示包括:
11.如权利要求10所述的方法,其中所述一个或多个属性包括发音提示,所述发音提示指示所述候选文本表示中的所述至少一个单词的发音。
12.如权利要求10所述的方法,其中所述一个或多个属性包括知识图谱实体,所述知识图谱实体指示所述候选文本表示中的所述至少一个单词与所述一个或多个属性之间的关系。
13.如权利要求10所述的方法,进一步包括:
14.如权利要求13所述的方法,其中基于将所述一个或多个属性与所述文本表示的所述多个假设进行比较来确定对所述候选文本表示中的所述至少一个单词的所述校正包括:
15.如权利要求13所述的方法,其中基于将所述一个或多个属性与所述文本表示的所述多个假设进行比较来确定对所述候选文本表示中的所述至少一个单词的所述校正包括:
16.如权利要求10所述的方法,其中基于所述进一步候选文本表示的一个或多个词项来改变所述候选文本表示中的所述至少一个单词以生成所述经修订的文本表示包括:
17.一种客户端装置,包括:
18.如权利要求17所述的客户端装置,其中使所述客户端装置执行基于所述经修订的文本表示的所述一个或多个动作包括渲染基于所述经修订的文本表示的进一步输出。
19.如权利要求17所述的客户端装置,其中所述指令进一步包括:
20.如权利要求17所述的客户端装置,其中所述口头输入的所述候选文本表示是通过使用流式传输自动语音辨识模型处理所述口头输入而生成的,并且其中所述进一步口头输入的所述进一步候选文本表示是通过使用所述流式传输自动语音辨识模型处理所述进一步口头输入而生成的。
21.一种非暂时性计算机可读存储介质,包括指令,所述指令在由一个或多个处理器执行时使所述一个或多个处理器执行如权利要求1至16中任一项所述的方法。
22.一种系统,包括用于执行如权利要求1至16中任一项所述的方法的一个或多个处理器。