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

自动语音识别中误认的识别和利用的制作方法

2022-03-08 22:03:51 来源:中国专利 TAG:



背景技术:

1.基于语音的用户界面越来越多地用于控制计算机和其他电子设备。基于语音的用户界面不断从只能理解简单和直接命令的早期基本界面演化到响应自然语言请求并且可以理解上下文并管理与用户的来回对话或会话的更复杂的界面。许多基于语音的用户界面对口述话语执行语音识别(例如,使用自动语音识别模型)以生成对应的文本,执行文本的语义分析以试图确定口述话语的含义,和/或根据确定的含义采取一项或多项行动。
2.虽然语音识别性能不断提高,但在许多情况下仍可能发生不准确的语音识别。作为非限制性示例,对于新术语和/或在训练语音识别模型的训练语料库中相对不频繁(或不存在)的术语,可能发生不准确的语音识别。为了有效地识别新术语和/或不常用术语,已经提出了一些技术来生成除一个初始假设(或多个初始假设)之外的附加语音识别假设,并将附加语音识别假设视为语音识别的候选者。然而,这些技术需要附加的后处理,并且在许多情况下仍然无法有效识别许多术语,例如当一个或多个初始假设偏离基础太远时和/或当附加假设的词典不包括某些术语时。


技术实现要素:

