生成事件输出的制作方法

文档序号:31950425发布日期:2022-10-26 10:02阅读:103来源:国知局
生成事件输出的制作方法
生成事件输出
1.相关申请数据的交叉引用
2.本技术要求2020年1月28日以vinaya nadig等人的名义提交的名称为“generating event output”的美国专利申请号16/775,247的优先权权益。


背景技术:

3.语音辨识系统已经发展到人类可使用他们的话音来与计算装置交互的程度。这种系统采用技术以基于各种品质的接收到的音频输入来识别人类用户说出的词语。语音辨识处理结合自然语言理解处理实现对计算装置的基于语音的用户控制,以基于用户的口头命令来执行任务。语音辨识处理和自然语言理解处理技术的组合在本文中被称为语音处理。语音处理还可涉及将用户的语音转换成文本数据,该文本数据然后可被提供到各种基于文本的软件应用程序。
4.语音处理可由计算机、手持装置、电话计算机系统、自助服务终端以及广泛多种其他装置使用,以改善人机交互。
附图说明
5.为了更完全地理解本公开,现在结合附图来参考以下描述。
6.图1示出了根据本公开的实施方案的被配置为基于用户输入来创建订阅的系统。
7.图2是根据本公开的实施方案的系统的部件的概念图。
8.图3是示出根据本公开的实施方案的如何执行自然语言理解处理的概念图。
9.图4是根据本公开的实施方案的用于配置订阅的系统部件的概念图。
10.图5是根据本公开的实施方案的用于执行订阅的系统部件的概念图。
11.图6是示出根据本公开的实施方案可如何存储表示创建的订阅的订阅数据的概念图。
12.图7a是根据本公开的实施方案的文本转语音部件的概念图。
13.图7b是根据本公开的实施方案的语音模型的概念图。
14.图8是概念上示出根据本公开的实施方案的装置的示例部件的框图。
15.图9是概念上示出根据本公开的实施方案的系统的示例部件的框图。
16.图10示出了用于与语音处理系统一起使用的计算机网络的示例。
具体实施方式
17.自动语音辨识(asr)是计算机科学、人工智能和语言学领域,其涉及将与语音相关联的音频数据转换为表示该语音的文本数据。类似地,自然语言理解是(nlu)是计算机科学、人工智能和语言学领域,其涉及使得计算机能够从包含自然语言的文本数据中得出含义。asr和nlu通常一起用作语音处理系统的部分。文本转语音(tts)是涉及将文本数据转换为音频数据的领域,该音频数据被合成为类似于人类语音。
18.当将来发生特定事件时,系统可接收请求系统执行特定动作的用户输入。因此,用
户可订阅服务,由此系统可检测事件并且可生成一些输出来向用户指示事件发生。输出的形式可由用户指定,但在某些情况下,系统可根据事件的类型、事件优先级、用户的当前活动和/或其他因素(诸如装置能力等)主动地确定输出的形式。例如,即使用户正在从事另一活动,系统也可确定某个事件调用来中断用户(诸如,正在装置上观看内容,使得系统中断内容回放以输出关于该事件的信息),而不同的事件可调用更潜在的通知,诸如,发送给用户的移动装置上的配套应用程序的消息,用户可能稍后会注意到该消息,而不是致使用户内容观看的中断。因此,系统可响应致使系统生成并存储订阅数据的此类用户请求而创建主动体验,以便稍后在事件发生时生成主动输出(诸如通知、提醒或其他输出,如下所说明)。例如,用户输入可以是“alexa,当我接收到来自joe的电子邮件时告诉我”,并且系统可创建并存储订阅数据,该订阅数据致使系统在接收到来自joe的电子邮件的事件发生时生成输出(例如,通知)并将其发送给用户。另一个用户输入可以是“当海鹰队比赛时告诉我”,并且系统可创建并存储订阅,该订阅致使系统在事件(海鹰队比赛)发生时生成输出并将其发送给用户。存储的订阅还可指示输出类型、哪些装置接收到输出、输出的再发生类型以及用于将输出呈现给用户的其他数据。替代地或另外,系统可使用默认设置或机器学习方法来确定此类信息,以做出关于此类项目的动态确定。
19.本公开的改进系统基于诸如输出装置的能力的条件来确定订阅的输出类型,基于事件时间是可确定的还是未知的来确定订阅的触发类型,和/或确定诸如在输出时的用户活动的其他信息。系统还确定订阅的再发生信息以确定订阅要执行多少次。(尽管术语订阅在本文中用于描述用户注册通知,但此类订阅可针对一次性单个事件或针对再发生事件。)使用该信息,系统创建订阅并向用户提供订阅已创建的确认。确认可包括与订阅有关的信息。例如,如果系统确定订阅的输出类型是音频输出,则在确认订阅的创建时,系统可输出“当您接收到来自joe的电子邮件时,我会通告”。当系统确定输出类型为推送通知时,系统可输出“当您接收到来自joe的电子邮件时,我会通知您”。
20.当事件的时间是可确定的,诸如电视节目或运动赛事的开始,那么系统可确定触发类型为提醒,并且在确认订阅的创建时,系统可输出“当节目开始时(或在节目开始之前),我会提醒您。”当事件的时间不是可预先确定的,诸如接收到电子邮件或准备好处方,那么系统可确定触发类型为通知,并且在确认订阅的创建时,系统可输出“当处方准备好时,我会通知您。”21.系统还可确认订阅的再发生。例如,如果用户输入是“每次我接收到来自joe的电子邮件时都告诉我”,那么系统可相应地创建订阅,并且可输出确认“每次您接收到来自joe的电子邮件时,我都会告诉您”。系统可确定触发事件是可发生一次还是可再发生。如果事件仅发生一次(例如,2020年夏季奥运会开幕式),则系统创建执行一次的订阅。如果事件可再发生,那么系统可确定用户的意图是创建一次性订阅还是再发生订阅。
22.图1示出了根据本公开的实施方案的被配置为针对用户输入来创建订阅的系统。虽然本文中的附图和讨论按特定次序说明了系统的某些操作步骤,但在不脱离本公开的意图的情况下,所描述的步骤可按不同的次序执行(以及移除或添加某些步骤)。如图1所示,系统可包括用户5本地的装置110,该装置通过一个或多个网络199与一个或多个系统120通信。
23.系统120接收(132)用户输入以创建订阅。用户输入可以是表示由用户5说出并由
装置110捕获的话语的音频数据。系统120可对音频数据执行自动语音辨识(asr)处理以确定对应于用户输入的文本数据。在一些实施方案中,用户输入可以是文本数据或另一种形式的数据。系统120可对文本数据/用户输入执行自然语言理解(nlu),以确定用户创建订阅以将来在发生事件的情况下接收输出的意图。例如,用户输入可以能是“当我接收到来自joe的电子邮件时告诉我”、“当海鹰队比赛时告诉我”、“每次下雨时提醒我关窗”等。
24.系统120确定(134)对应于订阅的触发数据。触发数据表示致使生成输出数据的触发事件。系统120确定(136)对应于订阅的输出数据,其中输出数据表示当触发事件发生时要执行的动作。系统120可对表示用户输入的文本数据执行自然语言理解(nlu)处理,以确定对应于用户输入的意图。系统120可确定用户的意图是创建订阅以接收数据或致使系统在将来响应于事件的发生而执行动作。系统120可使用nlu和文本数据来确定用于执行动作的触发数据。例如,如果用户输入是“当我接收到电子邮件时通知我”,则系统120使用nlu可确定意图是在将来接收通知,指示用于接收通知的触发的时隙是在用户接收到电子邮件时,并且当用户接收到电子邮件时要执行的动作是向用户发送通知。作为另一个示例,用户输入可以是“当我到家时打开灯”,并且系统120使用nlu可确定意图是在将来执行智能家居动作,触发时隙是在用户到家时,并且要执行的动作是打开灯。作为另一个示例,用户输入可以是“当我的处方准备好时告诉我”,并且系统120使用nlu可确定意图是在将来接收通知,触发是在用户的处方准备好时,并且当处方准备好时要执行的动作是向用户发送通知。
25.系统120确定(138)对应于触发数据的触发类型。触发类型可基于由触发数据和与触发数据和/或用户简档相关联的其他数据表示的触发事件来表示订阅的优先级指示。优先级数据可以是高、中高、中、中低、低和其他变体的优先级指示符。在一些实施方案中,触发类型可以是表示订阅的优先级数据的数值,其中该数值可在1和5之间。在一些实施方案中,系统120基于对应于触发事件的类别来确定触发类型。例如,触发事件“接收到电子邮件”可对应于类别“信件/电子邮件”。在其他示例中,触发事件“处方已准备好”可对应于类别“医疗/健康”,触发事件“足球比赛开始”可对应于类别“事件/运动”,触发事件“当下雨时”可对应于类别“天气状况”,触发事件“飓风警报”可对应于类别“恶劣天气状况”等。每个类别可被指派系统优先级指示,例如,信件/电子邮件类别可被指派为低,医疗/健康可被指派为高,事件/运动可被指派为低,天气状况可被指派为中,恶劣天气状况可被指派为高等。使用系统优先级数据,系统120可确定订阅的触发类型。例如,如果用户输入是“当我接收到来自joe的电子邮件时告诉我”,则系统120可基于对应的电子邮件/信件类别具有低优先级指示而将触发类型确定为低。在另一个示例中,如果用户输入是“当有恶劣天气警报时告诉我”,则系统120可基于对应的恶劣天气状况类别具有高优先级指示而将触发类型确定为高。
26.在一些实施方案中,使用与用户5相关联的用户输入数据和/或用户简档数据,系统120可确定类别和/或触发事件的用户特定优先级数据。系统120可基于用户偏好数据、用户活动或其他用户简档数据来调整系统优先级指示,以确定用户特定优先级指示。例如,对应于用户5的用户简档数据可包括与特定触发事件/类别的优先级指示有关的用户偏好,例如,用户简档数据可指示“处方已准备好”事件具有中优先级。在另一个示例中,用户简档数据可指示“恶劣天气状况”事件具有中优先级,然而,基于系统优先级指示为高并且基于恶劣天气警报影响用户的位置,系统120可将特定恶劣天气警报触发事件的优先级数据确定
为高。在一些实施方案中,系统120可使用对应于其他用户的用户简档数据来确定触发类型。例如,如果其他用户的用户简档数据指示信件/电子邮件类别具有高优先级的高偏好,那么系统120可将触发事件“接收到电子邮件”的触发类型确定为高。
27.系统120可使用从用户输入确定的数据来确定触发类型。用户输入可包括优先级的指示或可包括可从中得出优先级的其他数据,例如,“当我接收到来自joe的电子邮件时你要告诉我,这很重要”或“alexa,我的药用完了。当我的处方准备好时告诉我”,并且在这两种情况下,系统120都可将触发类型确定为高。在语音输入的情况下,系统120可在提供用户输入时确定表示用户的情绪/情感的情绪数据,并且可使用情绪数据来确定触发类型。例如,用户输入可以是“当我接收到来自joe的电子邮件时告诉我!”,系统120可使用指示兴奋或迫切的音频数据来确定情绪数据,并且系统120可将触发类型确定为高。
28.在一些实施方案中,触发类型可基于触发事件的时间在事件发生之前是已知的、可确定的还是预设的。例如,运动赛事或电视节目开始的时间是已知的或可在运动赛事或电视节目开始之前确定。相反,在接收到电子邮件之前无法确定用户可接收到电子邮件的时间。对于时间在事件发生之前是可确定/已知的触发事件,系统120将触发类型确定为提醒操作。对于时间在事件发生之前无法确定的触发事件,系统120可将触发类型确定为通知操作。
29.系统120使用触发类型和输出装置的装置能力来确定(140)订阅的输出类型。在一些实施方案中,用户输入可指定订阅的输出装置。例如,用户输入可以是“当海鹰队比赛时在我的电话上提醒我”,并且系统120可确定输出装置是被指定为“我的电话”、“个人电话”或在其他方面与用户5的用户简档相关联的智能电话装置的装置。在一些实施方案中,当用户输入未指定订阅的输出装置时,系统120将接收到用户输入的装置(例如,装置110)确定为输出装置。
30.在一些实施方案中,用户输入可不指定订阅的输出形式。例如,用户输入“当我接收到电子邮件时告诉我”并未指定用户是想要音频输出还是推送通知或另一种类型的输出。在此类情况下,系统120使用触发类型来确定输出类型。输出类型可指示将使用哪种形式的输出(例如,通告、推送通知、视觉通知、音频通知等)来向用户指示发生了触发事件。输出类型还可指示呈现输出的时序(例如,一旦事件发生就用输出中断用户,等到用户与系统交互等等)。输出类型还可指示与用户简档相关联的多少装置将接收输出。
31.如果触发数据指示触发事件的高优先级,则系统120可确定在事件发生时例如通过生成合成语音来通告。如果触发类型为中,则系统120可将输出类型确定为通知,包括推送通知、视觉通知(例如,在输出装置的屏幕上显示文本和/或图形元素,致使输出装置的灯打开、闪光或闪烁等)、音频通知(例如,唧唧声或其他声音)或其他形式的通知,并且可致使多个装置输出通知。如果优先级为低,则系统120可确定输出类型是通知,并且可致使与用户简档相关联的一个装置输出通知。
32.如果触发类型为高,则输出类型可将输出的时序指示为一旦事件发生就呈现该输出,并且可致使一个或多个装置打开以呈现输出,即使该装置先前是关闭的。在一些情况下,系统120可中断用户与输出装置的交互以呈现输出。例如,如果输出装置正在播放音乐,并且触发类型为高的事件发生,则系统120可致使输出装置暂停音乐并输出“您所在地区有恶劣天气警报。”如果触发类型为中,则输出类型可指示输出的时序,使得在用户与系统交
互时在事件发生之后呈现该输出,并且该输出可能不会致使任何关闭的装置打开。例如,用户可打开或激活输出装置,并且系统120可在那时呈现输出。如果触发类型为低,则输出类型可指示输出的时序,使得在用户请求接收任何通知/提醒/或其他输出时呈现该输出。例如,电子邮件接收事件的触发类型可能为低,当用户接收到电子邮件时,系统120可生成输出数据,但不将其发送到输出装置以进行呈现。用户可说出或以其他方式提供指示接收通知的意图的输入,例如,“alexa,我今天的通知是什么?”,此时系统120可致使输出装置呈现输出“您已接收到电子邮件”。
33.如果触发类型为高,则系统120可确定输出类型,使得其发送到与用户简档相关联的多个装置。如果触发类型为低,则系统120可确定输出类型,使得其发送到与用户简档相关联的一个装置。
34.系统120可确定输出装置的输出能力以确定订阅的输出类型。系统120可向输出合成语音的能力指派较高偏好,并且如果输出装置能够输出合成语音,则将输出类型设置为包括tts输出的音频输出。如果输出装置不能输出合成语音,则系统120可确定输出装置是否能够接收推送通知,并将输出类型设置为推送通知。输出类型可包括音频输出、tts输出、推送通知、视觉通知或装置可能能够呈现的其他形式的输出。
35.系统120确定(142)用于执行订阅的频率数据。频率数据指示当事件发生时用户想要接收输出的次数。例如,用户输入可以是“每次递送包裹时告诉我”,并且系统120将频率数据确定为“每次”。作为另一个示例,用户输入可以是“接下来两次我接收到电子邮件时告诉我”,并且系统120将频率数据确定为“两次”。在一些情况下,用户输入可能未指定用户想要接收事件发生的输出的次数。系统120可确定触发事件是发生一次、发生有限次还是发生无限次的事件类型。如果触发事件发生一次(例如,2020年夏季奥运会开幕式),则系统120将频率数据确定为“一次”。如果触发事件发生多次,则系统120可将频率数据确定为“无限”,并且可在每次事件发生时生成输出,直到用户禁用或删除订阅。在一些实施方案中,系统120可向用户询问关于当事件发生时用户想要接收多少次输出的进一步信息,并且使用用户的响应来确定频率数据。
36.系统120存储(144)订阅数据,包括触发数据、输出数据、输出类型、触发类型和频率数据。订阅数据可包括其他信息,诸如用户简档标识符、输出装置标识符和其他数据。系统120可使用存储的订阅数据来确定何时触发输出以及如何将输出呈现给用户。
37.该系统可使用如图2所示的各种部件进行操作。各种部件可位于相同或不同的物理装置上。各种装置之间的通信可直接进行或者通过网络199进行。
38.音频捕获部件(诸如装置110的麦克风或麦克风阵列)捕获音频11。装置110处理表示音频11的音频数据,以确定是否检测到语音。装置110可使用各种技术来确定音频数据是否包括语音。在一些示例中,装置110可应用话音活动检测(vad)技术。这样的技术可基于音频数据的各种定量方面来确定音频数据中是否存在语音,所述定量方面诸如音频数据的一个或多个帧之间的频谱斜率;一个或多个频谱带中的音频数据的能级;一个或多个频谱带中的音频数据的信噪比;或其他定量方面。在其他示例中,装置110可实现被配置为将语音与背景噪声区分开的有限分类器。可通过诸如线性分类器、支持向量机和决策树的技术来实现分类器。在另外的其他示例中,装置110可应用隐马尔可夫模型(hmm)或高斯混合模型(gmm)技术,以将音频数据与存储装置中的一个或多个声学模型进行比较,所述声学模型可
包括对应于语音、噪声(例如,环境噪声或背景噪声)或静音的模型。还可使用另外的其他技术来确定音频数据中是否存在语音。
39.一旦在表示音频11的音频数据中检测到语音,装置110就可使用唤醒词检测部件220来执行唤醒词检测,以确定用户何时打算说出对装置110的输入。示例唤醒词是“alexa”。
40.通常在不执行语言分析、文本分析或语义分析的情况下执行唤醒词检测。相反,分析表示音频11的音频数据以确定音频数据的具体特性是否与预先配置的声学波形、音频签名或其他数据相匹配,从而确定音频数据与对应于唤醒词的存储的音频数据是否“匹配”。
41.因此,唤醒词检测部件220可将音频数据与存储的模型或数据进行比较以检测唤醒词。一种用于唤醒词检测的方法应用通用大词汇量连续语音辨识(lvcsr)系统来解码音频信号,其中在得到的网格或混淆网络中执行唤醒词搜索。lvcsr解码可能要求相对高的计算资源。另一种用于唤醒词检测的方法分别为每个唤醒词和非唤醒词语音信号构建hmm。非唤醒词语音包括其他口头词、背景噪声等。可构建一个或多个hmm来对非唤醒词语音特性进行建模,其被称为填充模型。使用维特比解码来搜索解码图中的最佳路径,并且对解码输出进行进一步处理以作出关于唤醒词存在的判定。该方法可通过合并混合dnn-hmm解码框架而扩展为包括判别信息。在另一个示例中,唤醒词检测部件220可直接构建在深度神经网络(dnn)/递归神经网络(rnn)结构上,而不涉及hmm。这种架构可通过将帧堆叠在dnn的上下文窗口内或使用rnn来用上下文信息估计唤醒词的后验。将后继的后验阈值调整或平滑应用于判定。也可使用其他用于唤醒词检测的技术,诸如本领域已知的那些技术。
42.一旦检测到唤醒词,装置110就可“唤醒”并开始向系统120传输表示音频11的音频数据211。音频数据211可包括对应于唤醒词的数据,或者在将音频数据211发送到系统120之前,音频的对应于唤醒词的部分可由装置110移除。
43.在被系统120接收后,音频数据211可被发送到协调器部件230。协调器部件230可包括存储器和逻辑,该存储器和逻辑使得协调器部件230能够向系统的各种部件传输各种数据片段和各种形式的数据以及执行如本文所述的其他操作。
44.协调器部件230将输入音频数据211发送到asr部件250,该asr部件将输入音频数据211转录成表示一个或多个假设的输入文本数据,该一个或多个假设表示输入音频数据211中包含的语音。因此,由asr部件250输出的文本数据可表示一个或多于一个(例如,呈n最佳列表的形式)asr假设,该asr假设表示音频数据211中所表示的语音。asr部件250基于音频数据211与预先建立的语言模型之间的相似性来解释音频数据211中的语音。例如,asr部件250可将音频数据211与声音的模型(例如,子词单元,诸如音素等)和声音序列进行比较,以识别与音频数据211中表示的语音的声音序列相匹配的词语。asr部件250输出表示一个或多个asr假设的文本数据。asr部件250还可输出一个或多个asr假设的相应得分。例如,可在asr部件250的语言模型操作之后输出这样的文本数据和得分。因此,由asr部件250输出的文本数据可包括得分最高的asr假设,或者可包括asr假设的n最佳列表。n最佳列表可另外地包括与其中表示的每个asr假设相关联的相应得分。每个得分可指示被执行来生成与该得分相关联的asr假设的asr处理的置信度。下面包括asr处理的更多细节。
45.装置110可向系统120发送文本数据213。在系统120接收到后,可将文本数据213发送到协调器部件230,该协调器部件可将文本数据213发送到nlu部件260。文本数据213可从
用户5经由装置110上的应用程序/app提供的输入导出,其中用户5可使用应用程序/app来创建订阅(如结合图1所述)。例如,文本数据213可以是“当我接收到来自___的电子邮件时通知我”或“当我的___处方准备好在药房取药时告诉我”。
46.nlu部件260接收一个或多个asr假设(即,文本数据)并尝试对其中表示的短语或语句进行语义解释。也就是说,nlu部件260基于文本数据中表示的词语来确定与文本数据中表示的短语或语句相关联的一个或多个含义。nlu部件260确定表示用户期望执行的动作的意图以及允许装置(例如,装置110、系统120、技能290、技能系统225等)执行该意图的文本数据的片段。例如,如果文本数据对应于“播放adele的音乐”,则nlu部件260可确定系统120输出音乐的意图并且可将“adele”识别为艺术家。又例如,如果文本数据对应于“天气怎么样”,则nlu部件260可确定系统120输出与装置110的地理位置相关联的天气信息的意图。在另一个示例中,如果文本数据对应于“关闭灯”,则nlu部件260可确定系统120关闭与装置110或用户5相关联的灯的意图。
47.nlu部件260可将nlu结果数据(其可包括标记的文本数据、意图的指示符等)发送到协调器部件230。协调器部件230可将nlu结果发送到技能290。如果nlu结果数据包括单个nlu假设,则协调器部件230可将nlu结果数据发送到与nlu假设相关联的技能290。如果nlu结果数据包括nlu假设的n最佳列表,则协调器部件230可将得分最高的nlu假设发送到与得分最高的nlu假设相关联的技能290。
[0048]“技能”可以是在系统120上运行的软件,其类似于在传统计算装置上运行的软件应用程序。就是说,技能290可使得系统120能够执行特定功能,以便提供数据或产生一些其他请求的输出。系统120可被配置有多于一个技能290。例如,天气服务技能可使得系统120能够提供天气信息,汽车服务技能可使得系统120能够相对于出租车或乘车共享服务来预订行程,餐馆技能可使得系统120能够相对于餐馆的在线订购系统来订购比萨等。技能290可在系统120与其他装置(诸如装置110)之间协同操作以便完成某些功能。对技能290的输入可来自语音处理交互或通过其他交互或输入源。技能部件290可包括可专用于特定技能290或在不同的技能290之间共享的硬件、软件、固件等。
[0049]
除了由系统120实现之外或替代地,技能290可由技能系统225实现。这样可使得技能系统225能够执行特定功能,以便提供数据或执行用户请求的一些其他动作。
[0050]
技能的类型包括家庭自动化技能(例如,使得用户能够控制诸如灯、门锁、相机、恒温器等家庭装置的技能)、娱乐装置技能(例如,使得用户能够控制诸如智能电视的娱乐装置的技能)、视频技能、快报技能以及不与任何预先配置的技能类型关联的自定义技能。
[0051]
系统120可被配置有专用于与多于一个技能系统225交互的单个技能290。
[0052]
除非另有明确说明,否则对技能、技能装置或技能部件的提及可包括由系统120操作的技能290和/或由技能系统225操作的技能。此外,可使用许多不同的术语(诸如动作、机器人程序、app等)来提及本文中被描述为技能的功能。
[0053]
系统120可包括tts部件280,该tts部件使用一种或多种不同的方法从文本数据生成音频数据(例如,合成语音)。输入到tts部件280的文本数据可来自技能290、协调器部件230或系统120的另一个部件。
[0054]
在一种被称为单元选择的合成方法中,tts部件280将文本数据与记录的语音的数据库进行匹配。tts部件280选择记录的语音的匹配单元,并将这些单元连结在一起以形成
音频数据。在另一种被称为参数合成的合成方法中,tts部件280改变诸如频率、音量和噪声的参数,以创建包括人工语音波形的音频数据。参数合成使用计算机化话音发生器(有时被称为声码器)。
[0055]
系统120可包括简档存储装置270。简档存储装置270a可包括和与系统120交互的个人用户、用户群组、装置等有关的各种信息。“简档”是指与用户、装置等相关联的一组数据。简档的数据可包括特定于用户、装置等的偏好;装置的输入和输出能力;互联网连接信息;用户书目信息;订阅信息;以及其他信息。
[0056]
简档存储装置270可包括一个或多个用户简档,其中每个用户简档与不同的用户标识符相关联。每个用户简档可包括各种用户识别信息。每个用户简档还可包括用户的偏好和/或表示向用户注册的一个或多个装置的一个或多个装置标识符。
[0057]
简档存储装置270可包括一个或多个群组简档。每个群组简档可与不同的群组标识符相关联。群组简档可特定于用户群组。也就是说,群组简档可与两个或更多个个人用户简档相关联。例如,群组简档可以是和与单个家庭的多个用户相关联的用户简档相关联的家庭简档。群组简档可包括由与其相关联的所有用户简档共享的偏好。与群组简档相关联的每个用户简档可另外地包括特定于与其相关联的用户的偏好。也就是说,每个用户简档可包括相对于与同一群组简档相关联的一个或多个其他用户简档来说独特的偏好。用户简档可以是独立简档,或者可与群组简档相关联。群组简档可包括表示与群组简档相关联的一个或多个装置的一个或多个装置简档。
[0058]
简档存储装置270可包括一个或多个装置简档。每个装置简档可与不同的装置标识符相关联。每个装置简档可包括各种装置识别信息。每个装置简档还可包括表示与装置简档相关联的一个或多个用户简档的一个或多个用户标识符。例如,家庭装置的简档可包括家庭用户的用户标识符。
[0059]
订阅存储装置455可包括与为由相应的用户简档标识的用户创建的订阅有关的数据。例如,订阅存储装置455可包括触发信息(指示何时要执行主动动作)和动作信息(指示要执行的动作)。订阅存储装置455还可包括指示输出类型、触发类型和再发生类型的信息。
[0060]
该系统可被配置为合并用户权限,并且仅在被用户批准的情况下才可执行本文公开的活动。这样,本文描述的系统、装置、部件和技术通常将被配置为在适当的情况下限制处理,并且仅以确保遵守所有适当的法律、法规、标准等的方式来处理用户信息。可在地理基础上实现所述系统和技术,以确保遵守系统的部件和/或用户所在的各个管辖区和实体中的法律。
[0061]
asr引擎258可返回对应于由asr引擎258确定的前n个路径的n最佳路径列表以及其相应的辨识得分。给定列表和相关联的辨识得分,在接收n最佳列表的asr部件250的内部或外部的应用程序(诸如程序或部件然后可对列表执行进一步的操作或分析。例如,n最佳列表可用于校正错误以及训练asr模块250的各种选项和处理条件。asr引擎258可将实际正确话语与最佳结果以及与n最佳列表上的其他结果进行比较以确定为何不正确的辨识接收到某些辨识得分。asr引擎258可校正它的方法(并且可更新asr模型252中的信息)以在将来的处理尝试中减少不正确方法的辨识得分。
[0062]
系统120还可包括订阅管理器275,该订阅管理器可处理用户输入以为用户创建订阅,从而将对应的触发数据和动作数据存储在订阅存储装置455中,如关于图4所描述。订阅
管理器275可处理来自技能290的事件触发以确定是否要执行订阅的动作,并且可更新订阅的再发生信息,如关于图5所描述。
[0063]
一个或多个内容系统226可与系统120通信并且可提供事件数据227。事件数据可表示发生的事件。内容系统226可涉及提供不同类型的数据(包括指示特定事件的发生的事件数据)的各种系统。例如,内容系统226可与天气状况、与运动有关的信息、电子邮件管理系统、处方/医疗数据系统、包裹递送系统等相关联并且可提供与它们有关的数据。例如,事件数据227可表示发生的天气状况、发生的与运动有关的事件、电子邮件的接收、处方已准备好的指示、包裹已递送或将要递送的指示等。如关于图5所描述,订阅管理器275可使用事件数据227来确定触发了根据订阅的输出。
[0064]
在一些实施方案中,系统120可监控内容数据库、知识数据库、互联网上可用的信息和其他信息源以确定事件的发生、确定内容/信息的变化以及确定新内容/信息的可用性。当系统120检测到事件的发生、内容/信息的变化或新内容/信息的可用性时,系统120可生成指示这些的事件数据。系统120可使用关键字来监控各种信息源以确定对应于关键字的事件的发生,确定对应于关键字的内容/信息的变化,并且确定对应于关键字的新内容/信息的可用性。使用事件数据,系统120可确定根据订阅触发了输出(诸如,通告、推送通知、视觉通知、可听通知或其他类型的输出)。
[0065]
图3示出了如何对文本数据执行nlu处理。一般地,nlu部件260尝试对其中输入的文本数据进行语义解释。就是说,nlu部件260基于其中表示的各个单词和/或短语来确定文本数据背后的含义。nlu部件260解释文本数据以导出用户的意图以及允许装置(例如,装置110、系统120、技能系统225等)完成该动作的文本数据片段。
[0066]
nlu部件260可处理包括若干asr假设的文本数据。nlu部件260可处理在其中输入的所有(或一部分)asr假设。即使asr部件250可输出多个asr假设,nlu部件260也可被配置为仅针对得分最高的asr假设进行处理。
[0067]
nlu部件260可包括一个或多个辨识器363。每个辨识器363可与不同的领域(例如,智能家居、视频、音乐、天气、自定义等)相关联。每个辨识器363可针对输入到nlu部件260的文本数据进行处理。每个辨识器363可至少部分地与nlu部件260的其他辨识器363并行地操作。
[0068]
每个辨识器363可包括命名实体辨识(ner)部件362。ner部件362尝试识别可用于相对于其中输入的文本数据来解释含义的语法和词汇信息。ner部件362识别对应于可适用于按领域执行的处理的命名实体的文本数据部分。ner部件362(或nlu部件260的其他部件)还可确定词语是否指代未在文本数据中明确提及其身份的实体,例如“他”、“她”、“它”或其他回指、外指等。
[0069]
每个辨识器363并且更具体地每个ner部件362可与特定语法模型和/或数据库373、一组特定的意图/动作374和特定的个性化词典386相关联。每个地名词典384可包括与特定用户和/或装置110相关联的技能索引词汇信息。例如,地名词典a(384a)包括技能索引词汇信息386aa至386an。例如,用户的音乐技能词汇信息可包括专辑标题、艺术家姓名和歌曲名称,而用户的联系人列表技能词汇信息可包括联系人的姓名。由于每个用户的音乐收藏和联系人列表可能不同,因此这种个性化信息提高了实体解析。
[0070]
ner部件362应用语法模型376和词汇信息386以确定文本数据中的一个或多个实
体的提及。以此方式,ner部件362识别可用于稍后处理的“时隙”(对应于文本数据中的一个或多个特定词语)。ner部件362还可用类型(例如,名词、地点、城市、艺术家姓名、歌曲名称、发件人姓名、收件人姓名、实体名称、运动队名称、运动赛事、天气状况、处方名称等)来标记每个时隙。
[0071]
每个语法模型376包括在关于语法模型376所涉及的特定领域的语音中常见的实体(即,名词)的名称,而词汇信息386是针对产生用户输入的用户和/或装置110进行个性化。例如,与购物领域相关联的语法模型376可包括人们在讨论购物时常用的词语的数据库。
[0072]
每个辨识器363还可包括意图分类(ic)部件364。ic部件364解析文本数据以确定意图。意图表示用户希望执行的动作。ic部件364可与链接到意图的词语的数据库374通信。例如,音乐意图数据库可将诸如“安静”、“音量关闭”和“静音”的词语和短语链接到《mute》意图。例如,订阅意图数据库可将诸如“当时告诉我”、“通知我”和“让我知道”的词语和短语链接到《tellmewhen》意图。ic部件364通过将文本数据中的词语和短语与意图数据库374中的词语和短语进行比较来识别潜在意图。
[0073]
特定ic部件364可识别的意图链接到具有要填充的“时隙”的领域特定语法框架376。语法框架376的每个时隙对应于系统认为对应于实体的文本数据的一部分。例如,对应于《playmusic》意图的语法框架376可对应于诸如“播放{专辑名称}”、“播放{歌曲名称}”、“播放{艺术家姓名}的{歌曲名称}”等句子结构。例如,对应于《tellmewhen》意图的语法框架376可对应于句子结构,诸如“提醒我{触发事件}”、“通知我{触发事件}”、“通过{动作}来提醒我{触发事件}”、“通过{动作}来通知我{触发事件}”等句子结构。然而,为了使解析更灵活,语法框架376可不被构造为句子,而是基于将时隙与语法标签相关联。
[0074]
例如,ner部件362可在辨识文本数据中的命名实体之前基于语法规则和/或模型来解析文本数据以将词语识别为主语、宾语、动词、介词等。ic部件364(例如,由与ner部件362相同的辨识器363实现)可使用所识别的动词来识别意图。ner部件362然后可确定与所识别的意图相关联的语法模型376。例如,对应于《playmusic》的意图的语法模型376可指定适用于播放识别的“宾语”的时隙列表和任何宾语修饰语(例如,介词短语),诸如{艺术家姓名}、{专辑名称}、{歌曲名称}等。例如,对应于《tellmewhen》的意图的语法模型376可指定适用于在识别的“事件”发生时(例如,接收到电子邮件、准备好处方、特定天气状况等)通知用户的时隙列表和任何事件修饰语,诸如{电子邮件发件人}、{处方名称}、{下雨}等。ner部件362然后可搜索词典386中的对应字段,从而尝试将ner部件362先前标记为语法宾语或宾语修饰语的文本数据中的词语和短语与在词典386中识别的那些匹配。
[0075]
ner部件362可执行语义标记,该语义标记是根据词语的类型/语义含义对词语或词语的组合进行标记。ner部件362可使用启发式语法规则来解析文本数据,或者可使用诸如隐藏马尔可夫模型、最大熵模型、对数线性模型、条件随机场(crf)等技术来构建模型。例如,由音乐辨识器实现的ner部件362可将对应于“播放滚石乐队的mother’s little helper”的文本数据解析并标记为{动词}:“播放”、{宾语}:“mother’s little helper”、{宾语介词}:“的(by)”以及{宾语修饰语}:“滚石乐队”。ner部件362将“播放”识别为动词,ic部件364可确定其对应于《playmusic》意图。例如,由订阅辨识器实现的ner部件362可将对应于“当我接收到来自joe的电子邮件时通知我”的文本数据解析并标记为{动词}:“通
知”、{宾语}:“接收到电子邮件”、{宾语介词}:“来自”以及{宾语修饰语}:“joe”。ner部件362将“通知”识别为动词,ic部件364可确定其对应于《tellmewhen》意图。在这个阶段,还没有确定“mother’s little helper”和“滚石乐队”的含义,但基于语法规则和模型,ner部件362已经确定这些短语的文本与文本数据中表示的用户输入的语法宾语(即,实体)有关。
[0076]
然后使用链接到意图的框架来确定应搜索哪些数据库字段来确定这些短语的含义,诸如搜索用户的地名词典384以寻找与框架时隙的相似处。例如,《playmusic》意图的框架可指示尝试基于{艺术家姓名}、{专辑名称}和{歌曲名称}来解析识别的宾语,并且相同意图的另一个框架可指示尝试基于{艺术家姓名}来解析宾语修饰语,并且基于链接到已识别的{艺术家姓名}的{专辑名称}和{歌曲名称}来解析宾语。如果对地名词典384的搜索没有使用地名词典信息解析出时隙/字段,则ner部件362可搜索通用词的数据库(例如,在知识库372中)。例如,如果文本数据包括“播放滚石乐队的歌曲”,则在未能通过“滚石乐队”确定被称为“歌曲”的专辑名称或歌曲名称之后,ner部件362可在数据库中搜索词语“歌曲”。在替代方案中,可在地名词典信息之前检查通用词,或者可尝试这两者,从而可能产生两个不同的结果。
[0077]
ner部件362可标记文本数据以赋予其含义。例如,ner部件362可将“播放滚石乐队的mother’s little helper”标记为:{领域}音乐、{意图}《playmusic》、{艺术家姓名}滚石乐队、{媒体类型}歌曲以及{歌名标题}mother’s little helper。又例如,ner部件362可将“播放滚石乐队的歌曲”标记为:{领域}音乐、{意图}《playmusic》、{艺术家姓名}滚石乐队以及{媒体类型}歌曲。例如,ner部件362可将“当我接收到来自joe的电子邮件时通知我”标记为:{领域}订阅、{意图}《tellmewhen》、{触发事件}接收到电子邮件、{动作}通知、{发件人姓名}“joe”。
[0078]
图4是根据本公开的实施方案的用于配置订阅的系统部件的概念图。系统120可包括订阅管理器275、订阅配置部件410、触发类型部件420、装置兼容性部件425、递送偏好部件430和再发生管理器435。订阅管理器275可接收创建订阅的请求。如本文所述,订阅是指当特定事件发生时由系统执行动作(例如,在将来接收到输出/数据/信息、致使装置在将来执行操作等)的请求。用户(诸如与装置110交互的用户5、与系统120交互以创建/管理技能和应用程序的开发者或技能/体验创建者,或其他类型的用户)可请求系统120创建订阅。例如,用户可创建订阅以当事件发生时(例如,当接收到电子邮件时、当递送包裹时、当处方准备好时、当播放电视节目正在开始时、当人在家时等)接收通知、提醒或另一种类型的输出。作为另一个示例,用户可创建订阅以在事件发生时执行动作,诸如,当有人到家时打开灯、在特定时间调整家中的温度等。
[0079]
系统120可接收用户输入数据402,该用户输入数据包括用于创建订阅的信息(例如,指示何时执行动作的触发数据、指示在触发时要执行的输出的动作/输出数据等)。系统120可经由装置110从用户5接收用户输入数据402作为语音输入/话语、文本输入、图形用户界面输入和/或其他形式的输入。系统120可从技能/应用程序开发者或管理员接收用户输入数据402以创建用于诸如用户5的最终用户的订阅。系统120可确定(使用如上所述nlu)用户输入与创建或管理订阅有关,并且可将用户输入数据402发送到订阅管理器275以供进一步处理。订阅管理器275可确定用户输入数据402与创建订阅有关,并且可将用户输入数据402发送到订阅配置部件410。
[0080]
在一些实施方案中,用户输入数据402可包括表示创建订阅的用户请求的文本数据。在一些实施方案中,用户输入数据402可包括对应于创建订阅的用户请求的nlu数据/假设。在一些实施方案中,用户输入数据402可包括触发信息、输出信息、装置信息、用户简档信息、用户偏好和其他数据。
[0081]
订阅配置部件410可处理用户输入数据402以创建订阅以在将来发生特定事件时执行动作。订阅配置部件410可根据用户输入数据402来确定表示状态改变或事件发生的触发数据,诸如“接收到电子邮件”、“医疗处方已准备好”、“海鹰队正在比赛”等。订阅配置部件410可根据用户输入数据402来确定输出数据,该输出数据表示在根据触发数据触发时要执行的动作或要生成的输出。输出数据可指示要生成通知、要操作/控制特定装置等。订阅配置部件410可根据用户输入数据402来确定表示与订阅有关的其他信息的元数据,诸如触发类型、输出类型、递送偏好信息、频率/再发生数据等。
[0082]
触发类型部件420可处理触发数据以确定对应的触发类型。触发类型可基于由触发数据和与触发数据和/或用户简档相关联的其他数据表示的触发事件来表示订阅的优先级指示。触发类型可以是高、中高、中、中低、低和其他变体的优先级指示符。触发类型可以是高、中高、中、中低、低和其他变体的优先级指示符。在一些实施方案中,触发类型可以是表示订阅的优先级的数值,其中该数值可在1和5之间。触发类型部件420可基于触发事件的类别来确定触发类型。例如,触发事件“接收到电子邮件”可对应于类别“信件/电子邮件”。在其他示例中,触发事件“处方已准备好”可对应于类别“医疗/健康”,触发事件“足球比赛开始”可对应于类别“事件/运动”,触发事件“当下雨时”可对应于类别“天气状况”,触发事件“飓风警报”可对应于类别“恶劣天气状况”等。每个类别可被指派系统优先级指示,例如,信件/电子邮件类别可被指派为低,医疗/健康可被指派为高,事件/运动可被指派为低,天气状况可被指派为中,恶劣天气状况可被指派为高等。
[0083]
在一些实施方案中,触发类型部件420可使用用户输入和/或用户简档数据来确定触发类型。对应于用户5的用户简档数据可包括与特定触发事件/类别的优先级指示有关的用户偏好,例如,用户简档数据可指示“处方已准备好”事件具有中优先级。在另一个示例中,用户简档数据可指示“恶劣天气状况”事件具有中优先级。在一些实施方案中,触发类型部件420可使用对应于其他用户的用户简档数据来确定触发类型。触发类型部件420可使用从用户输入确定的数据来确定触发类型。用户输入可包括优先级的指示或可包括可从中得出优先级的其他数据,例如,“当我接收到来自joe的电子邮件时你要告诉我,这很重要”或“alexa,我的药用完了。当我的处方准备好时告诉我”,并且在这两种情况下,触发类型部件420都可将触发类型确定为高。
[0084]
在一些实施方案中,触发类型指示触发事件的时间是已知的还是未知的。在一些情况下,事件发生的时间是已知的,因为事件发生在可确定的预设时间,例如,足球赛何时开始、电视节目何时播出、天气状况何时发生等。在这种情况下,触发类型部件420确定对应于订阅的触发类型是提醒操作。触发类型部件420可将触发类型确定为提醒操作,即使事件时间尚未公布或尚未知,但可在事件发生之前确定。
[0085]
在其他情况下,事件发生的时间是未知的或无法在事件发生之前确定,例如,何时接收到电子邮件、医疗处方何时准备好、何时递送包裹等。在这种情况下,触发类型部件420确定对应于订阅的触发类型是通知操作。
[0086]
在一些实施方案中,触发器类型部件420可通过使用指示特定触发的触发类型的存储的数据来确定触发的触发类型。例如,存储的数据可指示与广播事件有关的触发对应于提醒操作,而与从技能或其他系统接收到信息有关的触发对应于通知操作。
[0087]
装置兼容性部件425可基于触发类型和在事件发生时将执行动作或呈现输出的装置的输出能力来确定订阅的输出类型。在一些实施方案中,用户输入数据402可指定用于订阅的输出装置(例如,“当我的处方准备好时在我的移动电话上通知我”或“当我到家时打开走廊灯”)。在一些实施方案中,用户输入数据402可能未指定用于订阅的输出装置(例如,“当海鹰队比赛时告诉我”或“当下雨时提醒我关窗”)。在那种情况下,装置兼容性部件425可确定接收到创建订阅的请求的装置(例如,装置110)的输出能力。
[0088]
在一些情况下,接收到订阅请求的装置可以是支持话音的装置,可被配置为执行口语理解,并且可能够输出合成语音。在其他情况下,接收到订阅请求的装置(例如,移动装置)可包括能够使用用户输入来执行口语理解但不能输出合成语音的支持话音的应用程序。在一些情况下,装置可能需要使得能够从支持话音的应用程序接收推送通知。
[0089]
装置兼容性部件425可确定用于订阅的输出装置的输出能力是否包括输出由上述tts处理部件280生成的合成语音的能力。装置兼容性部件425可确定用于订阅的输出装置的输出能力是否包括接收推送通知的能力、呈现视觉输出(例如,灯等)的能力,或者呈现其他类型的能力的输出。装置兼容性部件425可确定输出装置是否能够执行所请求的动作,诸如根据用户请求来控制智能装置。
[0090]
在一些实施方案中,当输出装置能够输出合成语音时,装置兼容性部件425可将输出类型确定为包括合成语音的音频输出。如果输出装置不能输出合成语音,则装置兼容性部件425可将输出类型确定为推送通知。在一些实施方案中,装置兼容性部件425可确定输出装置是否被启用来接收推送通知。如果输出装置不能输出合成语音、推送通知或其他类型的输出,则由装置兼容性部件425确定的输出类型可能是错误,或者可以其他方式指示输出装置不支持输出。制作的输出类型包括音频输出、tts输出、视觉输出、推送通知、电子邮件消息、sms消息和其他形式的输出类型。
[0091]
装置兼容性部件425可确定与用户简档相关联的将根据订阅接收输出的一组装置。当创建订阅时,订阅配置部件410可将多个装置与订阅数据450相关联,作为将在事件发生时接收输出的潜在输出装置。也可存储每个装置的输出形式。例如,装置兼容性部件425可将潜在输出装置及其相应的输出形式确定为智能扬声器装置110a:tts输出,智能电话110b:推送通知,智能手表110c:视觉/灯通知,显示装置110f:tts输出和视觉通知等。当执行订阅时(当接收到指示发生触发事件的事件数据时),订阅管理器275可确定潜在输出装置中的哪些装置可接收输出。在一些情况下,所有的潜在输出装置都可接收输出,并且在一些情况下,只有一个潜在装置可接收输出。订阅管理器275可使用各种因素来做出该确定,包括但不限于存在数据(指示用户在要呈现输出时靠近一个或多个装置)、位置数据(指示用户的位置(例如,家庭与工作))、交互数据(指示用户在要呈现输出时正在与特定装置交互)以及其他因素。这些因素可指示用户更有可能接收/查看/访问输出(如果呈现在特定装置上的话)。
[0092]
输出类型可指示将使用哪种形式的输出(例如,通告、推送通知、视觉通知、音频通知等)来向用户指示发生了触发事件。输出类型还可指示呈现输出的时序(例如,一旦事件
发生就用输出中断用户,等到用户与系统交互等等)。输出类型还可指示与用户简档相关联的多少装置将接收输出。
[0093]
递送偏好部件430可基于由用户、技能/应用程序开发者或系统定义的偏好来确定当事件被触发时如何呈现输出。例如,简档存储装置270可包括指示在与用户配置文件相关联的特定装置处接收通知或提醒的用户偏好的数据。递送偏好部件430可确定当订阅被触发时向哪些装置发送输出、输出的类型/形式以及与将输出呈现给用户有关的其他信息。例如,开发者可指定将特定订阅的输出呈现为推送通知,而不是音频输出/通告。作为另一个示例,系统偏好可指定不能经由与儿童用户相关联或被(用户、制造商、系统等)指定为儿童装置的装置来呈现特定订阅的输出。
[0094]
再发生管理器435可确定表示要生成输出或要执行动作的次数的频率数据。一些事件可发生多次,诸如,从特定发件人接收电子邮件、足球比赛中的得分变化、天气状况、包裹递送等。用户输入数据402可指示将呈现输出(例如,通知、提醒、通告等)的次数。例如,用户输入可以是“下次我接收到来自joe的电子邮件时告诉我”、“本周每次下雨时都提醒我关窗”、“下两次我接收到包裹递送时通知我”等。再发生管理器435可处理用户输入数据402以确定频率数据。在“下次我接收到来自joe的电子邮件时告诉我”的示例中,再发生管理器435将频率数据确定为一次或一次性发生。在“本周每次下雨时都提醒我关窗”的示例中,再发生部件425将频率数据确定为在接下来的七天再发生。在一些实施方案中,再发生管理器435可确定在用户的位置本周天气预报下雨的次数,并且可将频率数据确定为本周可能下雨的次数。在“下两次我接收到包裹递送时通知我”的示例中,再发生部件435可将频率数据确定为二次/两次/二。
[0095]
在一些实施方案中,nlu部件260可通过处理用户输入以确定用户打算接收多少次输出来确定频率数据。重复部件435/nlu部件260可通过识别用户输入中的指示时间段的词语来确定频率数据。此类词语可包括但不限于当时、每次、下n次、每次、每当、接下来的n天、下次、下一次等。
[0096]
在一些实施方案中,再发生管理器435可确定触发事件仅发生一次或在给定的时间段期间仅发生一次。例如,像2020年夏季奥运会开幕式的触发事件(例如,用户输入可以是“当奥运会开幕式开始时提醒我”)在给定的有限时间段期间(诸如在一年或一个月内)发生一次。在这种情况下,再发生管理器435可将频率数据确定为一/单次/一次。
[0097]
在一些实施方案中,再发生管理器435可使用用户简档数据、用户偏好、过去的用户交互、过去的订阅、不同用户的类似订阅以及其他数据来确定频率数据。
[0098]
在一些实施方案中,如果再发生管理器435不能以一定的置信水平确定订阅的频率数据,则系统120可向用户询问订阅将被执行的次数,或向用户确认订阅将被执行的次数。例如,系统120可经由合成语音或显示文本/对话框输出“您想要被通知多少次”或“下一次您接收到包裹时我会通知您”等。
[0099]
由部件420、425、430和435确定的数据以及由订阅配置部件410确定的触发数据和输出数据作为订阅数据450存储在订阅存储装置455中。在一些实施方案中,订阅数据450可包括用户简档标识符以识别当订阅被触发时哪些用户简档将接收输出。订阅数据450可包括装置标识符以识别当订阅被触发时哪个装置将接收输出。可被包括在订阅存储装置455中的示例数据在图6中示出。如图所示,订阅存储装置455可存储与多个订阅有关的不同类
型的订阅数据450,每个订阅与以下项相关联或包括以下项:不同类型的触发数据、不同类型的触发类型、不同类型的输出类型、不同类型的再发生/频率数据,以及不同类型的用户简档标识符。
[0100]
在一些实施方案中,如果触发类型是提醒操作,则订阅配置部件410可将订阅数据450存储在提醒存储装置440中。为提醒订阅/操作生成的输出可在稍后时间供其他部件或用户使用。对于提醒订阅,订阅管理器275可在事件发生时生成输出并且经由输出装置向用户呈现一次。用户可待办或以其他方式指示不删除/驳回输出/提醒,并且系统120可在稍后时间再次向用户呈现事件的输出/提醒。提醒存储装置440可存储指示用户待办提醒输出的数据,并且可致使系统120在一段时间之后或者当用户请求查看/收听他的活动或待办提醒时再次呈现提醒输出。例如,系统120可致使装置输出“海鹰队比赛在10分钟后开始”,用户可待办提醒,并且系统120可在稍后时间输出“提醒海鹰队比赛已经开始。”在另一个示例中,可经由第一输出装置(智能扬声器)来提供初始提醒输出,用户可请求经由第二装置(移动装置)来查看他的提醒,并且作为响应,系统120可经由第二装置来呈现提醒输出。
[0101]
在一些实施方案中,如果触发类型是通知操作,则订阅管理器275可将为通知订阅/操作生成的输出仅呈现一次,而不是继续提醒用户事件发生。
[0102]
在一些实施方案中,订阅配置部件410可通过处理用户输入数据402来确定对应于订阅的过滤数据和实体值。过滤数据和实体值可存储为订阅数据450。过滤数据可表示可用于识别订阅的触发事件的数据或信息。实体值可指示与触发事件相关联的一个或多个实体。例如,如果用户输入是“我接收到来自joe的电子邮件就告诉我”,则过滤数据可包括与joe相关联的电子邮件地址,并且实体值可包括“joe”。因此,当接收到来自joe的电子邮件时,订阅管理器275可使用电子邮件地址和实体值“joe”来辨识要生成根据与该事件相关联的订阅的输出。作为另一个示例,如果用户输入是“当我的哮喘处方准备好时通知我”,则过滤数据可以是与用户的医疗信息/处方相关联的用户标识符,并且实体值可以是“哮喘”。作为另一个示例,如果用户输入是“当海鹰队比赛时提醒我”,则过滤数据可以是与足球赛相关联的电视节目标识符,并且实体值可以是“海鹰队”。
[0103]
在一些实施方案中,系统120可生成确认订阅的创建的输出。订阅管理器275可生成包括与订阅有关的信息的输出,以向用户通知已成功创建订阅。确认输出可基于和/或可包括输出类型、触发数据、输出数据、装置标识符、再发生信息等。例如,一旦创建了订阅,订阅管理器275就可呈现以下输出:“当您接收到来自joe的电子邮件时,我会通知您。”在一些情况下,订阅管理器275可生成请求用户提供更多信息或执行动作以促进订阅的创建的输出。例如,如果再发生管理器435无法确定订阅的频率数据,则订阅管理器275可呈现以下输出:“您想要每次接收到来自joe的电子邮件时都被通知吗?”作为另一个示例,如果装置兼容性部件425根据订阅确定输出装置不支持输出,则订阅管理器275可生成以下输出:“该装置不支持通知”。作为由tts部件280执行的功能的一部分,可使用结合图7a和图7b描述的自然语言生成技术来生成确认输出。
[0104]
订阅管理器275生成的输出可提供到协调器230以输出到装置110。如果接收到订阅请求的装置能够输出合成语音和/或音频数据,则输出可由tts部件280处理以生成合成语音。输出可在接收订阅请求的装置上显示为文本数据或另一种形式。
[0105]
系统120可响应于系统呈现对正在创建的订阅的确认而接收用户输入,其中用户
输入可指示对创建的订阅的改变。例如,如果系统呈现确认“当您接收到来自joe的电子邮件时,我会通告”,则用户可回答“不,请改为在我的电话上向我发送通知”,或者用户可以另一种形式提供输入(例如、文本、经由图形用户界面选择选项等),指示用户想要在移动装置上接收通知而不是通告。订阅管理器275然后相应地更新对应的订阅数据450以指示推送通知的输出类型和对应于用户的移动装置的装置标识符。
[0106]
下面描述系统120可呈现给用户的确认输出的进一步非限制性示例。在一个示例中,如果用户输入是“当我收到来自joe的电子邮件时告诉我”,并且输出装置能够输出合成语音,则订阅配置部件410可创建通知订阅(因为发生时间不是可确定的),其中频率数据设置为“一次性”,并且订阅管理器275可输出确认“当您收到来自joe的电子邮件时我会通告”。
[0107]
在另一个示例中,如果用户输入是“每次我收到来自joe的电子邮件时告诉我”,并且输出装置能够输出合成语音,则订阅配置部件410可创建通知订阅(因为发生时间不是可确定的),其中频率数据设置为“再发生/每次”,并且订阅管理器275可输出确认“每当您收到来自joe的电子邮件时我会通告”。
[0108]
在另一个示例中,如果用户输入是“当我收到来自joe的电子邮件时告诉我”,并且输出装置不能够输出合成语音并被启用来接收推送通知,则订阅配置部件410可创建通知订阅,其中频率数据设置为“一次性”,并且订阅管理器275可输出确认“当您收到来自joe的电子邮件时我会通知您。”[0109]
在另一个示例中,如果用户输入是“当我收到来自joe的电子邮件时告诉我”,并且输出装置不能够输出合成语音并被禁用来接收推送通知,则在创建订阅之前,订阅管理器275可输出请求“为了接收通知,请启用app的推送通知。”[0110]
在另一个示例中,如果用户输入是“当我收到来自joe的电子邮件时告诉我”,并且输出装置不能输出合成语音并且不能接收推送通知(例如,智能电视或仅输入装置),则订阅配置部件410可不创建订阅,并且订阅管理器275可输出“装置不支持通告或通知”。
[0111]
在另一个示例中,如果用户输入是“当海鹰队比赛时告诉我”,并且输出装置能够输出合成语音,则订阅配置部件410可创建提醒订阅(因为发生时间是可确定的),其中数据设置为“一次性”,并且订阅管理器275可输出确认“当海鹰队比赛时我会提醒您”。
[0112]
在另一个示例中,如果用户输入是“当海鹰队比赛时告诉我”,并且输出装置不能够输出合成语音并被启用来接收推送通知,则订阅配置部件410可创建提醒订阅,其中频率数据设置为“一次性”,并且订阅管理器275可输出确认“当海鹰队比赛时我会提醒您。”[0113]
在另一个示例中,如果用户输入是“当海鹰队比赛时告诉我”,并且输出装置不能够输出合成语音并被禁用来接收推送通知,则订阅配置部件410可创建提醒订阅,其中频率数据设置为“一次性”,并且订阅管理器275可输出确认“为了接收通知,请启用app的推送通知。”[0114]
图5是根据本公开的实施方案的用于执行订阅的系统部件的概念图。技能部件290可将事件数据502提供到订阅管理器275(直接地或经由协调器230)。事件数据502可指示事件的发生,诸如,接收到电子邮件、处方准备好取药、足球赛中的得分改变/更新等。订阅管理器275可从订阅存储装置455检索订阅数据450并且确定事件数据502根据订阅触发输出。订阅管理器275可生成使用订阅数据确定的输出数据504。输出数据504可包括表示要呈现
给用户的内容/信息或表示要执行的动作的内容数据。输出数据504还可包括与要接收输出数据的输出装置相关联的装置标识符。输出数据504还可包括如何将输出呈现给用户的输出类型(例如,tts、推送通知、音频、视觉等)。
[0115]
订阅管理器275可将输出数据504发送到协调器230以进行进一步处理,使得可响应于订阅被触发而将输出呈现给用户。使用结合图2描述的一个或多个部件的系统120可确定输出505以发送到装置110来呈现给用户。例如,输出数据504可指示包括合成语音的音频数据将被发送到与用户简档相关联的智能扬声器装置,并且系统120可将包括音频数据的输出505a发送到装置110a。在另一个示例中,输出数据504可指示推送通知将被发送到与用户简档相关联的移动装置,并且系统120可将包括通知数据的输出505b发送到装置110b。在另一个示例中,输出数据504可指示视觉指示将被发送到与用户简档相关联的智能扬声器装置,并且系统120可将包括用于呈现视觉指示(例如,黄色光圈)的指令的输出505a发送到装置110a。协调器230可向订阅管理器275发送订阅的输出/动作已完成的确认。协调器230可将执行数据存储在执行历史存储装置520中。执行数据可与用户简档(关于其呈现输出)相关联,并且可表示与存储的订阅的执行有关的信息。执行数据可包括执行订阅的指示、执行订阅的时间以及其他数据。
[0116]
在从协调器230接收到确认之后,订阅管理器275可使用再发生管理器435来确定订阅是否要被删除或禁用。如果订阅的频率是一次性,则订阅管理器275可确定删除订阅(至少关于用户简档)。如果订阅的频率是再发生,则订阅管理器275可相应地更新订阅存储装置455。
[0117]
再发生管理器435可使用频率数据/订阅数据450来确定订阅是一次性执行还是再发生执行(决策部件510)。如果订阅被确定为一次性执行,则再发生管理器435可从订阅存储装置455删除对应的订阅数据记录。在一些实施方案中,对应的订阅数据记录可被指示为禁用、完成或执行。
[0118]
如果订阅被确定为再发生执行,则再发生管理器435可从执行历史存储装置520检索指示订阅是否被执行的数据。再发生管理器435可确定订阅是最近执行的还是在给定的时间段内执行的(以确保不考虑订阅的先前执行)。在确定执行了订阅之后,再发生管理器435可使用对应于订阅的频率数据来确定(决策部件515)订阅已经被执行频率数据指示的次数,并且对应的订阅数据记录可被删除/禁用。再发生管理器435可使用频率数据来确定将来仍需要执行订阅,并且可更新对应的订阅数据记录的频率数据以反映要执行订阅的剩余次数。例如,如果用户输入是“接下来三次我接收到包裹递送就告诉我”,则在创建订阅时频率数据可以是“三”。在第一次向用户通知包裹递送之后,再发生管理器435可将对应的订阅数据记录的频率数据更新为“二”,以指示要再向用户通知两次包裹递送。在第三次向用户通知包裹递送之后,再发生管理器435可删除/禁用对应的订阅数据记录。
[0119]
在一些实施方案中,再发生管理器435可使用存储在执行历史存储装置520处的数据来确定执行订阅的次数。再发生管理器435可检查在创建订阅之后存储的存储装置520处的数据。使用该信息,再发生管理器435可确定删除或更新订阅数据记录以指示系统是否应在将来继续生成订阅的输出。
[0120]
在图6中示出了可被包括在订阅存储装置455中的各种订阅的示例订阅数据。例如,对于由数据记录602表示的第一订阅,用户输入可以是“当我接收到来自joe的邮件时立
即告诉我”,并且如图所示,订阅数据可以是《用户标识符=abc》;《触发=emailreceived》;《触发类型=高》;《再发生=单次》;《输出装置=智能扬声器》;《输出类型=音频/tts》。对于由数据记录604表示的示例第二订阅,用户输入可以是“接下来两次我的处方准备好时通知我”,并且如图所示,订阅数据可以是《用户标识符=abc》;《触发=prescriptionready》;《触发类型=中》;《再发生=两次》;《输出装置=移动装置》;《输出类型=推送通知》。对于由数据记录606表示的示例第三订阅,用户输入可以是“接下来两周海鹰队比赛时提醒我”,并且如图所示,订阅数据可以是《用户标识符=bcd》;《触发=sportsstart》;《触发类型=低》;《再发生=接下来两个周六和周日》;《输出装置1=智能电视》;《输出类型1=错误》;《输出装置2=移动装置》;《输出类型2=推送通知》。对于由数据记录608表示的示例第四订阅,用户输入可以是“本周下雨时告诉我”,并且如图所示,订阅数据可以是《用户标识符=cde》;《触发=weathercondition》;《触发类型=中》;《再发生=7天中的每次》;《输出装置=智能扬声器》;《输出类型=视觉通知》。对于由数据记录610表示的示例第五订阅,用户输入可以是“每当我的区域有服务器天气警报时通知我”,并且如图所示,订阅数据可以是《用户标识符=cde》;《触发=severeweatheralert》;《触发类型=高》;《再发生=每次》;《输出装置1=智能扬声器》;《输出类型1=音频/tts》;《输出装置2=移动装置》;《输出类型2=推送通知》。
[0121]
本文描述的系统120部件中的一者或多者可实现一个或多个经训练的机器学习模型。可使用各种机器学习技术来训练和操作这样的模型。模型可根据各种机器学习技术进行训练和操作。此类技术可包括例如神经网络(诸如深度神经网络和/或循环神经网络)、推理引擎、经训练的分类器等。经训练的分类器的示例包括支持向量机(svm)、神经网络、决策树、与决策树结合的adaboost(“自适应提升”的简称)以及随机森林。以svm为例,svm是具有相关联的学习算法的监督式学习模型,所述学习算法分析数据并辨识数据中的模式,并且通常用于分类和回归分析。给定一组训练示例,每个训练示例都标记为属于两个类别中的一者,svm训练算法构建将新示例指派到一个类别或另一个类别中的模型,从而使其成为非概率二元线性分类器。可用识别多于两个类别的训练集来构建更复杂的svm模型,其中svm确定哪个类别与输入数据最相似。可映射svm模型,使得单独类别的示例分开明显的差距。然后将新示例映射到相同的空间,并且基于它们落在差距的哪一侧来预测属于一个类别。分类器可发布指示数据最密切地匹配哪个类别的“得分”。得分可提供数据与类别的密切匹配程度的指示。
[0122]
为了应用机器学习技术,机器学习过程本身需要进行训练。训练机器学习部件(诸如,在这种情况下是经训练的模型中的一者)需要为训练示例建立“基本事实”。在机器学习中,术语“基本事实”是指用于监督式学习技术的训练集分类的准确性。可使用各种技术来训练模型,包括反向传播、统计学习、监督式学习、半监督式学习、随机学习或其他已知的技术。
[0123]
神经网络还可用于执行asr处理,包括声学模型处理和语言模型处理。在声学模型使用神经网络的情况下,神经网络输入层的每个节点可表示声学特征的特征向量的声学特征,诸如可在第一遍执行语音辨识之后输出的声学特征,并且输出层的每个节点表示对应于子词单元(诸如音素、三音素等)和/或可能对应于由特征向量表示的声音的相关联状态的得分。对于神经网络的给定输入,输出多个潜在输出,每个潜在输出都具有指派的得分,
该得分表示在给定特定输入的情况下特定输出是正确输出的概率。然后可将声学模型神经网络的最高得分输出馈送到hmm中,该hmm可在将结果传递给语言模型之前确定声音之间的转变。
[0124]
在语言模型使用神经网络的情况下,神经网络输入层的每个节点可表示先前词语,并且输出层的每个节点可表示由经训练的神经网络语言模型确定的潜在下一词语。由于语言模型可被配置为结合由神经网络处理的一些词语历史的循环神经网络,因此对潜在下一词语的预测可基于话语中的先前词语,而不仅仅是最近的词语。语言模型神经网络还可输出下一词语的加权预测。
[0125]
神经网络的处理由每个节点输入上的学习权重和网络的结构决定。给定特定输入,神经网络一次确定一层的输出,直到计算出整个网络的输出层。
[0126]
连接权重最初可由神经网络在训练期间学习,其中给定的输入与已知的输出相关联。在一组训练数据中,将各种训练示例馈送到网络中。每个示例通常将从输入到输出的正确连接的权重设置为1,并且为所有连接赋予权重0。在另一个实施方案中,随机地指派初始连接权重。由于训练数据中的示例由神经网络处理,因此可将输入发送到网络并与相关联的输出进行比较,以确定网络性能与目标性能相比起来如何。使用诸如反向传播的训练技术,可更新神经网络的权重以减少神经网络在处理训练数据时产生的错误。
[0127]
在图7a中示出了可用于执行单元选择、参数tts处理和/或基于模型的音频合成的系统部件。如图7a所示,tts部件/处理器780可包括tts前端716、语音合成引擎718、tts单元存储装置772、tts参数存储装置780和tts后端734。tts单元存储装置772可尤其包括话音库存778a至288n,所述话音库存可包括在执行单元选择合成时将由单元选择引擎730使用的预先记录的音频片段(被称为单元),如下所述。tts参数存储装置780可尤其包括参数设置768a至268n,所述参数设置可在执行参数合成时由参数合成引擎732使用,如下所述。一组特定的参数设置768可对应于特定的话音简档(例如,低语的语音、兴奋的语音等)。
[0128]
在本公开的各种实施方案中,可使用语音模型722和tts前端716来执行基于模型的音频数据合成。tts前端716可与传统的单元选择或参数系统中使用的前端相同。在其他实施方案中,tts前端716的一些或所有部件是基于其他经训练的模型。然而,本公开不限于任何特定类型的tts前端716。语音模型722可用于合成语音而不需要tts单元存储装置772或tts参数存储装置780,如下面更详细地描述。
[0129]
tts前端716将输入文本数据710(来自例如应用程序、用户、装置或其他文本源)转换为符号语言表示,该符号语言表示可包括语言上下文特征,诸如音素数据、标点符号数据、音节级特征、词语级特征和/或情感、说话者、口音或其他特征,以供语音合成引擎718处理。音节级特征可包括音节强调、音节语速、音节音调变化或其他此类音节级特征;词语级特征可包括词语强调、词语语速、词语音调变化或其他此类词语级特征。情感特征可包括对应于与输入文本数据710相关联的情感的数据,诸如惊讶、愤怒或恐惧。说话者特征可包括对应于说话者的类型的数据,诸如性别、年龄或职业。口音特征可包括对应于与说话者相关联的口音的数据,诸如南方口音、波士顿口音、英语口音、法语口音或其他此类口音。
[0130]
tts前端716还可处理其他输入数据715,诸如文本标签或文本元数据,这些输入数据可指示例如特定词语应该如何发音,例如通过用根据语音合成标记语言(ssml)格式化的标签或以一些其他形式指示期望的语音质量。例如,第一文本标签可被包括在文本中以标
记应开始低语文本(例如,《开始低语》),并且第二标签可被包括在文本中以标记应结束低语文本(例如,《结束低语》)。标签可被包括在输入文本数据710中,和/或用于tts请求的文本可伴随指示应低语什么文本的单独元数据(或具有一些其他指示的音频特性)。语音合成引擎718可将带注释的音标单元模型和存储在tts单元存储装置772和/或tts参数存储装置780中的信息进行比较,以将输入文本转换为语音。例如,tts前端716和语音合成引擎718可包括它们自己的控制器/处理器和存储器,或者它们可使用服务器120、装置110或其他装置的控制器/处理器和存储器。类似地,用于操作tts前端716和语音合成引擎718的指令可位于tts部件780内、位于服务器120、装置110的存储器和/或存储装置内,或位于外部装置内。
[0131]
输入到tts部件780的文本数据710可发送到tts前端716以供处理。前端可包括用于执行文本规范化、语言分析、语言韵律生成的部件或其他此类部件。在文本规范化期间,tts前端716可先处理文本输入并生成标准文本,从而将诸如数字、缩写(诸如apt.、st.等)、符号($、%等)等转换为写出来的词语的等同物。
[0132]
在语言分析期间,tts前端716可分析规范化文本中的语言以生成对应于输入文本的音标单元序列。这个过程可被称为字素到音素的转换。音标单元包括声音单元的符号表示,以便最终由系统组合并作为语音输出。为了语音合成的目的,可使用各种声音单元来划分文本。tts部件780可基于音素(单独的声音)、半音素、二元音素(一个音素的后半部与相邻音素的前半部耦合)、双音素(两个连续的音素)、音节、词语、短语、句子或其他单元来处理语音。每个词语可映射到一个或多个音标单元。这种映射可使用系统存储在例如tts存储部件772中的语言词典来执行。由tts前端716执行的语言分析还可识别不同的语法成分,诸如前缀、后缀、短语、标点符号、句法边界等。此类语法成分可由tts部件780用来制作听起来自然的音频波形输出。语言词典还可包括字母到声音规则和可用于使tts部件780可能遇到的先前未识别的词语或字母组合发音的其他工具。一般地,语言词典中包含的信息越多,语音输出的质量就越高。
[0133]
基于语言分析,tts前端716然后可执行语言韵律生成,其中语音单元用指示期望的音标单元在最终输出语音中将如何发音的期望的韵律特性(也被称为声学特征)对音标单元进行注释。在这个阶段期间,tts前端716可考虑并结合伴随输入到tts部件780的文本的任何韵律注释。此类声学特征可包括音节级特征、词语级特征、情感、说话者、口音、语言、音高、能量、持续时间等。声学特征的应用可基于tts部件780可用的韵律模型。这种韵律模型指示特定音标单元在某些情况下的发音方式。韵律模型可考虑例如音素在音节中的位置、音节在词语中的位置、词语在句子或短语中的位置、相邻的音标单元等。与语言词典一样,与具有较少信息的韵律模型相比,具有更多信息的韵律模型可产生更高质量的语音输出。此外,韵律模型和/或音标单元可用来指示要合成的语音的特定语音质量,其中这些语音质量可匹配输入语音的语音质量(例如,音标单元可指示韵律特性,以基于输入语音是低语而使最终合成的语音听起来像低语)。
[0134]
tts前端716的输出(其可被称为符号语言表示)可包括用韵律特性注释的音标单元序列。该符号语言表示可被发送到语音合成引擎718(其也可被称为合成器),以用于转换成语音的音频波形来输出到音频输出装置并最终输出到用户。语音合成引擎718可被配置为以高效的方式将输入文本转换为高质量的听起来自然的语音。这种高质量语音可被配置为听起来尽可能像人类说话者,或者可被配置为听众可理解的而无需尝试模仿精确的人类
话音。
[0135]
语音合成引擎718可使用一种或多种不同的方法来执行语音合成。在一种被称为单元选择的合成方法中,如下文进一步描述,单元选择引擎730将由tts前端716创建的符号语言表示与记录的语音的数据库进行匹配,该数据库是诸如存储关于一个或多个话音语料库(例如,话音库存778a至778n)的信息的数据库(例如,tts单元存储装置772)。每个话音库存可对应于由说话的人(诸如配音演员)记录的音频的各种片段,其中片段作为声学单元(例如,音素、双音素等)存储在单独的库存778中。每个存储的音频单元还可与列出各种声学特性或关于该单元的其他描述性信息的索引相关联。每个单元包括与音标单元相对应的音频波形(诸如特定声音的短.wav文件)以及与音频波形相关联的各种特征的描述。例如,特定单元的索引条目可包括诸如特定单元的音高、能量、持续时间、泛音、中心频率、音标单元在单词、句子或短语中出现的位置、相邻的音标单元等的信息。单元选择引擎730然后可使用关于每个单元的信息来选择要连接在一起的单元以形成语音输出。
[0136]
单元选择引擎730将符号语言表示与关于数据库中的口语音频单元的信息进行匹配。单元数据库可包括音标单元的多个示例,以向系统提供用于将单元连接成语音的许多不同选项。选择被确定为具有创建期望的输出音频的期望声学质量的匹配单元被选择并连接在一起(例如通过合成部件720),以形成表示合成语音的输出音频数据790。使用单元数据库中的所有信息,单元选择引擎730可将单元与输入文本进行匹配以选择可形成听起来自然的波形的单元。单元选择的一个益处在于,根据数据库的大小,可生成听起来自然的语音输出。如上所述,话音语料库的单元数据库越大,系统就越可能能够构建听起来自然的语音。
[0137]
在另一种被称为参数合成的合成方法中,诸如频率、音量、噪声的参数由参数合成引擎732、数字信号处理器或其他音频生成装置改变,以创建人工语音波形输出。参数合成使用计算机化话音发生器(有时被称为声码器)。参数合成可使用声学模型和各种统计技术来将符号语言表示与期望的输出语音参数进行匹配。使用参数合成,计算系统(例如,合成部件720)可生成具有期望的声学特性的音频波形。参数合成可包括在高处理速度下准确的能力,以及在没有与单元选择相关的大型数据库的情况下处理语音的能力,但也可产生可能与单元选择不匹配的输出语音质量。单元选择和参数技术可单独执行或组合在一起和/或与其他合成技术组合以产生语音音频输出。
[0138]
tts部件780可被配置为以多种语言执行tts处理。对于每种语言,tts部件780可包括专门配置的数据、指令和/或部件以合成期望语言的语音。为了提高性能,tts部件780可基于tts处理结果的反馈来修改/更新tts存储装置780的内容,因此使得tts部件780能够改进语音辨识。
[0139]
tts存储部件780可基于他/她的个性化期望语音输出而为单个用户定制。特别地,存储在单元数据库中的语音单元可取自用户说话的输入音频数据。例如,为了创建系统的定制语音输出,系统可被配置有多个话音库存778a至278n,其中每个单元数据库被配置有不同的“话音”以匹配期望的语音质量。此类语音库存也可链接到用户账户。由tts部件780选择话音来合成语音。例如,可存储一个话音语料库以用于合成低于语音(或近似低语语音的语音),可存储另一个话音语料库以用于合成兴奋的语音(或近似于兴奋的语音的语音)等。为了创建不同的话音语料库,可由个人(诸如配音演员)说出大量的tts训练话语并由系
统记录下来。然后可将与tts训练话语相关联的音频分割成小的音频片段并存储为话音语料库的一部分。说出tts训练话语的个人可用不同的话音质量说话以创建定制的话音语料库,例如,个人可低语训练话语、用兴奋的话语说出训练话语等等。因此,每个定制的话音语料库的音频可匹配相应期望的话音质量。然后可在运行时间期间使用定制的话音库存778来执行单元选择以合成具有对应于输入语音质量的语音质量的语音。
[0140]
另外地,参数合成可用于合成具有期望的语音质量的语音。对于参数合成,可配置与期望的语音质量相匹配的参数特征。如果需要模拟的兴奋语音,则参数特征可指示结果语音的增加的语速和/或音高。许多其他示例是可能的。特定语音质量的期望参数特征可存储在“话音”简档(例如,参数设置768)中并且在期望特定的语音质量时用于语音合成。可基于组合的多个期望的语音质量来创建定制的语音(对于单元选择或参数合成)。例如,一个话音可能是“喊叫”,而另一个话音可能是“喊叫并强调”。许多这样的组合是可能的。
[0141]
单元选择语音合成可执行如下。单位选择包括两步过程。首先,单元选择引擎730确定要使用什么语音单元,并且然后将它们组合,使得特定组合的单元匹配期望的音素和声学特征并创建期望的语音输出。可基于成本函数来选择单元,该成本函数表示特定单元与要合成的语音片段的匹配程度。成本函数可表示代表特定语音单元对特定语音片段的工作情况的不同方面的不同成本的组合。例如,目标成本指示单个给定的语音单元与期望的语音输出的特征的匹配程度(例如,音高、韵律等)。连接成本表示特定语音单元与相邻语音单元(例如,直接在特定语音单元之前或直接在其之后出现的语音单元)的匹配程度,以便在最终合成语音中将语音单元连接在一起。总成本函数是目标成本、连接成本和可由单元选择引擎730确定的其他成本的组合。作为单元选择|的一部分,单元选择引擎730选择具有最低总组合成本的语音单元。例如,可能不一定选择目标成本非常低的语音单元(如果其连接成本很高的话)。
[0142]
该系统可被配置有用于单元选择的一个或多个话音语料库。每个话音语料库可包括语音单元数据库。语音单元数据库可存储在tts单元存储装置772或另一个存储部件中。例如,不同的单元选择数据库可存储在tts单元存储装置772中。每个语音单元数据库(例如,话音库存)包括记录的语音话语,其中话语的对应文本与话语对齐。语音单元数据库可包括可能会占用大量存储的许多小时的记录的语音(以音频波形、特征向量或其他格式的形式)。语音单元数据库中的单元样本可通过多种方式进行分类,包括音标单元(音素、双音素、词语等)、语言韵律标签、声学特征序列、说话者身份等。样本话语可用于创建与特定语音单元的期望音频输出相对应的数学模型。当匹配符号语言表示时,语音合成引擎718可尝试在语音单元数据库中选择最密切地匹配输入文本(包括音标单元和韵律注释)的单元。一般地,话音语料库/语音单元数据库越大,可通过可被选择来形成精确的期望语音输出的更大数量的单元样本实现的语音合成就越好。
[0143]
基于声码器的参数语音合成可执行如下。tts部件780可包括声学模型或其他模型,所述模型可基于音频信号操纵将符号语言表示转换为文本输入的合成声学波形。声学模型包括可由参数合成引擎732用来将特定音频波形参数指派到输入音标单元和/或韵律注释的规则。规则可用于计算表示特定音频输出参数(诸如频率、音量等)对应于来自tts前端716的输入符号语言表示的部分的可能性的得分。
[0144]
参数合成引擎732可使用多种技术来将要合成的语音与输入音标单元和/或韵律
注释进行匹配。一种常见的技术是使用隐马尔可夫模型(hmm)。hmm可用于确定音频输出应与文本输入匹配的概率。hmm可用于将来自语言和声学空间的参数转换为声码器(数字话音编码器)使用的参数,以人工地合成期望的语音。使用hmm,呈现了许多状态,其中状态共同表示要输出到声码器的一个或多个潜在声学参数,并且每个状态与模型(诸如高斯混合模型)相关联。状态之间的转变也可能具有相关联的概率,该概率表示可以从先前状态到达当前状态的可能性。要输出的声音可被表示为hmm的状态之间的路径,并且多个路径可表示相同的输入文本的多个可能的音频匹配。文本的每个部分可由对应于音素及其部分的不同的已知发音(诸如音素标识、重读、重音、位置等)的多个潜在状态表示。潜在音素的概率的初始确定可与一种状态相关联。当语音合成引擎718处理新文本时,状态可基于新文本的处理而改变或保持不变。例如,先前处理的词语的发音可基于后来处理的词语而改变。维特比算法可用于基于处理的文本来找到最可能的状态序列。hmm可生成参数化形式的语音,该参数化形式包括由声码器转换成音频片段的参数,诸如基频(f0)、噪声包络、频谱包络等。输出参数可针对特定声码器进行配置,诸如straight声码器、tandem-straight声码器、world声码器、基于hnm(谐波加噪声)的声码器、celp(码激励线性预测)声码器、glotthmm声码器、hsm(谐波/随机模型)声码器或其他声码器。
[0145]
除了将一个音频波形的潜在状态计算为音标单元的潜在匹配之外,参数合成引擎732还可将其他潜在音频输出的潜在状态(诸如使特定音素或双音素发音的各种方式)计算为声学单元的潜在声学匹配。以这种方式,可计算多个状态和状态转变概率。
[0146]
由参数合成引擎732计算的可能状态和可能状态转变可导致多个潜在音频输出序列。基于声学模型和其他潜在模型,可根据参数合成引擎732的置信水平对潜在音频输出序列进行评分。可选择包括要合成的参数流的得分最高的音频输出序列,并且可由声码器或类似部件执行数字信号处理,以创建包括与得分最高的音频输出序列的参数相对应并且如果选择了正确的序列还与输入文本相对应的合成语音波形的音频输出。可表示匹配特定参数“话音”的声学设置的不同参数设置768可由合成部件722用来最终创建输出音频数据790。
[0147]
当执行单元选择时,在单元选择引擎730选择单元之后,可将对应于该单元的音频数据传递到合成部件720。合成部件720然后可处理该单元的音频数据以创建修改的音频数据,其中修改的音频数据反映期望的音频质量。合成部件720可存储可将单元音频数据转换为修改的音频数据的各种操作,其中可基于期望的音频效果(例如,低于、喊叫等)来执行不同的操作。
[0148]
作为示例,输入文本可与元数据(诸如ssml标签)一起接收,该元数据指示输入文本的选定部分在由tts模块780输出时应被低语。对于对应于选定部分的每个单元,合成部件720可处理该单元的音频数据以创建修改的单元音频数据。然后可连接修改的单元音频数据以形成输出音频数据790。修改的单元音频数据也可与未修改的音频数据连接,这取决于期望的低语语音何时开始和/或结束。虽然修改的音频数据可能足以使输出音频数据具有期望的音频质量,但其他因素也可影响音频的最终输出,诸如回放速度、背景效果等,这些因素可能超出了tts模块780的控制。在那种情况下,其他输出数据785可与输出音频数据790一起输出,使得最终回放装置(例如,装置110)接收到可帮助创建期望的输出音频的回放指令。因此,其他输出数据785可包括指示回放装置设置(诸如音量、回放速率等)的指令
或其他数据,或指示应如何输出包括合成语音的输出音频数据的其他数据。例如,对于低语语音,输出音频数据790可包括其他输出数据785,该其他输出数据可包括指示装置110减慢输出音频数据790的回放的韵律标签或其他指示符,因此使最终的音频听起来更像低语语音,该低语语音通常比正常语音慢。在另一个示例中,其他输出数据785可包括指示装置110以小于装置110的当前音量设置的音量级输出语音的音量标签,因此改进安静的低语效果。
[0149]
图7b示出了语音模型722的实施例。语音模型可包括编码器750、注意力机制752和解码器754。这种部件布置可被称为序列到序列模型。编码器750和/或解码器754可以是具有一个或多个层的神经网络。这些层可由一个或多个节点组成;每个节点可从前一层接收输入数据或节点的输出,并且根据一个或多个模型权重来处理该数据。例如,节点可将输入的值与模型权重相乘以产生输出。神经网络可以是深度神经网络(dnn)、卷积神经网络(cnn)和/或循环神经网络(rnn)。可使用训练数据(诸如话语和对应文本的记录)来训练神经网络。
[0150]
编码器750可接收数据,诸如对应于来自装置110的输入数据的输入文本数据710、nlu结果数据和/或其他数据。编码器750可将该信息编码成上下文向量,该上下文向量被输入到解码器754。任选地,注意力机制752可接收该上下文向量以及编码器750的其他节点的输出,并且对编码器750的不同输出不同地加权(例如,“注意”)。解码器754然后可使用上下文向量和/或注意力机制752的输出来生成输出音频数据790(其可包括响应数据)。
[0151]
图8是概念上示出可与系统一起使用的装置110的框图。图9是概念上示出远程装置的示例部件的框图,该远程装置是诸如可辅助asr处理、nlu处理等的系统120以及技能系统225。系统(120/225)可包括一个或多个服务器。如本文所使用的“服务器”可以是指如在服务器/客户端计算结构中所理解的传统服务器,但也可以是指可辅助本文讨论的操作的多个不同的计算部件。例如,服务器可包括物理地和/或通过网络连接到其他装置/部件并且能够执行计算操作的一个或多个物理计算部件(诸如机架服务器)。服务器还可包括模拟计算机系统并在一个装置上或跨多个装置运行的一个或多个虚拟机。服务器还可包括硬件、软件、固件等的其他组合以执行本文讨论的操作。服务器可被配置为使用客户端服务器模型、计算机局模型、网格计算技术、雾计算技术、大型机技术、实用程序计算技术、对等模型、沙盒技术或其他计算技术中的一者或多者进行操作。
[0152]
本公开的整体系统中可包括多个系统(120/225),诸如用于执行asr处理的一个或多个系统120、用于执行nlu处理的一个或多个系统120、用于响应于用户输入而执行动作的一个或多个技能系统225等。在操作中,这些系统中的每一者可包括驻留在相应的装置(120/225)上的计算机可读且计算机可执行指令,如将在下面进一步讨论。
[0153]
这些装置(110/120/225)的每一者可包括一个或多个控制器/处理器(804/904),所述控制器/处理器可各自包括用于处理数据和计算机可读指令的中央处理单元(cpu)以及用于存储相应的装置的数据和指令的存储器(806/906)。存储器(806/906)可单独地包括易失性随机存取存储器(ram)、非易失性只读存储器(rom)、非易失性磁阻存储器(mram)和/或其他类型的存储器。每个装置(110/120/225)还可包括用于存储数据和控制器/处理器可执行指令的数据存储部件(808/908)。每个数据存储部件(808/908)可单独地包括一个或多个非易失性存储装置类型,诸如磁存储装置、光学存储装置、固态存储装置等。每个装置(110/120/225)还可通过相应的输入/输出装置接口(802/902)连接到可移动或外部非易失
性存储器和/或存储装置(诸如可移动存储卡、存储键驱动器、联网存储装置等)。
[0154]
用于操作每个装置/系统(110/120/225)及其各种部件的计算机指令可由相应的装置的控制器/处理器(804/904)在运行时将存储器(806/906)用作暂时“工作”存储装置来执行。装置的计算机指令可以非暂时性方式存储在非易失性存储器(806/906)、存储装置(808/908)或外部装置中。可选地,除了或代替软件,可执行指令中的一些或全部可被嵌入在相应装置上的硬件或固件中。
[0155]
每个装置(110/120/225)都包括输入/输出装置接口(802/902)。各种部件可通过输入/输出装置接口(802/902)进行连接,如将在下面进一步讨论。另外,每个装置(110/120/225)都可包括用于在相应装置的部件之间传送数据的地址/数据总线(824/924)。除了(或代替)跨总线(824/924)连接到其他部件,装置(110/120/225)内的每个部件还可直接连接到其他部件。
[0156]
参考图8,装置110可包括输入/输出装置接口802,该输入/输出装置接口连接到各种部件,诸如音频输出部件,诸如扬声器812、有线耳机或无线耳机(未示出),或者能够输出音频的其他部件。装置110还可包括音频捕获部件。音频捕获部件可以是例如麦克风820或麦克风阵列、有线耳机或无线耳机(未示出)等。如果包括麦克风阵列,则可基于由阵列中的不同的麦克风捕获到的声音之间的时间和振幅差异通过声学定位来确定到声音的起源点的近似距离。装置110可另外地包括用于显示内容的显示器816。装置110还可包括相机818。
[0157]
经由天线814,输入/输出装置接口802可经由无线局域网(wlan)(诸如wifi)无线电、蓝牙和/或无线网络无线电连接到一个或多个网络199,所述无线网络无线电诸如能够与诸如长期演进(lte)网络、wimax网络、3g网络、4g网络、5g网络等无线通信网络进行通信的无线电。也可支持有线连接,诸如以太网。通过网络199,系统可分布在网络环境中。i/o装置接口(802/902)还可包括通信部件,所述通信部件允许在装置(诸如系统的集合中的不同的物理系统或其他部件)之间交换数据。
[0158]
装置110、系统120或技能系统225的部件可包括它们自己的专用处理器、存储器和/或存储装置。可选地,装置110、系统120或技能系统225的部件中的一个或多个可分别利用装置110、系统120或技能系统225的i/o接口(802/902)、处理器(804/904)、存储器(806/906)和/或存储装置(808/908)。因此,asr部件250可具有其自己的i/o接口、处理器、存储器和/或存储装置;nlu部件260可具有其自己的i/o接口、处理器、存储器和/或存储装置;对于本文讨论的各种部件,依此类推。
[0159]
如上所述,可在单个系统中采用多个装置。在这样的多装置系统中,装置中的每一者可包括用于执行系统处理的不同方面的不同部件。多个装置可包括重叠的部件。如本文所述,装置110、系统120和技能系统225的部件是说明性的,并且可被定位为独立装置或者可全部地或部分地被包括为更大的装置或系统的部件。
[0160]
如图10所示,多个装置(110a至110j、120、225)可包含系统的部件,并且装置可通过网络199进行连接。网络199可包括本地或专用网络,或者可包括广域网(诸如互联网)。装置可通过有线或无线连接来连接到网络199。例如,语音检测装置110a、智能电话110b、智能手表110c、平板计算机110d、车辆110e、显示装置110f、智能电视110g、洗衣机/烘干机110h、冰箱110i和/或烤面包机110j可通过无线服务提供商、通过wifi或蜂窝网络连接等连接到网络199。包括其他装置作为连接网络的支持装置,诸如系统120、技能系统225和/或其他装
置。支持装置可通过有线连接或无线连接来连接到网络199。网络装置可使用一个或多个内置或连接的麦克风或其他音频捕获装置来捕获音频,其中处理由同一装置或经由网络199连接的另一个装置的asr部件、nlu部件或其他部件(诸如一个或多个系统120的asr部件250、nlu部件260等)执行。
[0161]
还可鉴于以下条款来理解前述内容:
[0162]
1.一种计算机实现的方法,所述计算机实现的方法包括:
[0163]
在第一时间段期间:
[0164]
从装置接收对应于话语的音频数据,所述音频数据与用户简档相关联;
[0165]
处理所述音频数据以确定意图数据,所述意图数据指示当未来事件发生时接收输出的请求;
[0166]
确定表示所述事件的触发数据;
[0167]
确定对应于所述事件的优先级数据,所述优先级数据指示高优先级;以及
[0168]
存储所述触发数据和所述优先级数据;
[0169]
在所述第一时间段之后的第二时间段期间:
[0170]
接收指示所述事件的发生的事件数据;
[0171]
使用所述触发数据来确定所述事件数据相对于所述用户简档触发输出;
[0172]
使用所述优先级数据来确定输出所述事件发生的通告;
[0173]
确定所述装置能够输出合成语音;
[0174]
确定表示所述通告的输出文本数据;
[0175]
使用文本转语音(tts)处理来处理所述输出文本数据以确定输出音频数据;以及
[0176]
将所述输出音频数据发送到所述装置。
[0177]
2.如条款1的计算机实现的方法,所述计算机实现的方法还包括:
[0178]
在所述第一时间段期间:
[0179]
使用自动语音辨识(asr)来处理所述音频数据以确定输入文本数据;
[0180]
使用自然语言理解(nlu)来处理所述输入文本数据以确定指示当所述事件发生时多次接收所述输出的意图的第一频率数据;以及
[0181]
存储所述第一频率数据;
[0182]
在所述第二时间段期间:
[0183]
使用所述第一频率数据和所述事件已经发生的次数来确定指示要生成所述输出的剩余次数的第二频率数据;以及
[0184]
将所述第二频率数据与所述触发数据相关联。
[0185]
3.如条款1或2所述的计算机实现的方法,所述计算机实现的方法还包括:
[0186]
在第三时间段期间:
[0187]
从第二装置接收对应于第二话语的第二音频数据,所述第二音频数据与所述用户简档相关联;
[0188]
处理所述第二音频数据以确定第二意图数据,所述第二意图数据指示当第二事件发生时接收输出的第二请求;
[0189]
使用nlu来确定表示所述第二事件的第二触发数据;
[0190]
确定对应于所述第二触发数据的第二优先级数据,所述第二优先级数据指示高优
先级;以及
[0191]
存储所述第二触发数据和所述第二优先级数据;
[0192]
在所述第三时间段之后的第四时间段期间:
[0193]
接收第二事件数据,
[0194]
使用所述第二触发数据来确定所述第二事件数据相对于所述用户简档触发输出;
[0195]
确定所述第二装置不能输出合成语音;
[0196]
使用所述第二优先级数据来确定向所述第二装置和与所述用户简档相关联的第三装置输出推送通知,所述推送通知表示所述第二事件发生的指示;
[0197]
生成表示所述推送通知的通知数据;以及
[0198]
将所述通知数据发送到所述第二装置和所述第三装置。
[0199]
4.一种计算机实现的方法,所述计算机实现的方法包括:
[0200]
接收表示自然语言的输入数据,所述输入数据与用户简档相关联;
[0201]
处理所述输入数据以确定意图数据,所述意图数据指示当事件发生时接收输出的请求;
[0202]
使用所述输入数据来确定表示所述事件的触发数据;
[0203]
确定对应于所述触发数据的优先级;以及
[0204]
将所述触发数据和所述优先级与所述用户简档相关联。
[0205]
5.如条款4的计算机实现的方法,所述计算机实现的方法还包括:
[0206]
确定对应于所述事件的类别;
[0207]
确定对应于所述事件的第一优先级数据;
[0208]
确定所述输入数据中表示的第二优先级数据;以及
[0209]
使用所述第一优先级数据和所述第二优先级数据来确定所述优先级。
[0210]
6.如条款4或5所述的计算机实现的方法,所述计算机实现的方法还包括:
[0211]
确定所述优先级为高;
[0212]
使用所述优先级来确定所述输出是通告;
[0213]
确定输出装置的输出能力包括输出合成语音的能力;
[0214]
生成表示当所述事件发生时将生成通告的确认的输出数据;
[0215]
使用文本转语音(tts)处理来处理所述输出数据以确定输出音频数据;以及
[0216]
将所述输出音频数据发送到所述输出装置。
[0217]
7.如条款4、5或6所述的计算机实现的方法,所述计算机实现的方法还包括:
[0218]
确定所述优先级为高;
[0219]
确定第一输出装置不能输出合成语音;
[0220]
使用所述优先级来确定向所述第一输出装置和第二输出装置输出推送通知;
[0221]
生成表示当所述事件发生时将生成通知的确认的输出数据;以及
[0222]
将所述输出数据发送到所述第一输出装置。
[0223]
8.如条款4、5、6或7所述的计算机实现的方法,所述计算机实现的方法还包括:
[0224]
确定与所述触发数据相关联的触发类型,所述触发类型指示所述事件将发生的时间;
[0225]
将所述触发类型和所述时间与所述触发数据相关联;
[0226]
生成表示将生成所述事件发生的提醒的确认的输出数据;
[0227]
使用tts处理来处理所述输出数据以确定输出音频数据;以及
[0228]
将所述输出音频数据发送到装置。
[0229]
9.如条款4、5、6、7或8所述的计算机实现的方法,所述计算机实现的方法还包括:
[0230]
确定所述优先级为低;
[0231]
使用所述优先级来确定所述输出是推送通知;
[0232]
生成表示当所述事件发生时将生成通知的确认的输出数据;以及
[0233]
将所述输出数据发送到装置。
[0234]
10.如条款4、5、6、7、8或9所述的计算机实现的方法,所述计算机实现的方法还包括:
[0235]
接收对应于所述输入数据的音频数据;
[0236]
使用自动语音辨识(asr)来处理所述音频数据以确定输入文本数据;
[0237]
使用自然语言理解(nlu)来处理所述输入文本数据以确定指示接收一次所述输出的意图的频率数据;
[0238]
将所述频率数据与所述触发数据相关联;以及
[0239]
在接收所述音频数据之后的时间段期间:
[0240]
接收事件数据,
[0241]
使用所述触发数据来确定所述事件数据相对于所述用户简档触发输出,
[0242]
使用所述优先级来确定输出数据,
[0243]
将所述输出数据发送到装置,以及
[0244]
基于所述频率数据来确定删除所述触发数据。
[0245]
11.如条款4、5、6、7、8、9或10所述的计算机实现的方法,所述计算机实现的方法还包括:
[0246]
接收对应于所述输入数据的音频数据;
[0247]
使用自动语音辨识(asr)来处理所述音频数据以确定输入文本数据;
[0248]
使用自然语言理解(nlu)来处理所述输入文本数据以确定指示生成所述输出的次数的第一频率数据;
[0249]
将所述第一频率数据与所述触发数据相关联;以及
[0250]
在接收所述音频数据之后的时间段期间:
[0251]
接收事件数据,
[0252]
使用所述触发数据来确定所述事件数据相对于所述用户简档触发第一输出,
[0253]
确定指示生成所述输出的剩余次数的第二频率数据,以及
[0254]
将所述第二频率数据与所述触发数据相关联。
[0255]
12.如条款4、5、6、7、8、9、10或11所述的计算机实现的方法,所述计算机实现的方法还包括:
[0256]
使用所述优先级来确定所述输出是通知;
[0257]
确定输出装置包括输出通知数据的能力;
[0258]
确定在所述输出装置处禁用通知数据的接收;
[0259]
生成表示在所述输出装置处启用通知数据的接收的请求的输出数据;以及
[0260]
将所述输出数据发送到所述输出装置。
[0261]
13.一种系统,所述系统包括:
[0262]
至少一个处理器;以及
[0263]
至少一个存储器,所述至少一个存储器包括指令,所述指令在由所述至少一个处理器执行时致使所述系统:
[0264]
接收表示自然语言的输入数据,所述输入数据与用户简档相关联;
[0265]
处理所述输入数据以确定意图数据,所述意图数据指示当事件发生时接收输出的请求;
[0266]
使用所述输入数据来确定表示所述事件的触发数据;
[0267]
确定对应于所述触发数据的优先级;以及
[0268]
将所述触发数据和所述优先级与所述用户简档相关联。
[0269]
14.如条款13所述的系统,其中所述指令在由所述至少一个处理器执行时进一步致使所述系统:
[0270]
确定所述优先级为高;
[0271]
使用所述优先级来确定所述输出是通告;
[0272]
确定输出装置的输出能力包括输出合成语音的能力;
[0273]
生成表示当所述事件发生时将生成通告的确认的输出数据;
[0274]
使用文本转语音(tts)处理来处理所述输出数据以确定输出音频数据;以及
[0275]
将所述输出音频数据发送到所述输出装置。
[0276]
15.如条款13或14所述的系统,其中所述指令在由所述至少一个处理器执行时进一步致使所述系统:
[0277]
确定所述优先级为高;
[0278]
确定第一输出装置不能输出合成语音;
[0279]
使用所述优先级来确定向所述第一输出装置和与所述用户简档相关联的第二输出输出推送通知;
[0280]
生成表示当所述事件发生时将生成通知的确认的输出数据;以及
[0281]
将所述输出数据发送到所述第一输出装置。
[0282]
16.如条款13、14或15所述的系统,其中所述指令在由所述至少一个处理器执行时进一步致使所述系统:
[0283]
确定与所述触发数据相关联的触发类型,所述触发类型指示所述事件将发生的时间;
[0284]
将所述触发类型和所述时间与所述触发数据相关联;
[0285]
生成表示将生成所述事件发生的提醒的确认的输出数据;
[0286]
使用tts处理来处理所述输出数据以确定输出音频数据;以及
[0287]
将所述输出音频数据发送到装置。
[0288]
17.如条款13、14、15或16所述的系统,其中所述指令在由所述至少一个处理器执行时进一步致使所述系统:
[0289]
确定所述优先级为低;
[0290]
使用所述优先级来确定所述输出是推送通知;
[0291]
生成表示当所述事件发生时将生成通知的确认的输出数据;以及
[0292]
将所述输出数据发送到装置。
[0293]
18.如条款13、14、15、16或17所述的系统,其中所述指令在由所述至少一个处理器执行时进一步致使所述系统:
[0294]
接收对应于所述输入数据的音频数据;
[0295]
使用自动语音辨识(asr)来处理所述音频数据以确定输入文本数据;
[0296]
使用自然语言理解(nlu)来处理所述输入文本数据以确定指示接收一次所述输出的意图的频率数据;
[0297]
将所述频率数据与所述触发数据相关联;以及
[0298]
在接收所述音频数据之后的时间段期间:
[0299]
接收事件数据,
[0300]
使用所述触发数据来确定所述事件数据相对于所述用户简档触发输出,
[0301]
使用所述优先级来确定输出数据,
[0302]
将所述输出数据发送到装置,以及
[0303]
基于所述频率数据来确定删除所述触发数据和所述优先级。
[0304]
19.如条款13、14、15、16、17或18所述的系统,其中所述指令在由所述至少一个处理器执行时进一步致使所述系统:
[0305]
接收对应于所述输入数据的音频数据;
[0306]
使用自动语音辨识(asr)来处理所述音频数据以确定输入文本数据;
[0307]
使用自然语言理解(nlu)来处理所述输入文本数据以确定指示生成所述输出的次数的第一频率数据;
[0308]
将所述第一频率数据与所述触发数据相关联;以及
[0309]
在接收所述音频数据之后的时间段期间:
[0310]
接收事件数据,
[0311]
使用所述触发数据来确定所述事件数据相对于所述用户简档触发第一输出,
[0312]
确定指示生成所述输出的剩余次数的第二频率数据,以及
[0313]
将所述第二频率数据与所述触发数据相关联。
[0314]
20.如条款13、14、15、16、17、18或19所述的系统,其中所述指令在由所述至少一个处理器执行时进一步致使所述系统:
[0315]
使用所述优先级来确定所述输出是通知;
[0316]
确定输出装置包括输出通知数据的能力;
[0317]
确定在所述输出装置处禁用通知数据的接收;
[0318]
生成表示在所述输出装置处启用通知数据的接收的请求的输出数据;以及
[0319]
将所述输出数据发送到所述输出装置。
[0320]
本文公开的概念可应用在许多不同的装置和计算机系统(包括例如通用计算系统、语音处理系统和分布式计算环境)内。
[0321]
本公开的以上方面意在是说明性的。所述方面被选择用于说明本公开的原理和应用,并且不意图是详尽性的或限制本公开。所公开的方面的许多修改和变化对本领域技术人员可显而易见。计算机和语音处理领域的普通技术人员应认识到,本文描述的部件和过
程步骤可与其他部件或步骤或者部件或步骤的组合互换,并且仍实现本公开的益处和优点。此外,本领域技术人员应明白,可在不具有本文公开的具体的细节和步骤中的一些或全部的情况下实践本公开。
[0322]
所公开的系统的方面可被实现为计算机方法或制品,诸如存储器装置或非暂时性计算机可读存储介质。计算机可读存储介质可由计算机读取,并且可包括用于致使计算机或其他装置执行本公开描述的过程的指令。计算机可读存储介质可通过易失性计算机存储器、非易失性计算机存储器、硬盘驱动器、固态存储器、闪存驱动器、可移动磁盘和/或其他介质来实现。另外,系统的部件可被实现为固件或硬件,诸如声学前端(afe),其尤其包括模拟和/或数字滤波器(例如,被配置为数字信号处理器(dsp)的固件的滤波器)。
[0323]
除非另有具体说明,或者在所使用的上下文中另外理解,否则本文使用的条件语言诸如“能够”、“可”、“可能”、“可以”、“例如”等通常意图表达某些实施方案包括而其他实施方案不包括某些特征、元件或步骤。因此,此类条件语言一般不意图暗示一个或多个实施方案无论如何都要求特征、元件和/或步骤,或者一个或多个实施方案都必须包括用于在具有或没有其他输入或提示的情况下决定在任何特定实施方案中是否包括或要执行这些特征、元件和/或步骤的逻辑。术语“包括(comprising)”、“包括(including)”、“具有”等是同义的,并且以开放形式作为包括性使用,且不排除附加元件、特征、动作、操作等。此外,术语“或”以其包括性意义(而非排他性意义)使用,使得当用于例如连接元件列表时,术语“或”意指列表中的一个、一些或所有要素。
[0324]
除非另有具体说明,否则诸如短语“x、y、z中的至少一个”的反意连接词语言在上下文中应理解为通常用来表示项目、项等可为x、y或z或者它们的任何组合(例如,x、y和/或z)。因此,这种反意连接语言一般不意图且不应暗示某些实施方案要求分别存在x中的至少一个、y中的至少一个或z中的至少一个。
[0325]
如在本公开中所使用,除非另有具体说明,否则术语“一种”或“一个”可包括一个或多个项。此外,除非另有具体说明,否则短语“基于”意图是指“至少部分地基于”。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1