3.本文描述的实现方式涉及识别和/或利用自动语音识别(“asr”)引擎对口述话语的误认。在一些实现方式中,误认引擎可用于识别一对话语,其可包括用户说出的话语和用户说出的随后话语,其中,作为话语的文本表示是话语的误认的结果由用户说出随后话语。例如,用户可以说出“ok,助理,我如何去假设的猫咖啡馆”的话语。asr引擎可用于生成“ok,助理,我如何去假设的蝙蝠咖啡馆”的话语的文本表示,其中,“蝙蝠”是对“猫”的误认。附加地或替代地,由于话语的文本表示是误认,用户可以说出随后话语“ok,助理,我如何到达假设的猫咖啡馆”,其中,asr引擎可以用于生成随后话语“ok,助理,我如何去假设的猫咖啡馆”的随后话语的随后文本表示。如本文所述,“误认对”可以指示(1)话语和/或话语的对应文本表示和(2)随后话语和/或随后话语的对应随后文本表示。
4.在一些实现方式中,误认对可用于个性化说话者的asr引擎。例如,误认对可用于为说话者训练个性化的asr模型。附加地或替代地,误认对可用于重写用户说出的进一步话语的进一步文本表示。此外,在一些实现方式中,误认对可以附加地或替代地用于修改asr模型的词格的一个或多个部分,其中,修改后的词格可以由asr模型用于生成进一步的口述话语的进一步文本表示。
5.在一些实现方式中,误认引擎可用于确定话语和随后话语是否是误认对。例如,响应于计算系统播放不正确歌曲,用户可以说出“播放假设歌曲名称”的话语,随后说出“播放假设歌曲名称”的随后话语,其中,用户响应于“播放假设歌曲名称”的话语的误认说出“播放假设歌曲名称”的随后话语。在一些实现方式中,误认引擎可用于基于话语的文本表示作为话语的误认来确定是否说出了随后话语。例如,误认引擎可以基于以下一个或多个以及/
或基于附加或替代条件确定误认对:(1)话语和随后话语之间的持续时间;(2)话语与随后话语的语音相似度;(3)用户已说出该话语和/或随后话语的至少一部分的次数。在一些实现方式中,误认引擎可以确定用户说出话语和随后话语之间的时间是否满足一个或多个条件(例如,时间是否低于阈值、话语和随后话语是否在相同对话会话中说出和/或时间是否满足一个或多个附加或替代条件)。例如,误认引擎可以基于(例如,仅基于或结合其他条件)在同一对话会话中发生、相隔少于10秒发生、相隔少于5秒发生、相隔少于3秒发生和/或相隔少于其他阈值持续时间发生的话语和随后话语来确定话语和随后话语是误认对。
6.在一些实现方式中,误认引擎可以确定话语与随后话语之间的语音相似度是否满足一个或多个条件。例如,一个或多个条件可以包括语音相似度度量超过阈值,话语的至少一部分与对应的随后话语的至少一部分之间的语音相似度度量超过阈值,和/或相似性度量满足一个或多个其他语音相似度条件。例如,如果话语的“假设歌曲”部分与随后话语的“假设歌曲”部分之间的语音相似度度量超过了阈值,则误认引擎可以确定“播放假设歌曲”的话语和“不,播放假设歌曲”的随后话语是误认对。
7.在一些实现方式中,误认引擎可以基于用户已经说出话语的至少一部分和随后话语的至少对应部分的次数来确定该话语和该随后话语是否是误认对。例如,基于误认引擎确定话语“ok,助理,呼叫john doe”的“john doe”部分和随后话语“不,呼叫john doe”的“john doe”部分出现超过阈值次数,误认可以确定该话语和随后话语是误认对。换言之,当说话者已经纠正了在一次或多次对话会话上的误认(例如,通过说出随后话语纠正了名字“john doe”的误认)至少阈值数量时,误认引擎可以确定话语和随后话语是误认对。
8.附加地或替代地,在一些实现方式中,误认引擎可以从对话会话生成多个误认对。例如,用户可以说出“ok,助理,打开厨房灯一”的话语、插入话语“ok,助理,不打开厨房灯一”以及随后话语“不,请只打开厨房灯一”,其中,随后话语是在话语之后说出的,而插入话语是介于话语和随后话语之间。换言之,用户说出插入话语以纠正话语的误认,并且用户说话者说出随后话语以纠正插入话语的误认。在一些实现方式中,误认引擎可用于确定话语和随后话语的第一误认对以及插入话语和随后话语的第二误认对。
9.然而,用户说出的随后话语可能不是对先前话语的纠正。在某些情况下,尽管通过asr引擎的误认,但用户可能只是停止说话。在一些实现方式中,误认引擎可以确定候选误认对的随后话语部分是否在历史误认对中得到纠正。换言之,误认引擎可以确定误认对的随后话语是否为历史误认对的历史话语(即,随后话语是否被纠正为历史误认对中的误认)。在那些实现方式中的一些实现方式中,误认引擎可以基于在历史误认对中被纠正的随后话语来确定话语和随后话语对不是误认对。
10.在一些实现方式中,误认引擎可以附加地或替代地基于上下文信息确定话语和随后话语是否是误认对。例如,用户可以在控制音乐播放器的同时重复话语“跳过”。然而,“跳过”的话语和“跳过”的随后话语之间的语音相似度(和/或误认引擎在确定一对话语是否为误认对时使用的附加度量)并不一定表示当用户在使用音乐播放器播放歌曲时的误认对。换言之,误认引擎可以基于指示使用音乐播放器播放歌曲的上下文信息来确定“跳过”的话语和“跳过”的随后话语可能不是误认对。相比之下,用户可以响应于“您想将电子邮件发送给谁?”的来自系统的提示说“跳过”的话语。用户可以响应于“对不起,我在你的联系人中没有看到跳过”的来自系统的输出说出“跳过”的随后话语。换言之,误认引擎可以基于指示用
户正在起草电子邮件的上下文信息,确定“跳过”的话语和“跳过”的随后话语是误认对。
11.在一些实现方式中,误认引擎可以基于一个或多个上下文信号(例如一个或多个短期先前查询历史上下文信号、一个或多个长期聚合历史上下文信号、一个或多个基于用户动作内容的上下文信号和/或一个或多个附加或替代的上下文信号)来确定该话语和随后话语是否是误认对。在一些实现方式中,一个或多个上下文信号可以对应于用户的用户简档、捕获话语的客户端设备和/或用户与客户端设备之间的对话会话。
12.因此,各种实现方式阐述了用于确定误认对的技术,其中,误认对可用于为用户个性化asr引擎。个性化可以使asr引擎能够避免生成进一步话语的文本表示(这是进一步话语的误认),自动重写作为进一步话语的误认的进一步文本表示,和/或否则提高asr性能。相比之下,尚未个性化的asr引擎可能会继续生成作为话语的误认的文本表示。此外,由于使用非个性化asr引擎生成的这些误认,用户可能不得不重复提供随后话语。相比之下,本文描述的技术使asr引擎能够基于对用户说出的话语的先前误认进行个性化。在一些实现方式中,个性化的asr引擎不生成作为话语的误认的话语的文本表示,其中,系统先前识别出对应于话语的至少一部分的误认对。在某些情况下,可以通过使用个性化的asr引擎生成话语的一个或多个文本表示而没有一个或多个话语的误认来节省计算资源(例如,处理器周期存储器、电池电量等)。这可以防止计算系统基于误认的话语执行不期望的动作以及消除用户响应于由误认引起的不期望的动作而说出附加话语的需要。
13.以上描述仅作为此处公开的一些实现方式的概述而提供。下面更详细地公开了该技术的这些和其他实现方式。
14.应当理解,上述概念和这里更详细描述的附加概念的所有组合都被设想为这里公开的主题的一部分。例如,出现在本公开末尾的要求保护的主题的所有组合都被认为是本文公开的主题的一部分。
附图说明
15.图1示出了根据本文公开的各种实现方式的识别误认对的示例。
16.图2图示了其中可以实现本文公开的各种实现方式的示例环境。
17.图3是示出根据本文公开的各种实现方式的个性化asr引擎的示例过程的流程图。
18.图4是图示根据本文公开的各种实现方式的、确定用户是否由于使用asr模型生成的话语的文本表示是话语的误认而说出随后话语的示例过程的流程图。
19.图5图示了计算设备的示例架构。
具体实施方式
20.现在转向附图,图1图示了根据本文公开的一些实现方式的识别误认对的示例的框图。示例100包括使用asr模型104处理捕获话语102的音频数据以生成话语106的文本表示。在一些实现方式中,捕获话语102的音频数据可以包括使用计算系统(例如,图2的计算系统202)的一个或多个麦克风捕获的口述话语。在一些实现方式中,asr模型104是asr引擎(未描绘)的一部分。附加地或替代地,使用asr模型104处理捕获随后话语108的音频数据以生成随后话语110的随后文本表示。在一些实现方式中,话语和随后话语由同一用户说出。例如,用户可以与其中用户说出话语的计算系统进行对话会话,计算系统(例如,计算系统
的自动助理客户端)基于话语的文本表示执行一个或多个动作,并且用户响应于计算系统执行的一个或多个动作说出随后话语。例如,计算系统可以基于话语106的文本表示执行一个或多个动作,例如控制一个或多个联网智能灯、控制联网智能恒温器、控制附加和/或替代联网智能设备、控制音乐播放器,呈现指示计算系统正在执行的动作的输出和/或执行一个或多个附加和/或替代动作。
21.在一些实现方式中,误认引擎112可以处理话语106的文本表示和随后话语110的随后文本表示以确定话语106和随后话语110是否是误认对114。换言之,误认引擎112可以基于用户是否基于使用asr模型104生成的话语106的文本表示为话语102的误认说出随后话语108来确定误认对114。在一些实现方式中,asr个性化引擎116可以使用误认对114来个性化asr引擎。然而,在一些实现方式中,误认引擎112可以确定话语102和随后话语108不是误认对。在那些实现方式中的一些实现方式中,asr个性化引擎116可以不使用话语102和随后话语108来个性化asr引擎。
22.例如,用户可以说出“关掉客厅灯”的话语,其中,客厅包括三个联网智能灯,一个联网智能灯与灯相关联,两个联网智能灯与头顶灯具相关联。可以使用asr模型104处理捕获话语102的音频数据,以生成“关闭客厅灯”的话语106的文本表示,其中,“灯”是对话语102中“多个灯”的误认。计算系统可以在关闭客厅灯的同时呈现“ok,关闭客厅灯”的输出(即,计算系统可以基于作为话语的误认的话语的文本表示执行不期望的动作)。响应于话语的文本表示是话语的误认,用户可以说出“不,关闭所有客厅灯”的随后话语。asr模型104可以处理捕获随后话语108的音频数据以生成“不,关闭所有客厅灯”的随后话语110的随后文本表示(即,生成不是对随后话语的误认的随后话语的随后文本表示)。误认引擎112可以确定话语102和随后话语108是误认对114。附加地或替代地,asr个性化引擎116可以使用误认对114来个性化asr引擎。
23.在一些实现方式中,用户可以说出插入在话语和随后话语之间的“关掉客厅灯”的插入话语。asr模型104可用于处理捕获插入话语(未描绘)的音频数据以生成“不,关掉客厅灯”的插入话语(未描绘)的插入文本表示,其中,“灯”是插入话语中对“多个灯”的误认。计算系统可以在关闭客厅灯的同时呈现“ok,关掉客厅灯”的输出。如上所述,响应于插入话语的误认,用户然后可以说出“不,关闭所有客厅灯”的随后话语。在一些实现方式中,误认引擎112可以附加地和/或替代地确定插入话语和随后话语是否是误认对114。换言之,误认引擎112可以从对话会话(即,话语和随后话语,以及插入话语和随后话语)确定两个误认对114。
24.附加地或替代地,在一些实现方式中,误认引擎112可以确定该话语和随后话语不是误认对。例如,用户可以说出“由假设的外国乐队演奏aucelander”的第一话语。在一些实现方式中,asr模型可以处理捕获第一话语的音频数据以生成“由假设的外国乐队演奏outlander”的第一话语的第一文本表示,其中,“outlander”是对“aucelander”的误认。该计算系统可以呈现“无法由假设的外国乐队演奏outlander”的输出。响应于呈现的输出,用户可以说出“由假设的外国乐队演奏aucelander”的第二话语。asr模型可用于处理捕获第二话语的音频数据,以生成“由假设的外国乐队演奏icelander”的第二话语的第二文本表示,其中,“icelander”是对“aucelander”的误认。该计算系统可以呈现“无法由假设的外国乐队演奏icelander”的输出。
25.在一些实现方式中,用户可以说出“由假设的外国乐队演奏aucelander”的第三话语,并且可以使用asr模型来处理捕获第三话语的音频数据以生成“由假设的外国乐队演奏所有slender”的第三话语的第三文本表示。计算系统可以呈现“无法由假设的外国乐队演奏所有slender”的输出。在一些实现方式中,用户可以停止说出附加的话语。然而,仍然有使用asr模型生成的误认。在一些实现方式中,误认引擎112可以利用这里描述的技术来基于使用asr模型生成的最后话语的文本表示不是对最后话语的误认来确定用户是否停止说出附加话语,或者是否尽管有最后的话语(例如,用户变得沮丧并放弃说话、用户分心等)的误认,但用户停止说出附加话语。在一些实现方式中,误认引擎112可以确定第三话语的文本表示仍然是误认,并且第三话语不应包括在误认对114中。
26.相比之下,在一些其他实现方式中,用户可以说出“由假设的外国乐队演奏aucelander”的替代第三话语。asr模型可用于处理捕获替代第三话语的音频数据,以生成替代,“由假设的外国乐队演奏aucelander”的替代第三话语的替代第三文本表示,其中,'aucelander'未被误认,并且计算系统可以开始播放请求的歌曲。在一些实现方式中,误认引擎112可以确定替代第三话语的替代第三文本表示不是误认并且替代第三话语应当被包括作为误认对114的一部分(例如,第一话语和替代的第三话语的第一误认对和/或第二话语和替代的第三话语的第二误认对)。
27.图2图示了其中可以实现这里公开的实现方式的示例环境200的框图。示例环境200包括计算系统202,其可以包括asr引擎204、误认引擎112、asr个性化引擎116、上下文引擎206和/或一个或多个附加引擎(未描绘)。附加地或替代地,计算系统202可以与一个或多个用户界面输入/输出设备(未描绘)相关联。此外,计算系统202可以与asr模型104、一个或多个误认对114和/或一个或多个附加组件(未描绘)相关联。在一些实现方式中,asr模型104与asr引擎204相关联。
28.在一些实现方式中,计算系统202可以包括用户界面输入/输出设备,其可以包括例如物理键盘、触摸屏(例如,实施虚拟键盘或其他文本输入机制)、麦克风、相机、显示屏和/或扬声器。用户界面输入/输出设备可以与用户的一个或多个计算系统202结合。例如,用户的移动电话可以包括用户界面输入输出设备;独立的数字助理硬件设备可以包括用户界面输入/输出设备;第一计算设备可以包括用户界面输入设备并且单独的计算设备可以包括用户界面输出设备;等等。在一些实现方式中,计算系统202的全部或方面可以实现在还包含用户界面输入/输出设备的计算系统上。在一些实现方式中,计算系统202可以包括自动化助理(未描绘),并且自动化助理的所有或方面可以实现在与包含用户界面输入/输出设备的客户端设备分开且远离的计算设备上(例如,所有或方面都可以实现“在云中”)。在那些实现方式中的一些实现方式中,自动化助理的那些方面可以经由一个或多个网络(例如局域网(lan)和/或广域网(wan)(例如,因特网))与计算设备通信。
29.计算系统202的一些非限制性示例包括以下中的一个或多个:台式计算设备、膝上型计算设备、至少部分专用于自动化助理的独立硬件设备、平板计算设备、移动电话计算设备、车辆的计算设备(例如,车载通信系统和车载娱乐系统、车载导航系统、车载导航系统)或包括计算设备的用户的可穿戴设备(例如,具有计算设备的用户的手表、具有计算设备的用户的眼镜、虚拟或增强现实计算设备)。可以提供附加的和/或替代的计算系统。计算系统202可包括用于存储数据和软件应用的一个或多个存储器、用于访问数据和执行应用的一
个或多个处理器以及有助于通过网络进行通信的其他组件。计算系统202执行的操作可以分布在多个计算设备上。例如,在一个或多个位置的一台或多台计算机上运行的计算程序可以通过网络相互耦合。
30.如图2所示,asr引擎204可以处理一个或多个口述话语以生成一个或多个话语的文本表示。在一些实现方式中,可以使用一个或多个用户界面输入设备来捕获(例如,使用计算系统202的一个或多个麦克风捕获)口述话语。在一些实现方式中,asr模型104可用于处理话语以生成话语的文本表示。例如,如图1所示,asr模型104可以处理捕获话语102的音频数据以生成话语106的文本表示。类似地,asr模型104可以处理捕获随后话语108的音频数据以生成随后话语110的随后文本表示。在一些实现方式中,asr模型104可以包括多种神经网络模型中的一种或多种,包括前馈神经网络模型、卷积神经网络模型、循环神经网络模型、混合神经网络模型和/或一种或多种附加和/或替代神经网络模型。
31.在一些实现方式中,误认引擎112可用于确定用户是否由于使用asr模型104生成的话语的文本表示是话语的误认而说出随后话语。在一些实现方式中,根据在此描述的图4的过程400,误认引擎112可以确定用户是否由于话语的文本表示是话语的误认而说出了随后话语。附加地或替代地,在确定话语和随后话语是误认对时,误认引擎112可以将话语和对应的随后话语存储为误认对114。在一些实现方式中,误认对114可以包括:(1)捕获话语和/或话语的文本表示的音频数据;(2)捕获随后话语和/或随后话语的随后文本表示的随后音频数据;和/或与误认对有关的附加或替代信息(例如,说出话语的用户等)。例如,误认对可以包括:捕获话语的音频数据和随后话语的随后文本表示;捕获话语的音频数据、话语的文本表示以及随后话语的随后文本表示;捕获话语的音频数据、话语的文本表示、捕获随后话语的随后音频数据以及随后话语的随后文本表示;话语的文本表示和随后话语的文本表示;话语的文本表示和捕获随后话语的随后音频数据;等等。在一些实现方式中,误认对114可以本地存储在计算系统202处。附加地或替代地,误认对114可以存储在远离计算系统202的远程服务器处。
32.在一些实现方式中,asr个性化引擎116可用于为用户个性化asr引擎204。在一些实现方式中,asr个性化引擎116可以使用一个或多个误认对114来训练asr模型104(例如,使用一个或多个误认对114作为训练实例通过反向传播来训练asr模型104)。例如,误认对可以包括捕获话语的音频数据和随后话语的随后文本表示。asr个性化引擎116可以使用asr模型处理捕获话语的音频数据以生成话语的文本表示。附加地或替代地,asr个性化引擎116可以确定所生成的话语的文本表示与随后话语的随后文本表示之间的差异。asr模型104的一个或多个部分可以基于所确定的差异(例如,通过反向传播)进行更新。又如,误认对114可以包括话语的文本表示和随后话语的随后文本表示。asr个性化引擎116可以确定话语的文本表示与随后话语的随后文本表示之间的差异。asr模型104的一个或多个部分可以基于所确定的差异(例如,通过反向传播)来进行更新。
33.在一些实现方式中,asr个性化引擎116可用于基于误认对114重写进一步话语的进一步文本表示的一个或多个部分。例如,误认对可包括:(1)“将厨房的灯光调暗到70%”的话语的文本表示,其中,“70%”是话语中“72%”的误认;以及(2)“将厨房的灯光调暗到72%”的随后话语的随后文本表示。在一些实现方式中,用户可以说出“将客厅的灯调暗至72%”的进一步话语。可以使用asr模型处理捕获话语的音频数据,以生成“将客厅的灯光调
暗至70%”的进一步话语的进一步文本表示,其中,“70%”是对“72%”的误认(即与误认对相同(或基本相似)的误认)。在一些实现方式中,asr个性化引擎116可以基于误认对重写进一步话语的进一步文本表示,其中,重写的进一步话语的进一步文本表示可以基于误认对被重写为“将客厅的灯调暗到72%”。
34.在一些实现方式中,asr个性化引擎116可用于基于部分误认对114重写进一步话语的进一步文本表示的一个或多个部分。例如,asr个性化引擎116可以使用误认对114的随后话语部分的随后文本表示来生成进一步话语的进一步文本表示的候选重写,其否则可能不是进一步话语的进一步文本表示的候选重写。附加地或替代地,asr个性化引擎116可以使用误认对114的随后话语部分的随后文本表示来改变否则是进一步话语的进一步文本表示的候选重写的候选重写的权重(例如,增加候选重写的权重)。
35.附加地或替代地,asr个性化引擎116可以在生成进一步话语的进一步文本表示的同时,基于一个或多个误认对114修改由asr模型生成的词格的一个或多个部分。例如,误认对可以包括:(1)“助理,请呼叫john doe”的话语的文本表示,其中,“john doe”是话语中对“john foe”的误认;以及(2)“助理,请呼叫john doe”的话语的随后的文本表示。asr模型可以在生成“ok,助理,将该文件发送到john foe”的进一步话语的文本表示时生成词格。在一些实现方式中,asr个性化引擎116可以基于误认对修改词格。例如,asr个性化引擎116除了在词格中的“doe”的表示之外,还可以将“foe”的表示插入到词格中,在生成进一步话语的进一步文本表示的同时为asr模型提供进一步话语的一个或多个部分的附加或替代候选文本表示。在一些实现方式中,系统可以基于修改后的词格生成“ok,助理,将该文件发送到john foe”的进一步话语的进一步文本表示。相比之下,如果没有修改,系统可能已经生成了“ok,助理,将该文件发送到john foe”的进一步话语的进一步文本表示,其中,“doe”是对“foe”的误认。换言之,修改词格可以为asr模型提供进一步话语的一个或多个部分的附加候选文本识别,为asr模型提供生成进一步话语的进一步文本表示的能力,而不会有进一步话语的误认,其中,asr模型可能已经利用对进一步话语的误认生成了进一步话语的进一步文本表示,而没有对词格进行修改。
36.附加地或替代地,在基于误认对114的一部分生成进一步话语的进一步文本表示的同时,asr个性化引擎116可以修改由asr模型生成的词格的一个或多个部分。在一些实现方式中,asr个性化引擎116可以基于误认对114的随后话语部分的随后文本表示,通过例如向asr模型否则没有生成的词格插入一个或多个附加弧来修改由asr模型生成的词格的一个或多个部分。附加地或替代地,asr个性化引擎116可以使用误认对的随后话语部分的随后文本表示来改变词格中的一个或多个弧的权重(例如,增加一个或多个弧的权重),其中,弧是使用asr模型生成的。
37.在一些实现方式中,上下文引擎206可以确定一个或多个上下文信号,这些信号可以用于训练asr模型以个性化asr模型。在一些实现方式中,一个或多个上下文信号可以对应于用户的用户简档、计算系统、用户与计算系统之间的对话会话和/或附加或替代信号。上下文信号可以基于短期先前查询历史、长期聚合历史、用户动作内容和/或附加或替代信息。短期先前查询历史可以包括:(1)随后话语的主题;(2)对话会话中的随后话语与一个或多个先前话语之间的语音距离;(3)对话会话中的随后话语和一个或多个先前话语之间的文本编辑距离;和/或与最近查询历史相关的附加或替代信息。在一些实现方式中,文本编
辑距离可以包括莱文斯坦距离、汉明距离、l1距离、jaro-winkler距离和/或第一文本串和第二文本串之间的附加或替代距离。长期聚合历史可以包括:(1)与用户简档对应的多个常用词;(2)与用户简档对应的附加信息;和/或与用户随时间的查询相关的附加或替代信息。在一些实现方式中,常用的词可以是用户以最高频率说的词(例如,用户以最高频率说的十个词,用户以最高频率说的五个词)。附加地或替代地,常用的词可以指示用户说出至少阈值次数的任何词(例如,说出至少10次、至少50次、至少100次和/或至少附加数量次数的词)。用户动作内容可以包括在对话会话期间计算系统的一种或多种状态(例如,指示用户正在播放音乐的上下文信号)。
38.在一些实现方式中,asr个性化引擎116可以使用由上下文引擎206确定的一个或多个上下文信号来训练asr模型114。例如,可以训练asr模型来处理(1)捕获话语的音频数据和(2)上下文信号以生成话语的文本表示。
39.图3是示出根据本文公开的实现方式为用户个性化asr引擎的过程300的流程图。为方便起见,参照执行操作的系统来描述流程图的操作。该系统可以包括各种计算机系统的各种组件,例如计算系统202和/或计算系统510的一个或多个组件。此外,虽然以特定顺序示出过程300的操作,但这并不意味着限制。一个或多个操作可以被重新排序、省略和/或添加。
40.在框302,系统使用asr引擎的asr模型通过处理捕获用户说出的话语的音频数据来生成话语的文本表示。例如,如图2所示的计算系统202的一个或多个麦克风可捕获音频数据,其捕获“ok,助理,设置温度为72度”的口述话语。asr模型可以处理音频数据以生成话语的文本表示。在一些实现方式中,asr模型可以生成“ok,助理,将温度设置为72度”的口述话语的文本表示,其中,该话语的文本表示不是对该话语的误认。在一些其他实现方式中,使用asr模型通过处理音频数据生成的话语的文本表示可能是话语的误认,例如“ok,助理,将温度设置为70度”的话语的文本表示,其中,“70度”是对“72度”的误认。在一些实现方式中,计算系统可以基于话语的文本表示来执行一个或多个动作。例如,计算系统可以将联网的智能恒温器的温度设置为70度,并基于“ok,助理,将温度设置为70度”的话语的文本表示呈现“ok,将温度更改为70度”的输出。
41.在框304,系统使用asr模型通过处理捕获用户说出的随后话语的随后音频数据来生成随后话语的随后文本表示。在一些实现方式中,可以经由计算系统的一个或多个麦克风来捕获捕获随后话语的音频数据。在一些实现方式中,用户可以基于话语的文本表示是话语的误认(例如,在框302生成的话语的文本表示是话语的误认)来说出随后话语。例如,用户可以响应于计算系统呈现“ok,将温度更改为70度”的输出(这可能表明话语的文本表示是话语的误认)而说出“不,将恒温器设置为72度”的随后话语(重点放在词二上)。
42.在框306处,系统基于使用asr模型生成的话语的文本表示为话语的误认来确定用户是否说出了随后话语。在一些实现方式中,根据在此描述的图4的过程400,系统基于话语的文本表示为话语的误认来确定用户是否说出了随后话语。如果系统基于话语的文本表示是话语的误认确定用户说出了随后话语,则过程进行到框308。如果不是,则过程结束。
43.在框308,系统使用话语的文本表示和/或随后话语的随后文本表示为用户个性化asr引擎。在一些实现方式中,系统可以通过使用话语和随后话语训练asr模型来为用户个性化asr模型。例如,系统可以使用捕获话语的音频数据和话语的随后文本表示作为训练实
例来训练asr模型。在一些实现方式中,系统可以处理捕获话语的音频数据以生成话语的候选文本表示。系统可以确定话语的候选文本表示与训练实例的话语部分的随后文本表示之间的差异。在一些实现方式中,系统可以基于所确定的差异(例如,通过反向传播)更新asr模型的一个或多个部分。
44.在一些实现方式中,系统可以使用话语的文本表示并且随后话语的随后文本表示可以用于重写进一步话语的进一步文本表示。例如,系统可以通过计算系统的一个或多个麦克风捕获捕获用户说出的进一步话语的进一步音频数据。在一些实现方式中,可以使用asr模型来处理捕获进一步话语的进一步音频数据以生成进一步话语的进一步文本表示。然而,进一步话语的进一步文本表示可能是对进一步话语的误认。在那些实现方式中的一些实现方式中,asr引擎可以基于用户对误认的先前更正(即,基于话语和随后话语,其中,用户利用随后话语纠正话语的误认)重写进一步话语的进一步文本表示。
45.例如,用户可以说出话语“ok,助理,呼叫john doe”,其中,asr模型用于生成对话语“ok,助理,呼叫john foe”的误认,其中,“foe”是对“doe”的误认。用户可以响应于系统呼叫john foe说出“ok,助理,呼叫john doe”的随后话语,其中,asr模型可以用于生成“ok,助理,呼叫john doe”的随后话语的随后文本表示。捕获话语的音频数据和随后话语的随后文本表示(例如,其中,通过asr模型将doe的误认纠正为foe的随后话语)可用于重写用户说出的一个或多个进一步话语,其包括姓名john doe。例如,用户可以稍后说出“嘿,助理,呼叫john doe”的进一步话语(例如,用户可以稍后在当天、第二天、下周、下个月等说出进一步话语)。该系统可以通过使用asr模型处理捕获进一步话语的进一步音频数据来生成“嘿,助理,呼叫john foe”的进一步文本表示,其中,foe是对doe的误认。在一些实现方式中,系统可以基于该话语和随后话语的文本表示重写进一步话语的进一步文本表示,其中,可以重写进一步话语的进一步文本表示以将误认纠正为“嘿,助理,呼叫john doe”。换言之,在用户纠正了误认的情况下,系统可以使用该纠正来重写进一步话语的相同(或基本相似)的误认,而用户不必再次对误认进行纠正。
46.在一些实现方式中,作为生成进一步话语的文本表示的一部分,系统可以使用话语和随后话语来修改由asr模型生成的词格。例如,系统可以基于先前的误认在词格中提供一个或多个附加弧,其中,词格中的一个或多个附加弧可以由asr模型处理为进一步话语的附加或替代候选文本表示。当生成进一步话语的进一步文本表示时,asr模型可以选择进一步话语的这些附加或替代候选文本表示之一。
47.图4是图示根据本文公开的实现的确定用户是否由于话语的文本表示是话语的误认而说出随后话语的过程400的流程图。为方便起见,参照执行操作的系统来描述流程图的操作。该系统可以包括各种计算机系统的各种组件,例如计算系统202和/或计算系统510的一个或多个组件。此外,虽然以特定顺序示出过程400的操作,但这并不意味着限制。一个或多个操作可以被重新排序、省略和/或添加。
48.在框402,系统确定用户说出话语与用户说出随后话语之间的时间间隔是否满足一个或多个条件。在一些实现方式中,系统可以确定用户说出话语和用户说出随后话语之间的时间间隔是否低于阈值(例如,时间间隔低于10秒、低于5秒、低于3秒、低于1秒和/或低于附加或替代时间阈值)和/或满足一个或多个附加或替代条件(例如,用户是否在与客户端设备的同一对话会话中说出该话语和随后话语)。
49.在框404,系统确定话语的一个或多个部分与随后话语的一个或多个对应部分之间的语音相似度度量是否满足一个或多个附加条件。在一些实现方式中,系统可以确定语音相似度度量是否超过阈值和/或语音相似度度量是否满足一个或多个附加或替代条件。例如,系统可以基于“ok,助理,打开厨房灯”的话语和“ok,助理,打开所有厨房灯”的随后话语之间的语音相似度来确定语音相似度度量。在一些实现方式中,系统可以确定语音相似度度量是否超过阈值。
50.在框406处,系统确定随后话语是否对应于历史话语的历史文本表示,其中,用户由于使用asr模型生成的历史话语的历史文本表示是历史话语的误认而说出历史随后话语。在一些实现方式中,系统可以确定用户是否纠正了历史误认对中随后话语的随后文本表示的误认。例如,用户可以说话语a和随后话语b。附加地或替代地,用户可以先前已经说过历史话语c和历史随后话语d,其中,历史随后话语d是由于对历史话语c的误认而被说出的。在一些实现方式中,系统可以确定随后话语b的随后文本表示是否与历史话语c的历史文本表示相同(或基本相似),这可以指示用户由于asr模型生成的对随后话语b的误认而先前说过历史随后话语d。在一些实现方式中,这可以提供指示随后话语b的随后文本表示可能是对随后话语b的误认,并且话语a和随后话语b不应被用作误认对。
51.在框408处,系统确定指示用户已经说出话语的至少一部分和随后话语的至少对应部分的次数的值是否满足一个或多个进一步条件。在一些实现方式中,用户简档可以存储用户纠正误认的话语的次数(即,用户简档可以存储用户响应于对话语的至少一部分的误认而说出随后话语的次数)。在一些实现方式中,系统可以确定用户已经“纠正”至少一部分误认的话语的次数是否超过阈值和/或满足一个或多个附加或替代条件。
52.在框410处,系统确定用户是否由于使用asr模型生成的话语的文本表示是话语的误认而说出了随后话语。在一些实现方式中,基于在框402、404、406、408做出的确定的一个或多个和/或基于系统做出的一个或多个附加或替代确定,系统可以确定用户是否由于话语的误认而说出了随后话语。例如,基于话语和随后话语之间的时间间隔是否满足一个或多个条件(例如,如框402中所描述),并且基于指示用户已经历史地说出话语的至少一部分和随后话语的至少对应部分的次数的值是否满足一个或多个进一步的条件(例如,如框408中所述),系统可以确定用户是否由于话语的文本表示是话语的误认而说出了随后话语。作为进一步的示例,基于话语和随后话语之间的语音相似度度量是否满足一个或多个附加条件(例如,如框404中所述),基于随后话语的文本表示是否对应于历史话语的历史文本表示(例如,如框406中所述),并且基于指示用户已经历史地说出话语的至少一部分以及随后话语的至少对应部分的次数的值是否满足一个或多个进一步条件(例如,如框408中所描述),系统可以确定用户是否由于话语的文本表示是话语的误认而说出了随后话语。
53.图5是可以可选地用于执行这里描述的技术的一个或多个方面的示例计算设备510的框图。在一些实现方式中,客户端计算设备和/或其他组件中的一个或多个可以包括示例计算设备510的一个或多个组件。
54.计算设备510通常包括至少一个处理器514,其经由总线子系统512与多个外围设备通信。这些外围设备可以包括存储子系统524(例如包括存储器子系统525和文件存储子系统526)、用户界面输出设备520、用户界面输入设备522和网络接口子系统516。输入和输出设备允许用户与计算设备510的交互。网络接口子系统516提供到外部网络的接口并耦合
到其他计算设备中的对应的接口设备。
55.用户界面输入设备522可以包括键盘、诸如鼠标、轨迹球、触摸板或图形输入板之类的指示设备、扫描仪、并入显示器中的触摸屏、诸如语音识别系统、麦克风的音频输入设备和/或其他类型的输入设备。一般而言,术语“输入设备”的使用旨在包括将信息输入到计算设备510或通信网络上的所有可能类型的设备以及方式。
56.用户界面输出设备520可以包括显示子系统、打印机、传真机或诸如音频输出设备的非视觉显示器。显示子系统可以包括阴极射线管(“crt”)、诸如液晶显示器(“lcd”)的平板设备、投影设备或用于创建可见图像的一些其他机制。显示子系统还可以提供例如通过音频输出设备的非视觉显示器。一般而言,术语“输出设备”的使用旨在包括将信息从计算设备510输出到用户或另一台机器或计算设备的所有可能类型的设备以及方式。
57.存储子系统524存储提供这里描述的一些或所有模块的功能的编程和数据构造。例如,存储子系统524可以包括用于执行图3和/或图4的一个或多个过程的选定方面以及实现图2中描绘的各种组件的逻辑。
58.这些软件模块通常由处理器514单独或与其他处理器组合执行。存储子系统524中使用的存储器525可以包括多个存储器,包括用于在程序执行期间存储指令和数据的主随机存取存储器(“ram”)530和其中存储固定指令的只读存储器(“rom”)532。文件存储子系统526可以为程序和数据文件提供持久存储,并且可以包括硬盘驱动器、软盘驱动器以及相关联的可移动介质、cd-rom驱动器、光驱或可移动介质盒。实现某些实现方式的功能的模块可以由文件存储子系统526存储在存储子系统524中,或存储在处理器514可访问的其他机器中。
59.总线子系统512提供用于使得计算设备510的各种组件和子系统如预期的那样彼此通信的机制。尽管总线子系统512被示意性地示为单条总线,但是总线子系统的替代实现方式可以使用多条总线。
60.计算设备510可以是各种类型的,包括工作站、服务器、计算集群、刀片服务器、服务器群或任何其他数据处理系统或计算设备。由于计算机和网络的不断变化的性质,图5中描绘的计算设备510的描述不仅旨在作为用于说明一些实现方式的目的的特定示例。计算设备510的许多其他配置可能具有比图5中描绘的计算设备更多或更少的组件。
61.在本文描述的系统收集关于用户(或如本文经常提到的“参与者”)的个人信息或可以使用个人信息的情况下,可以向用户提供机会来控制程序或功能是否收集用户信息(例如,有关用户社交网络、社交动作或行为、职业、用户偏好或用户当前地理位置的信息),或控制是否和/或如何从可能与用户更相关的内容服务器接收内容。此外,某些数据可能会在存储或使用之前以一种或多种方式进行处理,以便删除个人身份信息。例如,用户的身份可能会被处理使得无法确定用户的个人身份信息,或者在获取地理位置信息的位置时用户的地理位置可以被一般化(例如城市、邮政编码或州级),使得无法确定用户的特定地理位置。因此,用户可以控制如何收集和/或使用关于用户的信息。
62.在一些实现方式中,提供了一种由一个或多个处理器实施的方法,该方法包括使用asr引擎的自动语音识别(“asr”)模型处理捕获用户说出的话语的音频数据,以生成话语的文本表示。在一些实现方式中,该方法包括使用asr模型处理捕获用户在该话语之后说出的随后话语的随后音频数据,以生成该随后话语的随后文本表示。在一些实现方式中,该方
法包括基于随后话语的随后文本表示,确定用户是否由于使用asr模型生成的话语的文本表示是话语的误认而说出随后话语。在一些实现方式中,响应于确定话语的文本表示是话语的误认并且用户由于误认而说出随后话语,该方法包括使用话语的文本表示和/或随后话语的文本表示为用户个性化asr引擎。
63.本文公开的技术的这些和其他实现方式可以包括以下特征中的一个或多个。
64.在一些实现方式中,使用话语的文本表示和/或随后话语的随后文本表示为用户个性化asr引擎包括训练asr模型,以基于(1)捕获话语的音频数据和(2)随后话语的随后文本表示来为用户个性化asr模型。
65.在一些实现方式中,使用话语的文本表示和/或随后话语的随后文本表示为用户个性化asr引擎包括使用话语的文本表示和随后话语的随后文本表示重写用户说出的进一步话语的进一步文本表示。
66.在一些实现方式中,其中,使用话语的文本表示和/或随后话语的随后文本表示为用户个性化asr引擎包括使用asr模型处理捕获由用户说出的进一步话语的进一步音频数据,以生成进一步话语的进一步文本表示,其中,使用asr模型处理捕获进一步话语的进一步音频数据包括使用话语的文本表示和随后话语的随后文本表示以修改asr模型的词格的一个或多个部分。在一些实现方式中,该方法还包括使用asr模型的词格的修改的一个或多个部分来生成进一步话语的文本表示。
67.在一些实现方式中,使用话语的文本表示和/或随后话语的随后文本表示为用户个性化asr引擎包括使用随后话语的随后文本表示来重写用户说出的进一步话语的进一步文本表示。
68.在一些实现方式中,使用话语的文本表示和/或随后话语的随后文本表示为用户个性化asr引擎包括使用asr模型处理捕获由用户说出的进一步话语的进一步音频数据,以生成进一步话语的进一步文本表示,其中,使用asr模型处理捕获进一步话语的进一步音频数据包括使用随后话语的随后文本表示来修改asr模型的词格的一个或多个部分。在一些实现方式中,该方法还包括使用asr模型的词格的修改的一个或多个部分来生成进一步话语的文本表示。
69.在一些实现方式中,基于随后话语的随后文本表示,确定用户是否由于使用asr模型生成的话语的文本表示是话语的误认而说出随后话语包括确定(1)用户说出话语和(2)用户说出随后话语之间的时间间隔。在一些实现方式中,该方法还包括确定时间间隔是否满足一个或多个条件。在一些实现方式中,该方法还包括基于确定时间间隔满足一个或多个条件,确定用户由于使用asr模型生成的话语的文本表示是话语的误认而说出随后话语。在那些实现方式中的一些实现方式中,确定时间间隔是否满足一个或多个条件包括确定时间间隔是否低于时间阈值。
70.在一些实现方式中,基于随后话语的随后文本表示确定用户是否由于使用asr模型生成的话语的文本表示是话语的误认而说出随后话语包括确定(1)话语的文本表示和(2)随后话语的文本表示之间的语音相似度度量。在一些实现方式中,该方法还包括确定语音相似度度量是否满足一个或多个其他条件。在一些实现方式中,该方法进一步包括基于确定语音相似度满足一个或多个其他条件,确定用户由于使用asr模型生成的话语的文本表示是话语的误认而说出随后话语。在那些实现方式的一些版本中,确定语音相似度度量
是否满足一个或多个其他条件包括确定语音相似度度量是否高于语音相似度的阈值。
71.在一些实现方式中,基于随后话语的随后文本表示,确定用户是否由于使用asr模型生成的话语的文本表示是话语的误认而说出随后话语包括识别用户先前说出的历史话语的历史文本表示以及用户在历史话语之后先前说出的历史随后话语的历史随后文本表示,其中,用户由于使用asr模型生成的历史话语的历史文本表示是历史话语的误认而说出历史随后话语。在一些实现方式中,该方法还包括确定随后话语的文本表示是否对应于历史话语的历史文本表示。在一些实现方式中,该方法还包括基于确定随后话语不对应于历史话语的历史文本表示确定用户由于使用asr模型生成的话语的文本表示是话语的误认而说出了随后话语。
72.在一些实现方式中,基于随后话语的随后文本表示,确定用户是否由于使用asr模型生成的话语的文本表示是话语的误认而说出随后话语包括确定值,该值指示用户已经历史地讲过该话语的至少一部分和该随后话语的至少对应部分的次数。在一些实现方式中,该方法还包括确定该值是否满足一个或多个进一步的条件。在一些实现方式中,该方法还包括基于确定值满足一个或多个进一步的条件,确定用户由于使用asr模型生成的话语的文本表示是话语的误认而说出随后话语。在那些实现方式的一些版本中,确定该值是否满足一个或多个进一步的条件包括确定该值是否高于阈值。
73.在一些实现方式中,基于(1)捕获话语的音频数据和(2)随后话语的文本表示训练asr模型以针对用户个性化asr模型包括使用asr模型处理捕获话语的音频数据,以生成话语的候选文本表示。在一些实现方式中,该方法还包括基于话语的候选文本表示和随后话语的文本表示来确定损失。在一些实现方式中,该方法进一步包括基于所确定的损失更新asr模型的一个或多个部分。
74.在一些实现方式中,基于(1)捕获话语的音频数据和(2)随后话语的文本表示训练asr模型以针对用户个性化asr模型包括识别对话会话,其中,客户端设备捕获口述话语和随后的口述话语。在一些实现方式中,该方法还包括确定与用户的用户简档、客户端设备和/或对话会话相对应的一个或多个上下文信号。在一些实现方式中,该方法还包括使用个性化的asr模型处理一个或多个上下文信号连同捕获话语的音频数据以生成话语的候选文本表示。在一些实现方式中,该方法还包括基于话语的候选文本表示和随后话语的文本表示来确定损失。在一些实现方式中,该方法还包括基于所确定的损失更新个性化的asr模型的一个或多个部分。在那些实现方式的一些版本中,确定对应于用户的用户简档、客户端设备和/或对话会话的一个或多个上下文信号包括基于短期先前查询历史确定一个或多个上下文信号,短期先前查询历史包括:(1)随后话语的主题,(2)在对话会话中随后话语与一个或多个先前话语之间的语音距离,和/或(3)在对话会话中随后话语与一个或多个先前话语之间的文本编辑距离。在那些实现方式的一些版本中,确定对应于用户的用户简档、客户端设备和/或对话会话的一个或多个上下文信号包括基于长期聚合历史确定一个或多个上下文信号,长期聚合历史包括(1)与用户简档对应的多个常用词和/或(2)与用户简档对应的附加信息。在那些实现方式的一些版本中,确定对应于用户的用户简档、客户端设备和/或对话会话的一个或多个上下文信号包括基于包括对话会话期间客户端设备的一个或多个状态的用户动作内容来确定一个或多个上下文信号。
75.在一些实现方式中,随后话语由用户紧接在话语之后说出。
76.在一些实现方式中,该方法还包括使用asr模型处理插入音频数据,该音频数据捕获在话语和随后话语之间插入的由用户说出的插入话语,以生成插入话语的插入文本表示。在一些实现方式中,该方法还包括基于随后话语的随后文本表示确定用户是否由于使用asr模型生成的插入话语的插入文本表示是插入话语的插入误认而说出随后话语。在一些实现方式中,响应于确定插入话语的插入文本表示是插入话语的插入误认并且用户由于插入误认而说出了随后话语,该方法还包括使用插入话语的文本表示和/或随后话语的文本表示对于用户个性化asr引擎。
77.此外,一些实现方式包括一个或多个计算设备的一个或多个处理器(例如,中央处理单元(cpu)、图形处理单元(gpu)和/或张量处理单元(tpu)),其中,一个或多个处理器可操作以执行存储在相关联的存储器中的指令,并且其中,指令被配置为导致本文描述的任何方法的执行。一些实现方式还包括一个或多个暂时性或非暂时性计算机可读存储介质,其存储可由一个或多个处理器执行以实施本文描述的任何方法的计算机指令。
再多了解一些

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

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

相关文献