首页> 中国专利> 用于通过使用应用输出对语音输入的响应的电子装置及其操作方法

用于通过使用应用输出对语音输入的响应的电子装置及其操作方法

摘要

提供了一种人工智能(AI)系统。所述AI系统通过利用诸如深度学习等的机器学习算法以及AI系统的应用来模拟人脑的功能(诸如识别和判断)。一种由电子装置执行的通过使用应用来输出对语音输入的响应的方法包括:接收语音输入;通过对所述语音输入执行语音识别来获得与所述语音输入相应的文本;基于获得的所述文本来获得针对所述语音输入的元数据;基于所述元数据从用于输出对所述语音输入的响应的多个应用中选择至少一个应用;以及通过使用选择的所述至少一个应用来输出对所述语音输入的响应。

著录项

  • 公开/公告号CN112204655A

    专利类型发明专利

  • 公开/公告日2021-01-08

    原文格式PDF

  • 申请/专利权人 三星电子株式会社;

    申请/专利号CN201980034468.3

  • 申请日2019-05-22

  • 分类号G10L15/22(20060101);G10L15/26(20060101);

  • 代理机构11286 北京铭硕知识产权代理有限公司;

  • 代理人张军;曾世骁

  • 地址 韩国京畿道水原市

  • 入库时间 2023-06-19 09:29:07

说明书

技术领域

本公开涉及一种用于通过使用应用输出对语音输入的响应的电子装置及其操作方法。本公开还涉及一种利用诸如深度学习等的机器学习算法的人工智能(AI)系统以及AI系统的应用。

背景技术

AI系统是具有人类水平智能的计算机系统。与现有的基于规则的智能系统不同,AI系统是一个自主训练自身、做出决策并变得越来越智能的系统。AI系统被使用得越多,AI系统的识别率就可提高得越多,并且AI系统可更准确地理解用户的偏好,因此,现有的基于规则的智能系统正逐渐被基于深度学习的AI系统所取代。

AI技术是指机器学习(深度学习)和利用机器学习的元素技术。

机器学习是对输入数据的特征进行自主分类/学习的算法技术。元素技术是通过利用机器学习算法(诸如,深度学习)来模拟人脑功能(诸如,识别和判断)的技术,并且由诸如语言理解、视觉理解、推理/预测、知识表示和运动控制的技术领域组成。

AI技术被应用于如下的各种领域。语言理解是识别和应用/处理人类语言/字符的技术,并且包括自然语言处理、机器翻译、对话系统、查询响应、语音识别/合成等。视觉理解是像人类视觉一样识别和处理对象的技术,并且包括对象识别、对象跟踪、图像搜索、人类识别、场景理解、空间理解、图像增强等。推理预测是获取并逻辑地推断和预测信息的技术,并且包括基于知识/概率的推理、优化预测、基于偏好的规划、推荐等。知识表示是将人类经验信息自动化为知识数据的技术,包括知识构建(数据产生/分类)、知识管理(数据利用)等。运动控制是控制车辆的自主行驶和机器人的运动的技术,并且包括运动控制(导航、碰撞避免和行驶)、操作控制(行为控制)等。

电子装置可使用各种类型的应用来提供对用户的语音输入的响应。例如,当语音输入包括语音命令或语音查询时,电子装置可通过使用利用上述AI技术的各种类型的应用来执行与语音命令或语音查询相应的操作,并且向用户提供指示正在执行的操作的结果的响应。

然而,根据每一个应用的特性,提供给用户的响应的准确度、成功率、处理速度等可以不同。

因此,需要一种通过使用最适合于提供对语音输入的响应的应用来提供对用户的语音输入的适当响应的方法。

上述信息被呈现为背景信息仅用于帮助理解本公开。关于上述内容中的任一项是否可适合于本公开的现有技术,尚未做出确定,也未做出断言。

发明内容

技术方案

本公开的各方面旨在至少解决上述问题和/或缺点,并且至少提供下面描述的优点。因此,本公开的一方面在于提供一种电子装置及其操作方法,其中,所述电子装置根据语音输入来选择用于输出对语音输入的响应的应用并且通过使用所选择的应用来输出对语音输入的响应。

本公开的另一方面在于提供一种计算机程序产品,其中,所述计算机程序产品包括在其上记录有用于在计算机上执行所述方法的程序的非暂时性计算机可读记录介质。将解决的技术方案不限于如上所述的技术问题,还可能存在其他技术问题。

另外的方面将部分地在下面的描述中被阐述,并且部分地将从描述中显而易见,或者可以通过实践所呈现的实施例而被获知。

附图说明

根据结合附图进行的以下描述,本公开的某些实施例的以上和其他方面、特征和优点将更加明显,其中:

图1是示出根据本公开的实施例的用于通过使用应用来提供对语音输入的响应的系统的框图;

图2是用于解释根据本公开的实施例的电子装置的内部配置的框图;

图3是用于解释根据本公开的实施例的电子装置的内部配置的框图;

图4是用于解释根据本公开的实施例的电子装置的内部配置的示图;

图5是根据本公开的实施例的指令处理引擎的包括内部配置的框图;

图6是示出根据本公开的实施例的由电子装置执行的通过使用应用来输出对语音输入的响应的方法的流程图;

图7是示出根据本公开的实施例的由电子装置执行的通过使用应用来输出对语音输入的响应的方法的流程图;

图8是示出根据本公开的实施例的学习偏好信息的方法的流程图;

图9是用于解释根据本公开的实施例的输出对语音输入的响应的示例的示图;

图10是示出根据本公开的实施例的学习偏好信息的示例的示图;

图11是示出根据本公开的实施例的根据对多个语音输入中的每一个语音输入的每一个响应的优先级来执行与每一个响应相应的操作的示例的示图;

图12是示出根据本公开的实施例的基于与语音输入相应的响应来更新偏好信息的示例的示图;

图13是示出根据本公开的实施例的基于与语音输入相应的响应来更新偏好信息的示例的示图;

图14是示出根据本公开的实施例的基于偏好信息处理语音输入的示例的示图;

图15是示出根据本公开的实施例的基于与语音输入相应的响应来更新偏好信息的示例的示图;

图16是示出根据本公开的实施例的基于与语音输入相应的响应来更新偏好信息的示例的示图;

图17是示出根据本公开的实施例的基于偏好信息处理语音输入的示例的示图;

图18是示出根据本公开的实施例的基于与语音输入相应的响应来更新偏好信息的示例的示图;

图19是示出根据本公开的实施例的基于与语音输入相应的响应来更新偏好信息的示例的示图;

图20是示出根据本公开的实施例的基于偏好信息处理语音输入2001的示例的示图;

图21是示出根据本公开的实施例的基于优先级输出多个响应的示例的示图;

图22是示出根据本公开的实施例的基于优先级输出多个响应的示例的示图;

图23是示出根据本公开的实施例的通过另一电子装置输出对语音输入的响应的示例的示图;

图24是示出根据本公开的实施例的通过另一电子装置根据对语音输入的响应来控制外部装置的示例的示图;

图25是示出根据本公开的实施例的电子装置处理语音输入的示例的示图;

图26是示出根据本公开的实施例的多个电子装置处理语音输入的示例的示图;

图27是示出根据本公开的实施例的多个电子装置处理语音输入的示例的示图;

图28是示出根据本公开的实施例的多个电子装置处理语音输入的示例的示图;

图29是示出根据本公开的实施例的多个电子装置处理语音输入的示例的示图;

图30是根据本公开的实施例的处理器的框图;

图31是根据本公开的实施例的数据学习器的框图;

图32是根据本公开的实施例的数据确定器的框图;以及

图33是示出根据本公开的实施例的电子装置和服务器通过彼此交互来学习和确定数据的示例的示图。

贯穿附图,相同的附图标记将被理解为指代相同的部件、组件和结构。

具体实施方式

根据本公开的一方面,提供了一种由电子装置执行的通过使用应用来输出对语音输入的响应的方法。所述方法包括:接收语音输入;通过对所述语音输入执行语音识别来获得与所述语音输入相应的文本;基于获得的所述文本来获得针对所述语音输入的元数据;基于所述元数据从用于输出对所述语音输入的响应的多个应用中选择至少一个应用;以及通过使用选择的所述至少一个应用来输出对所述语音输入的响应。

根据本公开的另一方面,提供了一种用于对用户执行认证的电子装置。所述电子装置包括:用户输入器,被配置为接收语音输入;至少一个处理器,被配置为通过对所述语音输入执行语音识别来获得与所述语音输入相应的文本,基于获得的所述文本来获得针对所述语音输入的元数据,并且基于所述元数据从用于输出对所述语音输入的响应的多个应用中选择至少一个应用;以及输出器,被配置为通过使用选择的所述至少一个应用来输出对所述语音输入的响应。

根据本公开的另一方面,提供了一种计算机程序产品。所述计算机程序产品包括在其上记录有用于在计算机上执行所述方法的程序的非暂时性计算机可读记录介质。

根据结合附图公开了本公开的各种实施例的以下详细描述,本公开的其他方面、优点和显著特征对于本领域技术人员将变得显而易见。

提供参照附图的以下描述以帮助全面理解由权利要求及其等同物限定的本公开的各种实施例。以下描述包括各种具体细节以帮助该理解,但这些将被认为仅仅是示例性的。因此,本领域普通技术人员将认识到,在不脱离本公开的范围和精神的情况下,可对本文所述的各种实施例进行各种改变和修改。另外,为了清楚和简洁,可省略对公知功能和构造的描述。

在以下描述和权利要求中使用的术语和词语不限于书目含义,而是仅由发明人使用以使得能够清楚和一致地理解本公开。因此,对于本领域技术人员应当显而易见的是,提供本公开的各种实施例的以下描述仅用于说明的目的,而不是用于限制由所附权利要求及其等同物限定的本公开的目的。

应当理解的是,除非上下文另有明确规定,否则单数形式包括复数指示物。因此,例如,对“组件表面”的引用包括对一个或更多个这样的表面的引用。

将详细描述本公开的实施例,以便充分传达本公开的范围并且使得本领域普通技术人员能够体现和实践本公开。然而,本公开可以以许多不同的形式被实施,并且不应被解释为限于本文阐述的实施例。此外,附图中与详细描述无关的部分被省略以确保本公开的清楚。附图中相同的附图标记表示相同的元件。

在整个说明书中,将理解的是,当元件被称为“连接”到另一元件时,所述元件可在其间具有中间元件的情况下“直接连接”到另一元件或“电连接”到另一元件。还应当理解的是,当部件“包括”或“包含”元件时,除非另有定义,否则该部件还可包括其他元件,而不排除其他元件。

贯穿本公开,表述“a、b或c中的至少一个”指示仅a、仅b、仅c、a和b两者、a和c两者、b和c两者以及a、b和c全部或仅a、仅b、仅c、a和b两者、a和c两者、b和c两者以及a、b和c全部的变型。

在下文中,将通过参照附图解释本公开的实施例来详细描述本公开。

图1是示出根据本公开的实施例的用于通过使用应用来提供对语音输入的响应的系统的框图。

参照图1,根据本公开的实施例的用于通过使用应用来提供对语音输入的响应的系统100可包括电子装置1000。电子装置1000可从用户接收语音输入100并且输出对接收到的语音输入100的响应。

根据本公开的实施例的电子装置1000可以被实现为各种形式,诸如能够接收语音输入100并输出对接收到的语音输入100的响应的装置。例如,这里描述的电子装置1000可以是数字相机、智能电话、膝上型计算机、平板个人计算机(PC)、电子书终端、数字广播终端、个人数字助理(PDA)、便携式多媒体播放器(PMP)、导航装置、MP3播放器、人工智能扬声器等,但不限于此。

这里所描述的电子装置1000可以是可由用户穿戴的可穿戴装置。可穿戴装置可包括配件型装置(例如,手表、戒指、袖带、脚踝带、项链、眼镜和隐形眼镜)、头戴式装置(HMD)、纺织品或服装集成装置(例如,电子服装)、身体附着装置(例如,皮肤垫)或生物可植入装置(例如,可植入电路)中的至少一个,但不限于此。在下文中,为了便于说明,以电子装置1000为智能手机的情况作为示例进行描述。

根据本公开的实施例,用于由电子装置1000提供对语音输入100的响应的应用可提供用于从用户接收语音输入100并且输出对用户的语音输入100的响应的交互界面。应用可包括但不限于虚拟助理、人工智能(AI)助理等。虚拟助理或AI助理可以是处理用户所需的任务并提供专用于用户的服务的软件代理。

根据本公开的实施例,电子装置1000可对用户的语音输入100执行语音识别以获得与语音输入100相应的文本,并且基于文本,从多个应用中选择用于提供与语音输入100相应的响应的应用。

根据本公开的实施例,电子装置1000可在基于语音输入100获得的元数据的基础上选择适合于处理语音输入100的应用,并且通过使用所选择的应用来输出对语音输入100的响应。

根据本公开的实施例的多个应用可具有不同的特性并且处理语音输入100。

例如,应用中的任何一个可具有控制根据语音输入100预先指定的家用电器的功能。此外,应用中的任何一个可具有与导航相关的控制功能。此外,应用中的任何一个可具有处理与多媒体播放相关的语音输入的功能。

因此,考虑到在每一个应用可处理语音输入100的能力、处理速度和准确度、用于处理语音输入100的数据和可根据语音输入100执行的操作方面存在差异,电子装置1000可选择用于处理语音输入100的应用。

例如,电子装置1000可基于以下信息中的至少一个来从用于输出对由电子装置100接收到的语音输入100的响应的多个应用中选择适合于处理被区分为元数据的语音输入100的至少一个应用:用户针对由多个应用输出的响应的反馈信息、关于由所述多个应用处理语音输入的结果的信息、关于所述多个应用输出响应所花费的时间的信息、关于可由所述多个应用执行的操作的信息或关于所述多个应用的能力的信息中的至少一个。

电子装置不限于上述示例,并且可基于关于所述多个应用的各种信息来选择将用于输出对语音输入100的响应的应用。

所选择的应用可执行与语音输入100相应的操作,基于正被执行的操作的结果来产生响应,并且将所产生的响应提供给用户。

例如,当作为对用户的语音输入100执行语音识别的结果而获得的文本是“打开灯”时,电子装置1000可获得作为文本的关键字的“灯”作为语音输入100的元数据。根据本公开的实施例的电子装置1000可基于包括“灯”的元数据来选择适合于处理语音输入100的至少一个应用。

此外,电子装置1000可通过经由所选择的应用执行与语音输入100相应的操作来输出基于所执行的操作的结果的响应。例如,所选择的应用可与语音输入100“打开灯”相应地执行控制用户周围的电灯的操作,并且基于所执行的操作的结果,输出响应“起居室中的灯1被打开”。

元数据还可包括与语音输入100相关的各种信息以及从与语音输入100相应的文本提取的关键字。

例如,元数据可包括可从文本获得的各种信息,诸如,从与语音输入100响应的文本提取的关键字、基于文本获得的关于用户的意图的信息等。

元数据不限于上述示例,并且除了文本之外还可包括关于语音输入100的声音特性的信息、关于接收语音输入100的电子装置1000的用户的信息等作为与语音输入100相关的信息。

根据本公开的实施例,元数据可包括从与语音输入100相应的文本提取的关键字、基于文本获取的关于用户的意图的信息、关于语音输入100的声音特性的信息、或者关于接收上述语音输入100的电子装置1000的用户的信息中的至少一个。

文本可包括通过对语音输入100执行语音识别而获得的与语音输入100相应的文本。例如,当语音输入100包括由用户发出“打开灯”的语音信号时,则可获得“打开灯”作为与语音输入100相应的文本。

从文本提取的关键字可包括在文本中包括的至少一个词语。例如,关键字可被确定为指示语音输入100的文本的核心内容的词语。可根据从文本提取核心词语的各种方法来提取关键字。

关于用户意图的信息可包括执行语音输入100的用户的意图,其中,可通过文本分析来解释关于用户意图的信息。不仅可进一步考虑文本分析,还可考虑与用户相关的各种信息(诸如,用户的日程信息、关于用户的语音命令历史的信息、关于用户的兴趣的信息、关于用户的生活模式的信息等)来确定关于用户的意图的信息。例如,可将用户的意图确定为与用户期望使用电子装置1000接收的服务有关的内容。

例如,针对文本“打开灯”,关于用户意图的信息可包括“外部装置控制”。外部装置可包括除了电子装置1000之外的可根据电子装置1000的请求而被控制的装置。作为另一示例,除了“外部装置控制”之外,关于用户意图的信息还可包括“紧急救援服务请求”、“信息提供”、“用于电子装置的设置”、“导航功能提供”和“多媒体文件播放”中的一个。关于用户意图的信息(但不限于上述示例)可包括与用户通过语音输入100期望的电子装置1000的操作相关的各种信息。

根据本公开的实施例,可从文本提取至少一个关键字。例如,当提取多个关键字时,基于与用户相关的各种信息(诸如,关于用户的语音命令历史的信息、关于用户的兴趣的信息、关于用户的语音命令的反馈信息),可确定每一个关键字的优先级。再例如,可基于与用户意图相关的程度来确定每一个关键字的优先级。根据本公开的实施例,可根据所确定的优先级来确定每一个关键字的权重,并且根据所确定的权重,可基于至少一个关键字来确定将输出响应的应用。

当从文本提取多个关键字时,基于上述关于用户的各种信息,可选择用于确定将输出响应的应用的至少一个关键字。例如,基于以上描述的针对每一个关键字确定的权重,可选择多个关键字中的至少一个。根据本公开的实施例,所述多个关键字中的至少一个未被选择的关键字可以是包括彼此不矛盾的信息的关键字。

例如,当语音识别的文本是“告诉我驾车到地点A…地点B的方式”时,可提取关键字“地点A”、地点B”和“驾车”。根据本公开的实施例,考虑到用户将“地点A”反说为地点B,电子装置1000可在文本上确定“地点A”是被用户误说的词语的可能性很高,此外,根据用户的日程信息,电子装置1000可确定用户当前将移动到“地点B”的可能性很高。因此,电子装置1000可确定“地点A”和“地点B”中的“地点B”是与用户的意图相应的关键字。根据本公开的实施例,电子装置1000可通过从关键字中排除“地点A”,或者通过将为“地点A”设置低权重来确定将输出响应的应用。

根据本公开的实施例的关于语音输入100的声音特性的信息可包括关于语音输入100的语音信号的特性的信息。例如,关于声音特性的信息可包括接收语音信号的时间、语音信号的长度、语音信号的类型信息(例如,男性、女性和噪声)等。关于声音特性的信息可包括作为关于语音输入100的语音信号的信息的各种类型的信息。

关于用户的信息可包括关于接收语音输入100的电子装置1000的用户的信息,例如,诸如用户的年龄、生活模式、优选的装置、感兴趣的领域等的各种信息。

根据本公开的实施例,电子装置1000可使用AI模型基于从用户接收到的语音输入100从多个应用中选择至少一个应用。例如,电子装置1000可在产生元数据或基于元数据选择应用时使用先前学习的AI模型。

根据本公开的实施例,电子装置1000可在预定时间段内接收多个语音输入100。例如,电子装置1000可在约5秒的时间段内接收从至少一个扬声器接收到的多个语音输入100。

电子装置1000可确定针对与多个语音输入100相应的响应的优先级,并根据所确定的优先级输出响应。例如,当接收到多个语音输入100时,可针对语音输入100中的每一个获得元数据,并且基于元数据,可确定针对与多个语音输入100相应的响应的优先级。例如,可基于包括在元数据中的关于用户意图的信息来确定优先级。此外,基于优先级,可顺序地输出各个语音输入100的响应。

此外,还可基于以下信息中的至少一个来确定关于响应的优先级:关于响应的大小的信息、响应是否包括用户偏好的特性、或者在获得响应之后输出响应所花费的时间。

可基于关于每一个响应的各种信息来确定关于多个响应的优先级,但不限于上述示例。

根据本公开的实施例,根据装置上的AI技术,在不向云服务器发送数据和从云服务器接收数据的情况下,可在电子装置1000上处理用户的语音命令,并且可通过应用输出处理结果。例如,电子装置1000可基于由电子装置1000实时收集的关于用户的各种信息来执行根据本公开的实施例的操作,而不使用存储在云服务器中的大数据。

根据装置上AI技术,电子装置1000可基于自身收集的数据自主学习,并且基于学习的AI模型自行做出决定。根据装置上AI技术,因为电子装置1000不将收集的数据发送到外部而是由其自身操作数据,所以在用户的个人信息保护和数据处理速度方面存在优点。

例如,根据电子装置1000的网络环境是否不稳定,或者在不使用大数据的情况下,仅基于在电子装置1000中收集的信息,根据在电子装置1000中学习的AI模型执行根据本公开的实施例的操作是足够的,电子装置1000可使用装置上AI技术来操作,而不连接到云服务器。

然而,电子装置1000不限于根据装置上AI技术进行操作,并且可通过与云服务器或外部装置的数据发送/接收来执行根据本公开的实施例的操作。此外,电子装置1000可通过结合装置上AI技术和通过与上述云服务器的数据发送/接收的方法来执行根据本公开的实施例的操作。

例如,根据电子装置1000的网络环境和计算能力,当通过云服务器的方法比装置上AI技术更有利时,诸如,通过云服务器的操作在数据处理速度方面更有利或者将不包括用户的个人信息的数据传递到云服务器等,可根据通过云服务器的方法执行根据本公开的实施例的操作。

图2是用于解释根据本公开的实施例的电子装置的内部配置的框图。

图3是用于解释根据本公开的实施例的电子装置的内部配置的框图。

参照图2,电子装置1000可包括用户输入器1100、处理器1300和输出器1200。然而,并非在图2中所示出的所有组件都是电子装置1000的不可缺少的组件。电子装置1000可由比在图2中所示出的组件更多的组件来实现,并且电子装置1000可由比在图2中所示出的组件更少的组件来实现。

例如,参照图3,除了用户输入器1100、处理器1300和输出器1200之外,电子装置1000还可包括感测单元1400、通信器1500、用户输入器1100、音频/视频(A/V)输入器1600和存储器1700。

用户输入器1100是用于用户输入用于控制电子装置1000的数据的装置。例如,用户输入器1100可包括键盘、圆顶开关、触摸板(接触电容型、压力电阻型、红外线检测型、表面超声波传导型、整体张力测量型、压电效应型等)、滚轮、滚轮开关等,但不限于此。

用户输入器1100可接收用户的语音输入100。例如,用户输入器1100可通过设置在电子装置1000中的麦克风接收用户输入的语音输入100。

输出器1200可输出音频信号或视频信号或振动信号,并且可包括显示器1210、声音输出器1220和振动电机1230。

输出器1200可输出包括根据用户的语音输入100执行操作的结果的响应。例如,输出器1200可输出包括通过至少一个应用执行与用户的语音输入100相应的操作的结果的响应。可基于作为对语音输入100执行语音识别的结果而获得的文本来确定执行与语音输入100相应的操作的至少一个应用。

显示器1210可显示和输出由电子装置1000处理的信息。根据本公开的实施例,显示器1210可显示根据用户的语音输入100执行操作的结果。

显示器1210和触摸板可以以层结构被配置为触摸屏。在这种情况下,显示器1210除了被用作输出装置之外还可被用作输入装置。显示器1210可包括液晶显示器、薄膜晶体管液晶显示器、有机发光二极管显示器、柔性显示器、三维(3D)显示器或电泳显示器中的至少一个。根据电子装置1000的实现类型,电子装置1000可包括两个或更多个显示器1210。

声音输出器1220可输出从通信器1500接收到的或存储在存储器1700中的音频数据。声音输出器1220可输出指示根据用户的语音输入100执行操作的结果的音频数据。

振动电机1230可输出振动信号。当触摸被输入到触摸屏时,振动电机1230可输出振动信号。根据本公开的实施例的振动电机1230可输出指示根据用户的语音输入100执行操作的结果的振动信号。

处理器1300通常可控制电子装置1000的整体操作。例如,处理器1300通常可通过执行存储在存储器1700中的程序来控制用户输入器1100、输出器1200、感测单元1400、通信器1500和A/V输入器1600。电子装置1000可包括至少一个处理器1300。

处理器1300可被配置为通过执行基本算法、逻辑和输入/输出操作来处理计算机程序的命令。命令可从存储器1700被提供给处理器1300,或者可通过通信器1500被接收并被提供给处理器1300。例如,处理器1300可被配置为根据存储在记录装置(诸如,存储器)中的程序代码来执行命令。

至少一个处理器1300可通过对用户的语音输入100执行语音识别来获得与语音输入100相应的文本,并且可以从多个应用中选择用于提供与语音输入100相应的响应的应用。

例如,至少一个处理器1300可基于在语音输入100的基础上获得的元数据来选择适合于处理语音输入100的应用,并且可通过所选择的应用向用户提供对语音输入100的响应。

至少一个处理器1300可确定关于对语音输入100的至少一个响应的优先级,并且根据所确定的优先级控制输出所述至少一个响应。

感测单元1400可感测电子装置1000的状态或电子装置1000周围的状态,并且可将感测到的信息发送到处理器1300。

由感测单元1400感测到的信息可被用作与语音输入100相关的元数据。例如,元数据可包括由感测单元1400感测到的与语音输入100相关并且关于用户和周围环境的各种类型的感测信息。因此,电子装置1000可基于包括与语音输入100相关的各种信息的元数据来选择适合于处理语音输入100的应用。

感测单元1400可包括磁传感器1410、加速度传感器1420、温度/湿度传感器1430、红外传感器1440、陀螺仪传感器1450、位置传感器(例如,全球定位系统(GPS))1460、气压传感器1470、接近传感器1480或红绿蓝(RGB)传感器(照度传感器)1490中的至少一个,但不限于此。

通信器1500可包括允许电子装置1000与服务器(未示出)或外部装置(未示出)进行通信的一个或更多个组件。例如,通信器1500可包括短距离无线通信器1510、移动通信器1520和广播接收器1530。

根据本公开的实施例,通信器1500可将关于由电子装置1000接收到的语音输入100的信息发送到云(未示出),其中,所述云处理关于所选择的应用的操作。云(未示出)可接收关于语音输入100的信息,并且根据本公开的实施例,执行与语音输入100相应的操作并将执行操作的结果发送到电子装置1000。根据本公开的实施例,电子装置1000可通过所选择的应用基于从云(未示出)接收到的信息来输出响应。

通信器1500可根据由电子装置1000执行与语音输入100相应的操作的结果来发送用于控制外部装置(未示出)的信号。例如,当语音输入100包括用于控制外部装置(未示出)的命令时,根据本公开的实施例,电子装置1000可通过使用所选择的应用来产生用于控制外部装置(未示出)的控制信号,并且将产生的控制信号发送到外部装置(未示出)。根据本公开的实施例,电子装置1000可通过所选择的应用响应于语音输入100来输出控制外部装置(未示出)的结果。

短距离无线通信器1510可包括蓝牙通信器、蓝牙低功耗(BLE)通信器、近场通信器、无线局域网(WLAN)通信器、WLAN(Wi-Fi)通信器、Zigbee通信器、红外数据协会(IrDA)通信器、Wi-Fi直连(WFD)通信器、超宽带(UWB)通信器、Ant+通信器等,但不限于此。

移动通信器1520可向移动通信网络上的基站、外部终端或服务器中的至少一个发送无线电信号以及从移动通信网络上的基站、外部终端或服务器中的至少一个接收无线电信号。无线电信号可包括根据语音呼叫信号、视频呼叫信号或文本/多媒体消息发送/接收的各种类型的数据。

广播接收器1530可通过广播信道从外部接收广播信号和/或广播相关信息。广播信道可包括卫星信道和地面信道。根据实现示例,电子装置1000可以不包括广播接收器1530。

A/V输入器1600用于输入音频信号或视频信号,并且可包括相机1610,麦克风1620等。相机1610可在视频通信模式或拍摄模式下通过图像传感器获得诸如静止图像或运动图像的图像帧。可通过处理器1300或单独的图像处理器(未示出)处理通过图像传感器捕获的图像。麦克风1620可接收外部声音信号并将所接收的信号处理为电语音数据。

A/V输入器1600可执行接收用户的语音输入100的功能。

存储器1700可存储用于处理和控制处理器1300的程序,并且可存储输入到电子装置1000或从电子装置1000输出的数据。

存储器1700可存储一个或更多个指令,并且上述电子装置1000的至少一个处理器1300可通过执行存储在存储器1700中的一个或更多个指令来执行根据本公开实施例的操作。

根据本公开的实施例的存储器1700可存储用于选择将处理语音输入100的应用所必需的信息。例如,存储器1700可将先前学习的信息存储为选择将处理语音输入100的应用所必需的信息。

存储器1700可包括闪存型、硬盘型、多媒体卡微型、卡型存储器(例如,安全数字(SD)或极速数字(xD)存储器)、随机存取存储器(RAM)、静态RAM(SRAM)、只读存储器(ROM)、电可擦除可编程ROM(EEPROM)、可编程ROM(PROM)、磁存储器、磁盘或光盘中的至少一种类型的存储介质。

存储在存储器1700中的程序可以根据其功能被分类为多个模块,并且可包括例如用户界面(UI)模块1710、触摸屏模块1720、通知模块1730等。

UI模块1710可为每一个应用提供与电子装置1000进行交互的专用UI、图形用户界面(GUI)等。触摸屏模块1720可感测触摸屏上的关于用户的触摸手势,并且可将关于触摸手势的信息发送到处理器1300。根据本公开的一些实施例的触摸屏模块1720可识别和分析触摸码。触摸屏模块1720可被配置为包括控制器的单独硬件。

为了感测触摸屏上的触摸或接近触摸,各种传感器可被布置在触摸屏内部或附近。触觉传感器是用于感测触摸屏上的触摸的传感器的示例。触觉传感器是指用于以人类感觉的水平或以比人类感觉更高的水平感测特定对象的触摸的传感器。触觉传感器可感测各种信息,诸如,接触表面的粗糙度、接触材料的硬度和接触点的温度。

用户的触摸手势可包括轻击、触摸并保持、双击、拖动、煽动(fanning)、轻弹、拖放、滑动等。

通知模块1730可产生用于通知电子装置1000的事件的发生的信号。

图4是用于解释根据本公开的实施例的电子装置的内部配置的示图。

参照图4,电子装置1000可包括作为用于执行与语音输入100相应的操作的配置的指令处理引擎110、存储器130、处理器140、通信器150和虚拟助理引擎120。存储器130、处理器140和通信器150可分别相应于在图3中所示出的存储器1700、处理器1300和通信器1500。

在图4中所示的示例仅是本公开的实施例,并且电子装置1000可利用比在图4中所示出的组件更多或更少的组件来实现。

指令处理引擎110可获得由电子装置1000接收到的语音输入100,并且可选择用于处理语音输入100的至少一个应用。语音输入100可包括请求紧急服务(例如,紧急呼叫和救援电话)、外部装置(例如,家用电器、办公装置、工厂装置等)控制、导航服务、信息(例如,天气、新闻、时间、人物、装置、事件(例如,比赛比分/状态、聚会/会议和约会))服务等的输入。指令处理引擎110可处理在预定时间内从多个用户接收到的多个语音输入100。根据本公开的实施例的指令处理引擎110可将接收到的语音输入100存储在存储器130中。

指令处理引擎110可从电子装置1000中能够处理语音输入100的多个应用121a至121n中选择用于处理语音输入100的至少一个应用。

在本公开的实施例中,指令处理引擎110可检测与应用A 121a相关的事件。应用A121a可以是例如在先前被设置为用于处理语音输入100的应用的应用。例如,由于语音输入100包括指示应用A 121a的信息,因此应用A 121a可在先前被设置为用于处理语音输入100的应用。

根据本公开的实施例,当指令处理引擎110检测到与应用A 121a相关的事件时,指令处理引擎110可检测能够处理语音输入100的多个应用中的至少一个。当指令处理引擎110在语音输入100未被应用A 121a处理之前未检测到上述事件时,在不根据本公开的实施例选择应用的操作的情况下,语音输入100可被应用A 121a处理,并且其结果可响应于语音输入100而被输出。

上述与应用A 121a相关的事件可包括不适合通过应用A 121a处理语音输入100的状态。例如,事件可包括应用A 121a难以使用用于处理语音输入100的数据的状态、应用A121a不能够提供对语音输入100的响应的状态。

应用A 121a难以使用用于处理语音输入100的数据的情况可包括例如,回程装置与云之间的连接不平稳的状态、应用A 121a与回程装置之间的连接的状态、用于处理语音输入100的网络质量恶化的状态等。回程装置可以是指中间装置,其中,电子装置1000连接到该中间装置以连接到外部网络。云可以是服务器装置,其中,应用A 121a连接到该服务器装置以处理语音输入100。例如,应用A 121a可将关于语音输入100的信息发送到云,并且从云接收处理语音输入100的结果。应用A 121a可基于从云接收到的信息来提供对语音输入100的响应。

根据本公开的实施例的应用A 121a不能提供对语音输入100的响应的状态可包括例如这样的状态:因为由于应用A 121a的功能限制而导致应用A 121a不能执行与语音输入100相应的操作,所以应用A 121a不能提供响应。

根据本公开的实施例,指令处理引擎110可周期性地获取可用于处理语音输入100的各种类型的信息,并且将信息存储于存储器130中。例如,信息可包括连接到电子装置1000以交换数据的外部装置的标识信息和IP(互联网协议)地址、关于可用于在外部装置中处理语音输入100的应用的信息、关于可用于在外部装置中处理语音输入100的功能(例如,音乐再现、灯光控制、文本显示等)的信息、关于外部装置的网络质量的信息、关于可用于在电子装置1000中处理语音输入100的应用的信息、关于可用于在电子装置1000中处理语音输入100的应用的功能的信息、电子装置1000的IP地址、关于可用于在电子装置1000中处理语音输入100的网络质量的信息等。信息可包括可用于处理语音输入100的各种信息。

外部装置可包括可根据语音输入100被控制的各种类型的装置,并且可包括例如蓝牙扬声器、Wi-Fi显示器、各种类型的家用电器等。

根据本公开的实施例,指令处理引擎110可从与语音输入100相应的文本提取元数据。例如,当检测到与应用A 121a相关的事件时,指令处理引擎110可从与语音输入100相应的文本提取元数据。例如,可获得“灯”作为针对“打开灯”的语音输入100的元数据。此外,可获得“驾驶”作为针对“向我显示驾驶到金奈的方向”的语音输入100的元数据。

在本公开的实施例中,元数据可包括关于开始语音输入100的时间和终止语音输入100的时间、执行语音输入100的时间段等的信息。元数据还可包括关于语音输入100的语音信号的声音特性的信息,诸如,男性语音、女性语音、儿童语音、噪声等。此外,元数据可包括关于电子装置1000的所有者的信息。

元数据还可包括与用户关于语音输入100的用户意图有关的信息。关于用户意图的信息可包括例如关于电子装置1000的设置信息搜索、外部装置控制、对多个用户的搜索、对电子装置1000的预定操作请求、紧急服务请求等。

根据本公开的实施例,指令处理引擎110可基于包括各种类型的信息的元数据从所述多个应用中选择用于输出对语音输入100的响应的应用B 121b。

此外,指令处理引擎110可基于元数据通过使用针对每一个应用的偏好信息从所述多个应用中选择适合于处理语音输入110的应用B 121b。偏好信息可包括例如根据由元数据进行区分的语音输入100的特性的关于适合于处理语音输入100的应用的信息。电子装置1000可使用偏好信息来选择最适合于处理语音输入100的应用。

可基于与每一个应用的语音输入100的处理相关的各种信息来学习针对每一个应用的偏好信息。例如,可基于用户关于由每一个应用输出的响应的反馈信息、关于由每一个应用处理语音输入100的结果的信息、关于每一个应用输出响应所花费的时间的信息、关于可由每一个应用执行的操作的信息、或者关于每一个应用的能力的信息中的至少一个来学习偏好信息。可基于可用于根据语音输入100的元数据选择适合于处理语音输入100的应用的各种信息来学习偏好信息。

针对每一个应用的偏好信息可被存储在存储器130的数据库131中。

根据本公开的实施例,当提供与语音输入100相应的响应时,可基于由用户输入的评估信息来确定用户的反馈。例如,用户的反馈可以是正面反馈、负面反馈等。

由每一个应用处理语音输入100的结果可基于对语音输入100的响应的内容被确定,并且可包括例如详细结果、简要结果、准确结果、不准确结果、半准确结果等。

可由每一个应用根据语音输入100执行的操作可包括例如为用户导航、控制外部装置(例如,家用电器)、提供信息等。

关于由每一个应用处理语音输入100所花费的时间的信息可包括完成与语音输入100相应的操作或者在操作被执行之后输出响应所花费的时间并且可包括例如10秒、1分钟等。

关于每一个应用的能力的信息可包括例如每一个应用的(例如,基于装置上的、基于集线器的、基于云的)类型、关于处理语音输入100的延迟和吞吐量、关于处理语音输入100的成功率和准确度、每一个应用支持的最大发声持续时间、每一个应用支持的功能(例如,IoT功能、家庭自动化功能、紧急服务提供功能)、每一个应用使用的通信载体(例如,Wi-Fi、蜂窝无线电、蓝牙等)、每一个应用使用的应用协议(例如,超文本传输协议(HTTP)、远程过程调用(gRPC))、关于由每一个应用处理的语音输入100的安全性等。关于每一个应用的能力的信息可包括但不限于上述示例的指示每一个应用的处理能力的各种信息。

在本公开的实施例中,指令处理引擎110可评估针对由电子装置1000接收到的每一个语音输入执行的每一个应用的处理能力,从而获得上述关于应用的能力的信息。指令处理引擎110可基于评估结果更新关于每一个应用的偏好信息。

当预定时间段内接收到多个语音输入100时,指令处理引擎110可选择将被优先处理的语音输入100,并且首先输出所选择的语音输入100,使得对所选择的语音输入100的响应可被快速输出。例如,与其他语音输入相比,指令处理引擎110可优先处理基于每一个语音输入100的元数据确定的电子装置1000的所有者的语音输入100、女性的语音输入100、请求紧急服务的语音输入100等。

指令处理引擎110可以以循环方式使用多个应用来处理语音输入100。循环方式是依次逐步地执行若干处理的方式,并且根据循环方式的语音输入100的处理可由多个应用执行。例如,指令处理引擎110可使用基于语音输入100的元数据选择的多个应用以循环方式处理语音输入100。

根据本公开的实施例,基于元数据选择的应用可将待处理的语音输入100发送到与所选择的应用相应的云。每一个应用可连接到用于处理输入到每一个应用中的语音输入100的云。

所选择的应用可在向云提供语音输入100时从云接收自动语音识别(ASR)响应、自然语言理解(NLU)响应或从文本到语音(TTS)响应中的至少一种类型的响应。电子装置1000可基于从云接收到的各种类型的响应来执行操作,并且基于执行操作的结果来输出与语音输入100相应的响应。

ASR响应可包括作为在云中对语音输入100执行语音识别的结果而获得的文本。电子装置1000可从云获得作为对语音输入100执行语音识别的结果而获得的文本,基于文本执行操作,并且将结果作为对语音输入100的响应提供给用户。例如,当语音输入100是“打开灯”时,电子装置1000可从云接收文本“打开灯”,并且基于文本,基于文本控制用户周围的电灯,并且输出控制电灯的结果。

NLU响应可包括关于在云中对语音输入100执行NLU的结果的信息。电子装置1000可从云获得作为对语音输入100执行NLU的结果的指示语音输入100的含义的信息,基于所获得的信息执行操作,并且将结果提供给用户作为对语音输入(100)的响应。

TTS响应可包括根据TTS技术将在云中响应于语音输入100而输出的文本被转换为语音信号的信息。电子装置1000可在从云接收响应于语音输入100的TTS响应时向用户提供TTS响应作为对语音输入100的响应。例如,当语音输入100是“今天的头条新闻是什么?”时,电子装置1000可响应于语音输入100从云接收关于指示今天的新闻信息的文本被TTS转换成的语音信号的信息。电子装置1000可基于接收到的信息输出对语音输入100的响应。

电子装置1000可从与选择的应用相应的云接收关于处理语音输入100的结果的各种类型的信息,并且基于接收到的信息输出对语音输入100的响应。

根据本公开的实施例,指令处理引擎110可基于元数据选择多个应用。因此,指令处理引擎110可从所选择的多个应用接收多个响应。指令处理引擎110可确定关于所述多个响应的优先级,并且基于所确定的优先级输出至少一个响应。

可基于每一个响应是否是与用户的意图相应的适当响应来确定优先级。例如,可基于在先前基于与各种语音输入100相应的响应而学习的数据来确定响应的优先级。指令处理引擎110可以以优先级的降序输出响应。

根据本公开的实施例,指令处理引擎110可通过用于控制安装在电子装置1000中的应用的应用框架来执行与语音输入100相应的操作。此外,指令处理引擎110可基于执行操作的结果来产生文本响应作为与语音输入100相应的响应。指令处理引擎110可使用TTS技术将产生的文本转换为语音信号,并且通过至少一个扬声器输出语音信号。

根据本公开的实施例,当成功执行根据与语音输入100相应的响应的操作时,指令处理引擎110可从存储器130删除与语音输入100关联存储的数据。例如,成功执行根据响应的操作的情况可包括成功执行输出与语音输入100相应的响应作为语音消息或文本消息的操作、完成根据与语音输入100相应的响应的操作的操作等的情况。

存储器130可存储数据库131,其中,数据库131包括偏好信息和执行根据本公开的实施例的用于处理语音输入100的操作所必需的信息。

处理器140可被配置为执行包括根据本公开的实施例的用于处理语音输入100的操作的各种操作。

通信器150可被配置为允许电子装置1000通过有线/无线连接与外部装置或云进行通信。

虚拟助理引擎120可包括用于处理由电子装置1000接收到的语音输入100并输出响应的多个应用,诸如,应用A 121a、应用B 121b、应用C 121c、应用n 121n等。

图5是根据本公开的实施例的指令处理引擎的包括内部配置的框图。

参照图5,指令处理引擎110可包括事件检测器111、元数据产生器112、应用选择器113、语音输入提供器114、响应优先级确定引擎115和偏好分析引擎116。

在图5中所示出的示例仅是本公开的实施例,并且电子装置1000可利用比在图4中所示出的组件更多或更少的组件来实现。

事件检测器111可从用户接收语音输入100并且检测与第一应用相关的事件。第一应用可以是预定应用,例如,输出对语音输入100的响应的应用。然而,当检测到包括第一应用不能输出对语音输入100的响应的状态的事件时,可执行选择将处理语音输入100的应用的操作。

元数据产生器112可根据由事件检测器111检测到的事件基于语音输入100产生元数据。可基于通过对语音输入100执行语音识别而获得的文本来产生元数据。

应用选择器113可基于元数据和偏好信息来选择在电子装置1000中可用的多个应用中的至少一个。

语音输入提供器114可将语音输入100发送到由应用选择器113选择的至少一个应用。例如,语音输入提供器114可优先将语音输入100发送到多个应用中的根据本公开的实施例选择的能够处理语音输入100的应用。另外,语音输入提供器114可将语音输入100发送到多个应用中的根据本公开的实施例选择的处于通过另一语音查询进行的操作终止之后可处理语音输入100的状态的应用。

当存在多个语音输入100时,根据本公开的实施例的语音输入提供器114可优先将具有短语音信号的语音输入100、由电子装置1000的所有者进行的语音输入100、由女性进行的语音输入100、请求紧急服务的语音输入100等发送到通过本公开的实施例选择的应用。

语音输入提供器114可将语音输入100传输到所述多个应用,使得语音输入100可由根据本公开的实施例选择的多个应用以循环方式处理。接收语音输入100的多个应用可将对语音输入100的响应发送到指令处理引擎110。

响应优先级确定引擎115可确定从至少一个应用接收到的至少一个响应的优先级。可根据由响应优先级确定引擎115确定的优先级从电子装置1000输出响应。例如,可按照优先级的顺序依次输出响应,或者可仅输出预定优先级范围内的响应。

根据本公开的实施例,当针对一些响应确定的优先级相同时,可按照从电子装置1000中的应用接收到响应的顺序来顺序地输出具有相同优先级的响应。

偏好分析引擎116可基于与每一个应用对语音输入100的处理相关的各种信息来学习针对每一个应用的偏好信息。例如,根据由元数据区分的语音输入100的特性,偏好信息可包括关于适合于处理语音输入100的应用的信息。根据本公开的实施例,由偏好分析引擎116学习的偏好信息可被用于选择用于输出与语音输入100相应的响应的应用。

图6是示出根据本公开的实施例的由电子装置1000执行的通过使用应用来输出对语音输入的响应的方法的流程图。

参照图6,在操作610,电子装置1000可接收语音输入。语音输入可包括例如用于请求用户期望的操作的语音命令。

在操作620,电子装置1000可对在操作610接收到的语音输入执行语音识别以获得与语音输入相应的文本。例如,当语音输入包括用户发出的语音信号“打开灯”时,可获得“打开灯”作为与语音输入相应的文本。

在操作630,电子装置1000可基于在操作620中获得的文本来获得针对语音输入的元数据。例如,元数据可包括可基于文本获得的各种信息,诸如从文本提取的关键字、从文本确定的用户的意图等。元数据还可包括与语音输入相关的各种信息以及基于与语音输入相应的文本获得的信息,但不限于上述示例。

在操作640,电子装置1000可基于在操作630获得的元数据从在电子装置1000中可用的多个应用选择至少一个应用。在电子装置1000中可用的所述多个应用可包括可被用于输出对语音输入的响应的应用。

根据本公开的实施例,除了元数据之外,电子装置1000还可使用针对每一个应用的偏好信息来选择将用于输出对语音输入的响应的应用。偏好信息可包括关于适合于例如根据由元数据区分的语音输入的特性处理语音输入的应用的信息。

在操作650,电子装置1000可通过使用选择的应用来输出对语音输入的响应。例如,电子装置1000可将语音输入发送到选择的应用,并且通过应用执行与语音输入相应的操作。另外,可由电子装置1000输出指示执行操作的结果的响应。

根据本公开的实施例,基于输出对语音输入的响应的结果,根据本公开的实施例,可更新可用于选择应用的偏好信息。

图7是示出根据本公开的实施例的由电子装置执行的通过使用应用输出对语音输入的响应的方法的流程图。

参照图7,在操作710,电子装置1000可接收语音输入。例如,电子装置1000可从至少一个用户接收至少一个语音输入。

在操作720,电子装置1000可检测与应用A 121a相关的事件。与应用A 121a相关的事件可包括例如不可通过在先前被确定为输出对语音输入的响应的应用的应用A 121a输出对语音输入的响应的状态。因此,电子装置1000可根据事件的检测来执行用于选择用于处理语音输入的应用的操作。

在操作730,电子装置1000可获得针对语音输入的元数据。针对语音输入的元数据可包括可基于通过对语音输入执行语音识别而获得的文本来获得的各种信息。例如,元数据可包括可基于文本获得的信息,诸如从与语音输入相应的文本提取的关键字、用户的意图等。

在操作740,电子装置1000可基于元数据从多个应用中选择用于处理语音输入的至少一个应用B 121b。根据本公开的实施例的电子装置1000可基于在先前学习的数据根据元数据选择适合于处理语音输入的至少一个应用B 121b。此外,除了元数据之外,电子装置1000还可通过使用针对每一个应用的偏好信息来选择至少一个应用B 121b。

在操作750,电子装置1000可将语音输入发送到在操作740选择的应用B 121b。应用B 121b可以执行与语音输入相应的操作,并且基于执行操作的结果来获得响应。

在操作760,电子装置1000可在将语音输入发送到至少一个应用B 121b之后确定是否在先前指定的时间段内从至少一个应用B 121b获得多个响应。例如,当在操作740中选择多个应用B 121b时,可获得多个响应。

在操作750,当在将语音输入发送到至少一个应用B 121b之后经过了先前指定的时间段时,电子装置1000可确定向用户提供从应用B 121b接收到的响应在时间上太晚,并且不可输出对语音输入的响应。

当在先前指定的时间段内从至少一个应用B 121b仅获得一个响应时,在操作762,电子装置1000可输出获得的一个响应作为对语音输入的响应。

另一方面,当在先前指定的时间段内从至少一个应用B 121b获得多个响应时,则在操作770,电子装置1000可确定每一个响应的优先级。例如,可基于先前学习的用于确定每一个响应是否是与用户的意图相应的适当响应的数据来确定优先级。

在操作780,电子装置1000可确定在操作770确定的优先级是否相同。

当关于各个响应的优先级全部相同时,电子装置1000可在操作790输出所述多个响应而不考虑优先级。例如,电子装置1000可根据首先从各个应用B 121b接收响应的顺序来输出所述多个响应,而不考虑优先级。

另一方面,当各个响应的优先级不同时,电子装置1000可在操作782基于优先级对响应进行分类,并且在操作784输出分类的响应。例如,电子装置1000可根据优先级顺序地输出所述多个响应,或者以最高优先级的顺序输出预定数量的响应。当存在三个预定数量的响应时,可仅顺序地输出具有最高优先级的两个响应。

另外,当存在具有相同优先级的一些响应时,电子装置1000可对首先从各个应用B121b接收到的响应进行优先级排序以再次确定优先级。

当获得对语音输入的多个响应时,电子装置100可通过使用各种方法来输出所述多个响应,但不限于上述示例。

图8是示出根据本公开的实施例的学习偏好信息的方法的流程图。

参照图8,在操作810,电子装置1000可对作为用于学习偏好信息的信息的与每一个应用处理语音输入相关的各种信息进行分析。

可在根据本公开的实施例的输出对语音输入的响应之后基于用于输出响应的应用和用于输出响应的各种信息来执行根据本公开的实施例的学习偏好信息的步骤。

例如,在操作810,电子装置1000可对关于用户对由每一个应用对语音输入的响应的反馈的信息、由每一个应用处理语音输入的结果、由每一个应用处理语音输入所花费的时间、可由每一个应用根据语音输入执行的操作的类型、每一个应用的能力等进行分析,并且基于分析的结果学习偏好信息。

可在操作810对用于学习偏好信息的各种类型的信息进行分析,但不限于上述示例。

在操作820,电子装置1000可基于在操作810分析的信息来学习针对每一个应用的偏好信息。

图9是用于解释根据本公开的实施例的输出对语音输入的响应的示例的示图。

参照图9,电子装置1000可以是用于输出对语音输入100的响应的配置,并且可包括语音输入器910、指令处理引擎920、数据库930、第一应用940、第二应用960和应用控制器990。然而,并非在图9中所示出的所有组件都是电子装置1000的不可缺少的组件。电子装置1000可由比在图9中所示出的组件更多的组件来实现,并且电子装置1000可由比在图9中所示出的组件更少的组件来实现。

参照图9,可通过语音输入器910接收语音输入100“打开灯”。语音输入器910可将语音输入100发送到指令处理引擎920。

指令处理引擎920可从语音输入100提取元数据。指令处理引擎920可对语音输入100执行语音识别以获得与语音输入100相应的文本并且基于文本获得元数据。

例如,针对语音输入100“打开灯”,可获得“灯”作为元数据。此外,指令处理引擎920可通过对与语音输入100相应的文本进行分析来确定用户的意图是“外部装置控制”,并且获得“外部装置控制”作为元数据。

数据库930可包括偏好信息,其中,所述偏好信息是关于适合于根据可被识别为元数据的语音输入100的特性来处理语音输入100的应用的信息。指令处理引擎920可基于元数据从数据库930获得相应的偏好信息,并且可基于偏好信息选择适合于处理语音输入100的至少一个应用。

根据本公开的实施例,可基于用户对由电子装置1000中可用的多个应用输出的响应的反馈、关于成功地由所述多个应用输出响应的语音输出的信息、所述多个应用输出响应所花费的时间、或者关于可由所述多个应用执行的操作的信息中的至少一个来学习偏好信息。可基于用于根据语音输入100的元数据选择适合于处理语音输入100的至少一个应用的各种信息来学习偏好信息。

指令处理引擎920可识别可用于由电子装置1000处理语音输入100的第一应用940和第二应用960。第一应用940可连接到第一云950以通过第一云950处理语音输入100并且提供与语音输入100相应的响应。第二应用960也可连接到第二云970以通过第二云970处理语音输入100并且提供与语音输入100相应的响应。

指令处理引擎920可从可用于由电子装置1000处理语音输入100的第一应用940和第二应用960中选择第二应用960作为适合于语音输入100的应用。指令处理引擎920可将语音输入100发送到选择的第二应用960。

第二应用960可通过第二云970处理语音输入100,并且可执行与语音输入100相应的操作。例如,当用户位于起居室中时,第二应用960可通过指令处理引擎920将作为与语音输入100相应的操作的打开“起居室中的灯1”的控制操作发送到应用控制器990,并且执行所述控制操作。应用控制器990可控制在电子装置1000中可用的另一应用来执行上述控制操作。

例如,当能够控制灯的第三应用在电子装置1000中可用时,应用控制器990可通过指令处理引擎920从第二应用960接收关于用于打开“起居室中的灯1”的控制操作的信息。此外,应用控制器990可通过使用接收到的关于控制操作的信息控制第三应用来执行用于打开“起居室中的灯1”的控制操作。另外,应用控制器990可获得执行控制操作的结果,并且将所述结果发送到第二应用960。

第二应用960可基于执行控制操作的结果产生并输出对语音输入100的响应消息。例如,当成功执行打开“起居室中的灯1”的控制操作时,第二应用960可输出“打开了起居室中的灯1”作为对语音输入100的响应消息。

另外,当打开“起居室中的灯1”的控制操作失败时,第二应用960可输出“未能打开起居室中的灯1”作为对语音输入100的响应消息。

另外,当作为执行控制操作的结果,控制操作失败时,第二应用960可执行与语音输入100相应的另一控制操作。例如,第二应用960可重试执行用于打开“位于起居室中的灯2和灯3”的控制操作。

图10是示出根据本公开的实施例的学习偏好信息的示例的示图。

参照图10,可基于由第一应用940和第二应用960处理相同的语音输入的结果来学习针对每一个应用的偏好信息。

可由根据本公开的实施例的电子装置1000基于语音输入的元数据来选择第一应用940和第二应用960,并且可由第一应用940和第二应用960处理语音输入。

根据本公开的实施例,针对语音输入“打开灯”的元数据可包括作为关键字信息的“灯”和作为关于用户的意图的信息的“家用电器控制”。

第一应用940未能处理语音输入,并且从电子装置1000接收语音输入以输出指示失败结果的响应所花费的时间可被测量为1500ms。

另一方面,第二应用960成功处理语音输入,并且从电子装置1000接收语音输入以输出指示成功结果的响应所花费的时间可被测量为800ms。

在本公开的实施例中,假设用户不给出对由第一应用940和第二应用960输出的响应的反馈。

偏好分析引擎116可基于用户对每一个应用的响应的反馈、关于每一个应用成功输出响应的语音输出的信息、每一个应用输出响应所花费的时间、或者关于每一个应用根据语音输入可执行的操作的信息中的至少一个来学习偏好信息。偏好分析引擎116可分析和学习与每一个应用处理语音输入的操作相关的各种信息,但不限于上述示例。根据本公开的实施例的偏好信息可被学习,使得可根据由元数据进行区分的语音输入来选择出适当的应用。

根据在图10中所示出的本公开的实施例,偏好分析引擎116可基于关于由每一个应用成功输出响应的语音输出的信息以及每一个应用输出对语音输入的响应所花费的时间来学习针对每一个应用的偏好信息。由偏好分析引擎116学习的偏好信息可被存储在数据库131中,或者先前存储在数据库131中的针对每一个应用的偏好信息可基于学习的偏好信息被更新。

然后应用选择器113可选择用于处理由电子装置1000接收到的另一语音输入的应用。应用选择器113可基于由偏好分析引擎116学习的偏好信息来选择应用。

当针对其他语音输入的元数据包括作为关键字信息的“光”和作为关于用户的意图的信息的“家用电器控制”时,应用选择器113可选择第二应用960作为用于语音输入的最佳应用。

图11是示出根据本公开的实施例的根据对多个语音输入中的每一个语音输入的每一个响应的优先级来执行与每一个响应相应的操作的示例的示图。

参照图11,电子装置1000可接收作为多个语音输入的第一语音输入、第二语音输入和第三语音输入,并且选择将分别处理多个语音输入的第一应用940、第二应用960和第三应用980。电子装置1000可在预定时间段内接收多个语音输入,并且根据优先级处理和输出与每一个语音输入相应的响应。例如,电子装置1000可根据基于与多个语音输入中的每一个相应的文本的元数据来选择第一应用940、第二应用960和第三应用980。

第一应用940、第二应用960和第三应用980可分别输出响应R1、响应R2和响应R3作为对由电子装置1000接收到的语音输入的响应。从根据本公开的实施例的各个应用输出的响应R1、响应R2和响应R3可包括用于根据与语音输入相应的操作来控制其他应用的信息。例如,当语音输入是“打开灯”时,对语音输入的响应可包括用于通过另一应用控制起居室中的灯1的信息。

响应优先级确定引擎115可基于关于优先级确定标准117的信息确定从各个应用输出的响应R1、响应R2和响应R3中的每一个的优先级。根据本公开的实施例,可基于与响应相关的用户的意图、响应的大小、响应是否包括用户偏好的特性、或者关于在获得响应之后由电子装置1000输出响应所花费的时间的信息中的至少一个来确定优先级。可根据各种标准来确定优先级,但不限于上述示例。

例如,根据优先级确定标准117,针对用户的意图,可将包括关于紧急服务的信息的响应确定为最高优先级,并且可将包括关于音乐播放控制的信息的响应确定为最低优先级。

根据本公开的实施例,响应R1可包括与音乐播放相关的控制信息,响应R2可包括与紧急服务相关的控制信息,并且响应R3可包括与家用电器控制相关的控制信息。根据优先级确定标准117,响应优先级确定引擎115可按照与紧急服务相关的响应R2、与家用电器控制相关的响应R3以及与音乐播放相关的响应R1的顺序确定每一个响应的优先级。

参照图11,动作A1、动作A2和动作A3分别表示相应于响应R1、响应R2和响应R3的操作。

根据本公开的实施例,响应优先级确定引擎115可促使应用控制器170按照动作A2、动作A3和动作A1的顺序操作,使得与响应相应的操作可按照响应R2、响应R3和响应R1的顺序被执行。

例如,响应优先级确定引擎115可请求应用控制器990首先执行与紧急服务相关的操作,使得与响应R1相应的操作可首先被执行。

另外,第一应用940、第二应用960和第三应用980可获得执行与每一个响应相应的操作的结果,并且向用户输出指示执行操作的结果的响应。

根据本公开的实施例,当针对每一个响应的操作完成时,电子装置1000可按照首先产生响应的顺序输出由第一应用940、第二应用960和第三应用980产生的响应。可选地,电子装置1000可根据由响应优先级确定引擎115确定的优先级通过第一应用940、第二应用960和第三应用980顺序地输出响应。

电子装置1000可根据各种顺序和方法通过使用第一应用940、第二应用960和第三应用980来提供对所述多个语音输入的多个响应。

图12是示出根据本公开的实施例的基于与语音输入相应的响应来更新偏好信息的示例的示图。

参照图12,当第一应用940被执行时,可在显示第一应用940的界面的屏幕1202上输出指导消息1203“我可以做什么?”。

根据本公开的实施例,第一应用940可在先前被确定为输出对语音输入1201的响应的应用。然而,当检测到包括第一应用940不能输出对语音输入1201的响应的状态的事件时,可执行根据本公开的实施例的选择将处理语音输入1201的应用的操作。

在输出引导消息1203之后,可从用户接收语音输入1201“向我显示驾驶到金奈的方向”。根据本公开的实施例,当通过调用第一应用940的用户输入执行第一应用940时,语音输入1201可由第一应用940处理。

作为对语音输入1201执行语音识别的结果,可显示与语音输入1201相应的文本1204。此外,如在图12中所示出的,作为与语音输入1201相应的响应1205和响应1206,可提供显示驾驶到金奈的方向的导航功能。

电子装置1000可基于在第一应用940中处理的语音输入1201以及对语音输入1201的响应1205和响应1206来更新第一应用940的偏好信息。

例如,电子装置1000可基于作为针对语音输入1201的元数据的包括“驾驶”的元数据和指示对语音输入1201的响应成功的信息来更新第一应用940的偏好信息。

图13是示出根据本公开的实施例的基于与语音输入相应的响应更新偏好信息的示例的示图。

参照图13,在正在执行第二应用960的状态下,可从用户接收语音输入1301“向我显示驾驶到金奈的方向”。

根据本公开的实施例,当通过调用第二应用960的用户输入执行第二应用960时,语音输入1301可由第二应用960处理。

根据本公开的实施例,第二应用960可在先前被确定为输出对语音输入1301的响应的应用。然而,当检测到包括第二应用960不能输出对语音输入1301的响应的状态的事件时,可执行根据本公开的实施例的选择将处理语音输入1301的应用的操作。

作为对语音输入1301执行语音识别的结果,在显示第二应用960的界面的屏幕1302上可显示与语音输入1301相应的文本1303。另外,第二应用960可显示指示处理语音输入1301失败的响应1304。例如,与第一应用940不同,第二应用960可能由于无法理解语音输入1301或者无法执行与语音输入1301相应的操作而无法处理语音输入1301。

电子装置1000可基于在第二应用960中接收到的语音输入1301和对语音输入1301的响应1304来更新第二应用960的偏好信息。

例如,电子装置1000可基于作为针对语音输入1301的元数据的包括“驾驶”的元数据和指示对语音输入1301的响应1304失败的信息来更新第二应用960的偏好信息。

图14是示出根据本公开的实施例的基于偏好信息处理语音输入1401的示例的示图。

参照图14,电子装置1000可包括作为用于处理语音输入1401的组件的第一应用940、第二应用960和指令处理引擎110。

根据本公开的实施例,电子装置1000可接收语音输入1401“向我显示驾驶到金奈的方向”。根据本公开的实施例,在第一应用940和第二应用960都未被执行的状态下,当接收到语音输入1401时,可执行根据本公开的实施例的选择用于处理语音输入1401的应用的操作。此外,由于用于处理语音输入1401的应用没有被用户选择,所以可执行根据本公开的实施例的选择用于处理语音输入1401的应用的操作。另外,当检测到包括在先前被确定为输出对语音输入1401的响应的应用的应用不能输出对语音输入1401的响应的状态的事件时,可执行根据本公开的实施例的选择用于处理语音输入1401的应用的操作。

指令处理引擎110可基于在图12和图13的本公开的实施例中更新的第一应用940和第二应用960的偏好信息来选择用于处理语音输入1401的应用。

指令处理引擎110可从语音输入1401获得元数据以用于选择用于处理语音输入1401的应用。可基于与语音输入1401相应的文本来获得元数据。由于从语音输入1401获得的元数据包括“驾驶”,所以指令处理引擎110可基于在先前存储在指令处理引擎110中的偏好信息来选择第一应用940作为适合于处理包括“驾驶”的语音输入1401的应用。

例如,指令处理引擎110可从第一应用940和第二应用960中选择在处理与元数据“驾驶”相应的语音输入1401的结果中成功的第一应用940。

第一应用940可根据指令处理引擎110的选择来处理语音输入1401,并且作为选择的结果输出与语音输入1401相应的响应。

图15是示出根据本公开的实施例的基于与语音输入相应的响应来更新偏好信息的示例的示图。

参照图15,当调用第一应用940的唤醒词被输入到电子装置1000时,可执行第一应用940并且可由第一应用940处理语音输入1501。

参照图15,当第一应用940被执行时,可在显示第一应用940的界面的屏幕1502上输出指导消息1503“我可以做什么?”。

根据本公开的实施例,第一应用940可在先前被确定为输出对语音输入1501的响应的应用。然而,当检测到包括第一应用940不能输出对语音输入1501的响应的状态的事件时,可执行根据本公开的实施例的选择将处理语音输入1501的应用的操作。

在输出指导消息1503之后,可从用户接收语音输入1501“班加罗尔在下雨吗?”。根据本公开的实施例,当由调用第一应用940的用户输入执行第一应用940时,可由第一应用940处理语音输入1501。

作为对语音输入1501执行语音识别的结果,可显示与语音输入1501相应的文本1504。另外,如在图15中所示出的,班加罗尔的天气信息可被显示为与语音输入1501相应的响应1505和响应1506。

电子装置1000可基于在第一应用940中处理的语音输入1501以及对语音输入1501的响应1505和响应1506来更新第一应用940的偏好信息。

例如,电子装置1000基于作为针对语音输入1501的元数据的包括“雨”的元数据和指示对语音输入1501的响应成功的信息来更新第一应用940的偏好信息。

另外,电子装置1000可接收负面反馈作为针对对语音输入1501的响应1505和1506的用户反馈。根据本公开的实施例,由于由第一应用940提供的响应1505和响应1506包括不正确的内容,所以可从用户接收负面反馈。电子装置1000可基于负面反馈来更新第一应用940的偏好信息。

图16是示出根据本公开的实施例的基于与语音输入相应的响应来更新偏好信息的示例的示图。

参照图16,当调用第二应用960的唤醒词被输入到电子装置1000时,可执行第二应用960并且可由第二应用960处理语音输入1601。

参照图16,在正在执行第二应用960的状态下,可从用户接收语音输入1601“班加罗尔在下雨吗?”。

根据本公开的实施例,第二应用960可在先前被确定为输出对语音输入1601的响应的应用。然而,当检测到包括第二应用960不能输出对语音输入1601的响应的状态的事件时,可执行根据本公开的实施例的选择将处理语音输入1601的应用的操作。

作为对语音输入1601执行语音识别的结果,可在显示第二应用960的界面的屏幕1602上显示与语音输入1601相应的文本1603。另外,如图16中所示出的,班加罗尔的天气信息可被显示为与语音输入1601相应的响应1604和响应1605。

根据本公开的实施例的电子装置1000可基于在第二应用960中接收的语音输入1601以及对语音输入1601的响应1604和响应1605来更新第二应用960的偏好信息。

例如,电子装置1000可基于作为针对语音输入1601的元数据的包括“雨”的元数据和指示对语音输入1601的响应成功的信息来更新第二应用960的偏好信息。

另外,电子装置1000可接收正面反馈作为针对对语音输入1601的响应1604和响应1605的用户反馈。根据本公开的实施例,当由第二应用960提供的响应1604和响应1605包括准确且详细的内容时,可从用户接收正面反馈。电子装置1000可基于正面反馈来更新第二应用960的偏好信息。

图17是示出根据本公开的实施例的基于偏好信息处理语音输入的示例的示图。

参照图17,电子装置1000可包括作为用于处理语音输入1701的组件的第一应用940、第二应用960和指令处理引擎110。

根据本公开的实施例,电子装置1000可接收语音输入1701“班加罗尔在下雨吗?”。根据本公开的实施例,在第一应用940和第二应用960两者都未被执行的状态下,当接收到语音输入1701时,可执行根据本公开的实施例的选择用于处理语音输入1701的应用的操作。此外,由于用于处理语音输入1701的应用没有被用户选择,所以可执行根据本公开的实施例的选择用于处理语音输入1701的应用的操作。另外,当检测到包括先前被确定为输出对语音输入1701的响应的应用的应用不能输出对语音输入1701的响应的状态的事件时,可执行根据本公开的实施例的选择将处理语音输入1701的应用的操作。

例如,当语音输入1701不包括指示将处理语音输入1701的应用的信息时,可执行根据本公开的实施例的选择用于处理语音输入1701的应用的操作。

指令处理引擎110可基于在图15和图16的本公开的实施例中更新的第一应用940和第二应用960的偏好信息来选择用于处理语音输入1701的应用。

指令处理引擎110可从语音输入1701获得元数据用于选择用于处理语音输入1701的应用。可基于与语音输入1701相应的文本来获得元数据。由于从语音输入1701获得的元数据包括“雨”,所以指令处理引擎110可基于先前存储在指令处理引擎110中的偏好信息来选择第二应用960作为适合于处理包括“雨”的语音输入1701的应用。

例如,指令处理引擎110可在第一应用940和第二应用960中选择第二应用960,其中,第二应用960在处理包括在先前存储的偏好信息中的元数据“雨”的语音输入1701的结果中是成功的,并且第二应用960在用户反馈中是正面的。

第二应用960可根据指令处理引擎110的选择来处理语音输入1701,并且作为选择的结果输出与语音输入1701相应的响应。

图18是示出根据本公开的实施例的基于与语音输入相应的响应来更新偏好信息的示例的示图。

参照图18,当调用第一应用940的唤醒词被输入到电子装置1000时,可执行第一应用940并且可由第一应用940处理语音输入1801。

参照图18,当第一应用940被执行时,可在显示第一应用940的界面的屏幕1802上输出指导消息1803“我可以做什么?”。

根据本公开的实施例,第一应用940可在先前被确定为输出对语音输入1801的响应的应用。然而,当检测到包括第一应用940不能输出对语音输入1801的响应的状态的事件时,可执行根据本公开的实施例的选择将处理语音输入1801的应用的操作。

在输出指导消息1803之后,可从用户接收语音输入1801“欧盟的总部在哪里?”。根据本公开的实施例,当第一应用940由调用第一应用940的用户输入执行时,可由第一应用940处理语音输入1801。

作为对语音输入1801执行语音识别的结果,可显示与语音输入1801相应的文本1804。另外,如在图18中所示出的,关于欧盟总部布鲁塞尔的信息可被显示为与语音输入1801相应的响应1805和响应1806。

电子装置1000可基于在第一应用940中处理的语音输入1801以及对语音输入1801的响应1805和响应1806来更新第一应用940的偏好信息。

例如,电子装置1000可基于作为针对语音输入1801的元数据的包括“总部”的元数据和指示对语音输入1801的响应成功的信息来更新第一应用940的偏好信息。

另外,电子装置1000可测量在语音输入1801被接收到之后针对语音输入1801的响应1805和响应1806被显示在界面1802上所花费的时间,并且可基于作为测量的时间的时间信息“1.3秒”来更新第一应用940的偏好信息。

图19是示出根据本公开的实施例的基于与语音输入相应的响应来更新偏好信息的示例的示图。

参照图19,当调用第二应用960的唤醒词被输入到电子装置1000时,可执行第二应用960并且可由第二应用960处理语音输入1901。

参照图19,在正在执行第二应用960的状态下,可从用户接收语音输入1901“欧盟的总部在哪里?”。

根据本公开的实施例,当通过调用第二应用960的用户输入执行第二应用960时,可由第二应用960处理语音输入1901。

根据本公开的实施例,第二应用960可在先前被确定为输出对语音输入1901的响应的应用。然而,当检测到包括第二应用960不能输出对语音输入1901的响应的状态的事件时,可执行根据本公开的实施例的选择将处理语音输入1901的应用的操作。

作为对语音输入1901执行语音识别的结果,可在显示第二应用960的界面的屏幕1902上显示与语音输入1901相应的文本1903。另外,如在图19中所示出的,关于欧盟的总部布鲁塞尔的信息可被显示为与语音输入1601相应的响应1904和响应1905。

电子装置1000可基于在第二应用960中接收的语音输入1901以及对语音输入1901的响应1904和响应1905来更新第二应用960的偏好信息。

例如,电子装置1000可基于作为针对语音输入1901的元数据的包括“总部”的元数据和指示对语音输入1901的响应成功的信息来更新第二应用960的偏好信息。

另外,电子装置1000可测量在语音输入1901被接收到之后针对语音输入1901的响应1905和响应1906被显示在界面1902上所花费的时间,并且可基于作为测量的时间的时间信息“2秒”来更新第一应用940的偏好信息。

图20是示出根据本公开的实施例的基于偏好信息处理语音输入2001的示例的示图。

参照图20,电子装置1000可包括作为用于处理语音输入2001的组件的第一应用940、第二应用960和指令处理引擎110。

根据本公开的实施例,电子装置1000可接收语音输入2001“欧盟的总部在哪里?”。根据本公开的实施例,在第一应用940和第二应用960两者都没有被执行的状态下,当语音输入2001被接收时,可执行根据本公开的实施例的选择用于处理语音输入2001的应用的操作。此外,根据本公开的实施例,由于用于处理语音输入2001的应用没有被用户选择,所以可执行选择用于处理语音输入2001的应用的操作。另外,当检测到包括先前被确定为输出对语音输入2001的响应的应用的应用不能输出对语音输入2001的响应的状态的事件时,可执行根据本公开的实施例的选择用于处理语音输入2001的应用的操作。

指令处理引擎110可基于在图18和图19的本公开的实施例中更新的第一应用940和第二应用960的偏好信息来选择用于处理语音输入2001的应用。

指令处理引擎110可从语音输入2001获得元数据以选择用于处理语音输入2001的应用。可基于与语音输入2001相应的文本来获得元数据。由于从语音输入2001获得的元数据包括“总部”,所以指令处理引擎110可基于在先前存储在指令处理引擎110中的偏好信息来选择第二应用960作为适合于处理包括“总部”的语音输入2001的应用。

例如,指令处理引擎110可从第一应用940和第二应用960中选择第二应用960,其中,第二应用960在处理包括在先前存储的偏好信息中的元数据“总部”的语音输入2001的结果中是成功的,并且第二应用960输出对语音输入2001的响应所花费的时间短。

第二应用960可根据指令处理引擎110的选择来处理语音输入2001,并且作为选择的结果输出与语音输入2001相应的响应。

图21是示出根据本公开的实施例的基于优先级输出多个响应的示例的示图。

参照图21,电子装置1000可接收多个语音输入2101和2102,并基于针对接收到的语音输入2101和2102的多个响应信息2103和2104来输出响应。在图21中所示出的根据本公开的实施例的电子装置1000可从第一讲话者和第二讲话者接收多个语音输入2101和2102。

电子装置1000可包括用于处理多个语音输入2101和2102的指令处理引擎110以及可用于输出对多个语音输入2101和2102的响应的第一应用940和第二应用960。

指令处理引擎110可基于在多个语音输入2101和2102的文本的基础上获得的元数据来选择用于处理多个语音输入2101和2102的应用。例如,第一应用940和第二应用960可被选择为分别用于处理多个语音输入2101和2102的应用。

第一应用940和第二应用960可分别连接到第一云950和第二云970,并且输出对发送到各个应用的语音输入2101和语音输入2102的响应。根据本公开的实施例,第一应用940和第二应用960可基于从连接到每一个应用的云接收到的数据来输出对语音输入2101和语音输入2102的响应。

根据本公开的实施例,可通过指令处理引擎110将语音输入2101“现在是什么时间?”发送到第一应用940。第一应用940可使用第一云950来获得大小为1MB的响应信息2103“当前时间是下午6点”。此外,可通过指令处理引擎110将语音输入2102“现在天气怎么样?”发送到第二应用960。第二应用960可使用第二云970来获得响应信息2104“地点A的当前天气很好。地点B正在下雨,并且在地点C有雾,”

大小为15MB的。

可将在第一应用940和第二应用960中获得的响应信息2103和响应信息2104发送到指令处理引擎110。指令处理引擎110可确定多个响应信息2103和2104的优先级,并且根据优先级基于多个响应信息2103和2104输出多个响应。

根据本公开的实施例,可输出多个响应信息2103和2104的优先级越快,响应大小越小,由电子装置1000处理优先级的速度越快,因此,优先级可被确定为具有高优先级。例如,因为从第一应用940获得的响应信息2103的大小小于从第二应用960获得的响应信息2104的大小,所以响应信息2103可以被确定为具有比第二信息2104更高的优先级。

电子装置1000可根据响应是否具有用户偏好的特性、电子装置1000输出响应所花费的时间以及其他各种标准来确定多个响应信息2103和2104的优先级,并且可根据所确定的优先级基于多个响应信息2103和2104顺序地输出响应。

因此,即使当电子装置1000接收到多个语音输入时,也可同时处理多个语音输入,并且可输出多个响应。此外,根据本公开的实施例,当根据基于先前确定的标准确定的优先级顺序地输出多个响应时,可改善用户体验。

图22是示出根据本公开的实施例的基于优先级输出多个响应的示例的示图。

参照图22,电子装置1000可接收多个语音输入2201和2202,并且输出针对接收到的语音输入2201和2202的多个响应。电子装置1000可从第一讲话者和第二讲话者接收多个语音输入2201和2202。

电子装置1000可包括用于处理多个语音输入2201和2202的指令处理引擎110以及可用于输出对多个语音输入2201和2202的响应的第一应用940和第二应用960。

根据本公开的实施例的指令处理引擎110可基于在多个语音输入2201和2202的文本的基础上获得的元数据来选择用于处理多个语音输入2201和2202的应用。例如,第一应用940和第二应用960可被选择为分别用于处理多个语音输入2201和2202的应用。

第一应用940和第二应用960可分别连接到第一云950和第二云970,并且在各个应用中输出对语音输入2201和语音输入2202的响应。根据本公开的实施例,第一应用940和第二应用960可基于从连接到每一个应用的云接收到的数据来输出对语音输入2201和语音输入2202的响应。

根据本公开的实施例,可通过指令处理引擎110将语音输入2201“打开灯”发送到第一应用940。第一应用940可使用第一云950来获得响应信息2203,其中,响应信息2203包括作为与用户的意图相关的信息的“家用电器控制”并且包括作为与语音输入2201相应的操作信息的“起居室灯1打开”。

此外,可通过指令处理引擎110将语音输入2202“今天的头条新闻是什么?”发送到第二应用960。第二应用960可使用第二云970来获得响应信息2204,其中,响应信息2204包括作为与用户的意图相关的信息的“新闻信息提供”并且包括作为可与语音输入2201相应地输出的文本信息的“今日原油价格下跌”。

可将在第一应用940和第二应用960中获得的响应信息2203和响应信息2204发送到指令处理引擎110。指令处理引擎110可以确定多个响应信息2203和2204的优先级,并且根据优先级基于多个响应信息2203和2204输出响应。

根据本公开的实施例,可根据具有电子装置1000的用户进一步偏好的特性的响应将多个响应信息2203和2204的优先级确定为具有较高优先级。第一讲话者或第二讲话者中的至少一个可以是电子装置1000的用户。

例如,当电子装置1000的用户偏好与“家用电器控制”相关的响应而不是与“新闻信息提供”相关的响应时,与“家用电器控制”相关的响应信息2203可被确定为具有比与“新闻信息提供”相关的响应信息2204更高的优先级。

根据本公开的实施例,电子装置1000可基于与“家用电器控制”相关的响应信息2203的操作信息来控制起居室灯1并且输出控制结果。在根据响应信息2203的控制结果被输出为对语音输入2201的响应之后,电子装置1000可基于与“新闻信息提供”相关的响应信息2204输出文本作为对语音输入2201的响应。

电子装置1000可根据响应是否被用户偏好、响应是否可由电子装置1000更快地输出、或者其他各种标准来确定多个响应信息2203和2204的优先级,并且可根据所确定的优先级基于多个响应信息2203和2204来顺序地输出响应。

因此,即使当电子装置1000接收到多个语音输入时,也可以同时处理多个语音输入,并且可以输出多个响应。此外,当根据基于先前确定的标准确定的优先级顺序地输出多个响应时,可以改善用户体验。

图23是示出根据本公开的实施例的通过另一电子装置输出对语音输入的响应的示例的示图。

参照图23,第一电子装置2302可从用户接收语音输入。在图23中所示出的第一电子装置2302可与图1至图3的电子装置1000相应。

第二电子装置2304可以是可与图1至图3的电子装置1000相应并且不同于第一电子装置2402的可结合到第一电子装置2402的装置。

第一电子装置2302和第二电子装置2304可通过网络装置2301连接到第一云950以通过根据本公开的实施例选择的第一应用2303和2305输出对语音输入的响应。例如,网络装置2301可以是支持连接到网络装置2301的装置的网络连接的回程装置。

根据本公开的实施例,第一电子装置2302可处理接收到的语音输入,并且当它处于第一电子装置2302不能输出对语音输入的响应的状态时,可搜索能够处理语音输入的第二电子装置2304。第一电子装置2302可根据搜索结果将语音输入发送到第二电子装置2304。

例如,因为网络装置2301的连接状态不好或者连接是不可能的,所以第一电子装置2302可处于第一电子装置2302不能使用用于处理语音输入的网络装置2301的状态。第一电子装置2302可使用网络装置2301来将语音输入发送到处于可处理语音输入的状态的第二电子装置2304。

从第一电子装置2302接收语音输入的第二电子装置2304可代替第一电子装置2302处理语音输入。第二电子装置2304可输出通过处理语音输入而获得的响应或可将响应发送到第一电子装置2302。当第一电子装置2302从第二电子装置2304接收响应时,第一电子装置2302可输出所接收的响应作为对语音输入的响应。

因此,即使当第一电子装置2302处于第一电子装置2302不能输出对语音输入的响应的状态时,第二电子装置2304可代替第一电子装置2302处理语音输入,并且因此对语音输入的响应可被输出。

图24是示出根据本公开的实施例的通过另一电子装置根据对语音输入的响应来控制外部装置的示例的示图。

参考图24,第一电子装置2402可从用户接收语音输入。在图24中所示出的第一电子装置2402可与图1至图3的电子装置1000相应。

第二电子装置2404可以是位置与第一电子装置2402相邻的除了第一电子装置2402之外的电子装置。第二电子装置2404也可以是连接到外部装置2405以便控制外部装置2405的电子装置。另外,第二电子装置2404可以是与图1至图3的电子装置1000相应的电子装置。

第一电子装置2302可选择第一应用2403来处理接收到的语音输入,并通过第一应用2403获得与语音输入相应的操作信息。例如,第一应用2403可通过第一云950处理语音输入,并且获得关于将根据语音输入执行的操作的操作信息。

第一应用2403可根据操作信息执行操作并且基于操作的结果输出响应。根据本公开的实施例,根据语音输入的操作信息可包括控制外部装置2405的操作。外部装置2405可包括例如可由第二电子装置2404控制的家用电器装置。

当第一电子装置2402是不能控制外部装置2405的装置时,第一电子装置2402可搜索能够控制外部装置2405的第二电子装置2404。第一电子装置2402可请求第二电子装置2404基于根据语音输入的操作信息控制外部装置2405。

第二电子装置2404可响应于从第一电子装置2402接收到的请求来控制外部装置2405。此外,第二电子装置2404可将控制外部装置2405的结果发送到第一电子装置2402。

第一电子装置2402可基于从第二电子装置2404接收到的控制外部装置2405的结果来输出与语音输入相应的响应。例如,当成功地控制外部装置2405时,第一电子装置2402可输出指示外部装置2405根据语音输入被控制的响应。

因此,根据本公开的实施例,即使当第一电子装置2402不能根据语音输入来控制外部装置2405时,第一电子装置2402也可通过连接到第一电子装置2402的第二电子装置2404根据语音输入来控制外部装置2405。

图25是示出根据本公开的实施例的电子装置1000处理语音输入的示例的示图。

参照图25,电子装置1000可接收语音输入并且输出与接收到的语音输入相应的响应。电子装置1000可将接收到的语音输入存储在存储器1700中,以便根据本公开的实施例处理语音输入。

根据本公开的实施例,电子装置1000可基于与语音输入相应的文本来选择用于输出与语音输入相应的响应的第一应用940。第一应用940可通过与第一云950的数据发送/接收来获得并输出与语音输入相应的响应。

当电子装置1000成功处理语音输入并输出响应时,根据本公开的实施例的电子装置1000可删除存储在存储器1700中的语音输入。

图26是示出根据本公开的实施例的多个电子装置处理语音输入的示例的示图。

参照图26,第一电子装置2602和第二电子装置2604可以是可与图1至图3的电子装置1000相应的装置。第二电子装置2604可以是可连接到第一电子装置2602并且不同于第一电子装置2602的电子装置。

另外,包括在根据本公开的实施例的第一电子装置2602和第二电子装置2604中的第一应用2603和第一应用2605可通过第一云950获得对语音输入的响应。

根据本公开的实施例,第一电子装置2602可接收语音输入并且处理语音输入以便输出与语音输入相应的响应。根据本公开的实施例,当第一电子装置2602接收到语音输入时,第一电子装置2602可将语音输入存储在第一电子装置2602内部的存储装置(例如,存储器)中。

另外,当第一电子装置2602未能处理语音输入并输出响应时,第一电子装置2602可搜索可连接到第一电子装置2602的第二电子装置2604。第二电子装置2604可以是可通过第一应用2605和第一云950处理语音输入以输出响应的装置。

第一电子装置2602可将语音输入发送到第二电子装置2604,并且语音输入可由第二电子装置2604处理。第一电子装置2602可将语音输入发送到第二电子装置2604,然后删除存储在存储装置中的语音输入。另外,第一电子装置2602可将语音输入发送到第二电子装置2604,从第二电子装置2604接收并输出对语音输入的响应,然后删除存储在存储装置中的语音输入。

图27是示出根据本公开的实施例的多个电子装置处理语音输入的示例的示图。

参照图27,第一电子装置2702和第二电子装置2704可以是可与图1至图3的电子装置1000相应的装置。第二电子装置2704可以是可连接到第一电子装置2702并且不同于第一电子装置2702的电子装置。

另外,包括在根据本公开的实施例的第一电子装置2702和第二电子装置2704中的第一应用2703和第一应用2705可通过第一云950获得对语音输入的响应。

当第二电子装置2704的电源被激活时,第一电子装置2702可检测可通过网络装置2701连接到第一电子装置2702的第二电子装置2704的存在。例如,当第二电子装置2704的电源被激活时,第二电子装置2704可通过网络装置2701向第一电子装置2702指示第二电子装置2704的存在。

当第一电子装置2702接收到指示第二电子装置2704的存在的指示时,第一电子装置2702可基于接收到的指示将关于第二电子装置2704的信息存储在第一电子装置2702内部的存储装置(例如,存储器)中。关于第二电子装置2704的信息可包括关于第二电子装置2704的各种信息,例如,第二电子装置2704的标识信息、关于在第二电子装置2704中可处理语音输入的应用的信息、第二电子装置2704的IP地址、关于连接到第二电子装置2704的网络的质量的信息等。

根据本公开的实施例,第一电子装置2702可使用关于第二电子装置2704的信息来将输出对语音输入的响应的请求发送到第二电子装置2704。

图28是示出根据本公开的实施例的多个电子装置处理语音输入的示例的示图。

参照图28,第一电子装置2802、第二电子装置2804和第三电子装置2806可以是可与图1至图3的电子装置1000相应的装置。第一电子装置2802、第二电子装置2804和第三电子装置2806可以是可通过网络装置2801连接的不同装置。

根据本公开的实施例,当第二电子装置2804和第三电子装置2806的电源被激活时,第一电子装置2802可从第二电子装置2804和第三电子装置2806接收指示存在第二电子装置2804和第三电子装置2806中的每一个的指示。当第一电子装置2802接收到指示存在每一个装置的指示时,第一电子装置2802可检测每一个装置的存在。

根据本公开的实施例,当第一电子装置2802检测到存在第二电子装置2804和第三电子装置2806时,第一电子装置2802可将关于第二电子装置2804和第三电子装置2806的信息存储在第一电子装置2802内部的存储装置(例如,存储器)中。关于第二电子装置2804和第三电子装置2806的信息可包括关于第二电子装置2804和第三电子装置2806的各种信息,例如,第二电子装置2804和第三电子装置2806的标识信息、关于在第二电子装置2804和第三电子装置2806中可处理语音输入的应用的信息、第二电子装置2804和第三电子装置2806的IP地址、关于连接到第二电子装置2804和第三电子装置2806的网络的质量的信息等。

此外,当第二电子装置2804的电力被停用时,第一电子装置2802可检测到不存在第二电子装置2804。根据本公开的实施例,当第一电子装置2802检测到不存在第二电子装置2804时,第一电子装置2802可删除存储在第一电子装置2802中的关于第二电子装置2804的信息。

图29是示出根据本公开的实施例的多个电子装置处理语音输入的示例的示图。

参照图29,第一电子装置2902、第二电子装置2904和第三电子装置2906可以是可与图1至图3的电子装置1000相应的装置。第一电子装置2902、第二电子装置2904和第三电子装置2906可以是可通过网络装置2901连接的不同装置。此外,第一电子装置2902、第二电子装置2904和第三电子装置2906中的每一个可处理语音输入以输出与语音输入相应的响应。

根据本公开的实施例,当第一电子装置2902检测到存在第二电子装置2904和第三电子装置2906时,第一电子装置2902可将关于第二电子装置2904和第三电子装置2906的信息存储在第一电子装置2902内部的存储装置(例如,存储器)中。

与第一电子装置2902和第二电子装置2904不同,第三电子装置2806可连接到外部装置2907以根据语音输入执行控制外部装置2907的操作。

根据本公开的实施例,第一电子装置2902可从用户接收语音输入。例如,当第一电子装置2902接收到包括唤醒词的语音输入时,第一电子装置2902可从非激活状态改变为激活状态,在激活状态中,第一电子装置2902可处理语音输入。当由第一电子装置2902接收到的语音输入包括控制外部装置2907的用户请求时,第一电子装置2902可确定第一电子装置2902不能处理语音输入的状态。

第一电子装置2902可通过网络装置2801向第二电子装置2904和第三电子装置2906发送唤醒请求以进行语音输入的处理。当唤醒请求被发送时,第二电子装置2904和第三电子装置2906可处于激活状态,其中,在激活状态下,第二电子装置2904和第三电子装置2906可在预定时间段内处理语音输入。

第一电子装置2902可从处于激活状态的第二电子装置2904和第三电子装置2906获得关于可在每一个装置中执行的操作的信息。当第三电子装置2904保持在激活状态时,第一电子装置2902可基于所获得的信息将语音输入发送到可根据语音输入执行操作的第三电子装置2906。

第三电子装置2906可处理从第一装置2902接收到的语音输入以执行控制外部装置2907的操作,并且将执行操作的结果发送到第一电子装置2902,或者第三电子装置2906可输出该结果作为对语音输入的响应。

图30是根据本公开的实施例的处理器的框图。

参照图30,处理器1300可包括数据学习器1310和数据确定器1320。

数据学习器1310可学习用于确定情况的参考。数据学习器1310可学习与使用什么数据来确定预定情况或如何使用数据来确定情况有关的参考。数据学习器1310可获得将被用于学习的数据,并且将所获得的数据应用于稍后将描述的数据确定模型,从而学习用于确定情况的参考。

数据学习器1310可学习用于选择用于输出与语音输入相应的响应的应用的参考。

数据确定器1320可基于数据来确定情况。数据确定器1320可通过使用学习的数据确定模型从预定数据确定情况。数据确定器1320可通过学习根据先前确定的参考获得预定数据,并使用将获得的数据作为输入值的数据确定模型,从而基于预定数据确定预定情况。此外,可使用由将获得的数据作为输入值的数据确定模型输出的结果值来细化数据确定模型。

根据本公开的实施例的数据确定器1320可通过使用学习的数据确定模型来选择用于输出与语音输入相应的响应的应用。

数据学习器1310或数据确定器1320中的至少一个可以以至少一个硬件芯片的形式被制造并安装在电子装置上。例如,数据学习器1310或数据确定器1320中的至少一个可以以用于AI的专用硬件芯片的形式被制造,或者可被制造为现有通用处理器(例如,中央处理单元(CPU)或应用处理器)或仅图形处理器(例如,图形处理单元(GPU))的一部分并且安装在电子装置上。

在这种情况下,数据学习器1310和数据确定器1320可安装在一个电子装置上或者可安装在单独的电子装置上。例如,数据学习器1310和数据确定器1320中的一个可被包括在电子装置中,并且另一个可被包括在服务器中。数据学习器1310和数据确定器1320还可通过有线或无线将由数据学习器1310构建的模型信息提供给数据确定器1320,并且将输入到数据确定器1320的数据作为附加训练数据提供给数据学习器1310。

另外,数据学习器1310或数据确定器1320中的至少一个可被实现为软件模块。当数据学习器1310或数据确定器1320中的至少一个被实现为软件模块(或包括指令的程序模块)时,软件模块可被存储在非暂时性计算机可读介质中。此外,在这种情况下,至少一个软件模块可由操作系统(OS)或由预定应用提供。可选地,至少一个软件模块中的一个可由OS提供,并且另一个可由预定应用提供。

图31是根据本公开的实施例的数据学习器1310的框图。

参照图31,根据本公开的实施例的数据学习器1310可包括数据获得器1310-1、预处理器1310-2、训练数据选择器1310-3、模型学习器1310-4和模型评估器1310-5。

数据获得器1310-1可获得情况确定所必需的数据。数据获得器1310-1可获得用于对情况确定的学习所必需的数据。

根据本公开的实施例,数据获得器1310-1可获得可用于选择用于处理语音输入的应用的数据。可由数据获得器1310-1获取的数据包括例如,基于与语音输入相应的文本获得的元数据、关于由每一个应用输出的语音输入的响应的信息等。

预处理器1310-2可预处理所获得的数据,使得所获得的数据可被用于对情况确定的学习。预处理器1310-2可以以预定格式处理所获得的数据,使得稍后将描述的模型学习器1310-4可将所获得的数据用于对情况确定的学习。

训练数据选择器1310-3可从预处理的数据选择学习所必需的数据。所选择的数据可被提供给模型学习器1310-4。训练数据选择器1310-3可根据用于情况确定的预定参考从预处理的数据选择学习所必需的数据。训练数据选择器1310-3还可根据通过由稍后将描述的模型学习器1310-4学习的预定参考来选择数据。

模型学习器1310-4可学习关于如何基于训练数据来确定情况的参考。此外,模型学习器1310-4可学习关于将哪个训练数据用于情况确定的参考。

根据本公开的实施例,模型学习器1310-4可学习用于选择用于输出用户偏好的响应(诸如,输出更具体内容的响应或与语音输入相应地以高速输出响应)的应用的参考。

此外,模型学习器1310-4可使用训练数据学习用于情况确定的数据确定模型。在这种情况下,数据确定模型可以是先前构建的模型。例如,通过接收基本训练数据(例如,样本图像等),数据确定模型可以是先前构建的模型。

可考虑到确定模型的应用领域、学习的目的或设备的计算机性能等来构建数据确定模型。例如,数据确定模型可以是基于神经网络的模型。例如,诸如深度神经网络(DNN)、递归神经网络(RNN)和双向递归DNN(BRDNN)的模型可被用作数据确定模型,但不限于此。

根据本公开的各种实施例,当存在先前构造的多个数据确定模型时,模型学习器1310-4可将在输入训练数据与基本训练数据之间具有高相关性的数据确定模型确定为数据确定模型。在这种情况下,可预先根据数据类型对基础训练数据进行分类,并且可预先针对每一个数据类型构建数据确定模型。例如,可根据诸如产生训练数据的区域、产生训练数据的时间、训练数据的大小、训练数据的种类、训练数据的创建者、训练数据中的对象的类型等的各种参考来预先对基本训练数据进行分类。

此外,模型学习器1310-4可使用包括例如误差反向传播方法或梯度下降方法的学习算法来训练数据确定模型。

模型学习器1310-4可例如将训练数据用作输入值通过监督式学习来训练数据确定模型。此外,模型学习器1310-4可通过非监督式学习来训练数据确定模型,以通过在没有任何指导的情况下自主学习情况确定所必需的数据类型来找到用于情况确定的参考。此外,模型学习器1310-4可例如通过使用关于基于学习的情况确定的结果是否正确的反馈的强化学习来训练数据确定模型。

此外,当数据确定模型被训练时,模型学习器1310-4可存储学习到的数据确定模型。在这种情况下,模型学习器1310-4可将训练的数据确定模型存储在包括数据确定器1320的电子装置的存储器中。可选地,模型学习器1310-4可将训练的数据确定模型存储在包括稍后将描述的数据确定器1320的电子装置的存储器中。可选地,模型学习器1310-4可将训练的数据确定模型存储在通过有线或无线网络连接到电子装置的服务器的存储器中。

在这种情况下,存储训练的数据确定模型的存储器还可存储例如与电子装置的至少一个其他组件相关的命令或数据。存储器还可存储软件和/或程序。程序可包括例如内核、中间件、应用编程接口(API)和/或应用程序(或“应用”)。

模型评估器1310-5可将评估数据输入到数据确定模型,并且当从评估数据输出的识别结果不满足预定参考时,模型评估器1310-5可允许再次训练模型学习器1310-4。在这种情况下,评估数据可以是用于评估数据确定模型的预定数据。

例如,当训练的数据确定模型对于评估数据的识别结果中具有不正确识别结果的评估数据的数量或比率超过预定阈值时,模型评估器1310-5可评估出数据确定模型不满足预定参考。例如,当预定参考被定义为2%的比率时,并且当训练的数据确定模型相对于总共1000个评估数据中的超过20个的评估数据输出不正确的识别结果时,模型评估器1310-5可评估训练的数据确定模型不合适。

另一方面,当存在多个训练的数据确定模型时,模型评估器1310-5可评估训练的运动确定模型中的每一个是否满足预定参考,并且将满足预定参考的模型确定为最终数据确定模型。在这种情况下,当多个模型满足预定参考时,模型评估器1310-5可将先前按照评估分数的降序设置的模型中的任何一个或预定数量的模型确定为最终的数据确定模型。

另外,数据学习器1310中的数据获得器1310-1、预处理器1310-2、训练数据选择器1310-3、模型学习器1310-4或模型评估器1310-5中的至少一个可以以至少一个硬件芯片的形式被制造并安装在电子装置上。例如,数据获得器1310-1、预处理器1310-2、训练数据选择器1310-3、模型学习器1310-4或模型评估器1310-5中的至少一个可以以用于AI的专用硬件芯片的形式被制造或者可被制造为现有通用处理器(例如,CPU或应用处理器)或仅图形处理器(例如,GPU)的一部分并且被安装在电子装置上。

另外,数据获得器1310-1、预处理器1310-2、训练数据选择器1310-3、模型学习器1310-4和模型评估器1310-5可被安装在一个电子装置上或者可被安装在单独的电子装置上。例如,数据获得器1310-1、预处理器1310-2、训练数据选择器1310-3、模型学习器1310-4和模型评估器1310-5中的一些可被包括在电子装置中,并且其他可被包括在服务器中。

另外,数据获得器1310-1、预处理器1310-2、训练数据选择器1310-3、模型学习器1310-4或模型评估器1310-5中的至少一个可被实现为软件模块。当数据获得器1310-1、预处理器1310-2、训练数据选择器1310-3、模型学习器1310-4或模型评估器1310-5中的至少一个被实现为软件模块(或包括指令的程序模块)时,软件模块可被存储在非暂时性计算机可读介质中。此外,在这种情况下,至少一个软件模块可由OS或由预定应用提供。可选地,至少一个软件模块中的一个可由OS提供,并且另一个可由预定应用提供。

图32是根据本公开的实施例的数据确定器1320的框图。

参照图32,根据本公开的实施例的数据确定器1320可包括数据获得器1320-1、预处理器1320-2、识别数据选择器1320-3、识别结果提供器1320-4和模型细化器1320-5。

数据获得器1320-1可获得情况确定所必需的数据,并且预处理器1320-2可预处理所获得的数据,使得所获得的数据可被用于情况确定。预处理器1320-2可将所获得的数据处理为预定格式,使得稍后将描述的识别结果提供器1320-4可将所获得的数据用于情况确定。

根据本公开的实施例,电子装置1000可通过对语音输入执行语音识别来获得与语音输入相应的文本,并且可基于所获得的文本来产生元数据。电子装置1000可获得所产生的元数据作为情况确定所必需的数据。

识别数据选择器1320-3可从预处理的数据选择情况确定所必需的数据。所选择的数据可被提供给识别结果提供器1320-4。识别数据选择器1320-3可根据用于情况确定的预定参考来选择预处理数据中的一些或全部。识别数据选择器1320-3还可根据通过由稍后将描述的模型学习器1310-4学习的预定参考来选择数据。

识别结果提供器1320-4可通过将所选择的数据应用于数据确定模型来确定情况。识别结果提供器1320-4可根据数据识别目的提供识别结果。识别结果提供器1320-4可通过使用由识别数据选择器1320-3选择的数据作为输入值来将所选择的数据应用于数据确定模型。此外,可通过数据确定模型来确定识别结果。

根据本公开的实施例,可提供由数据确定模型选择用于处理语音输入的应用的结果。

模型细化器1320-5可基于由识别结果提供器1320-4提供的识别结果的评估来修改数据确定模型。例如,模型细化器1320-5可向模型学习器1310-4提供由识别结果提供器1320-4提供的识别结果,使得模型学习器1310-4可修改数据确定模型。

另外,数据确定器1320中的数据获得器1320-1、预处理器1320-2、识别数据选择器1320-3、识别结果提供器1320-4或模型细化器1320-5中的至少一个可以以至少一个硬件芯片的形式被制造并安装在电子装置上。例如,数据获得器1320-1、预处理器1320-2、识别数据选择器1320-3、识别结果提供器1320-4或模型细化器1320-5中的至少一个可以以用于AI的专用硬件芯片的形式被制造或者可被制造为现有通用处理器(例如,CPU或应用处理器)或仅图形处理器(例如,GPU)的一部分并且被安装在电子装置上。

此外,数据获得器1320-1、预处理器1320-2、识别数据选择器1320-3、识别结果提供器1320-4和模型细化器1320-5可被安装在一个电子装置上或者可被安装在单独的电子装置上。例如,数据获得器1320-1、预处理器1320-2、识别数据选择器1320-3、识别结果提供器1320-4和模型细化器1320-5中的一些可被包括在电子装置中,并且其他可被包括在服务器中。

另外,数据获得器1320-1、预处理器1320-2、识别数据选择器1320-3、识别结果提供器1320-4或模型细化器1320-5中的至少一个可被实现为软件模块。当数据获得器1320-1、预处理器1320-2、识别数据选择器1320-3、识别结果提供器1320-4或模型细化器1320-5中的至少一个被实现为软件模块(或包括指令的程序模块)时,软件模块可以被存储在非暂时性计算机可读介质中。此外,在这种情况下,至少一个软件模块可由OS或由预定应用提供。可选地,至少一个软件模块中的一个可由OS提供,并且另一个可由预定应用提供。

图33是示出根据本公开的实施例的电子装置和服务器通过彼此交互来学习和确定数据的示例的示图。

参照图33,服务器2000可利用至少一个计算机装置被实现。服务器2000可以以云的形式分布,并且可提供命令、代码、文件、内容等。服务器2000可包括数据确定器2300,其中,数据确定器2300可包括数据获得器2310、预处理器2320、训练数据选择器2330、模型学习器2340和模型评估器2350。

参照图33,服务器2000可学习用于情况确定的参考,并且电子装置1000可基于服务器2000的学习结果来确定情况。

在这种情况下,服务器2000的模型学习器2340可执行在图31中所示出的数据学习器1310的功能。服务器2000的模型学习器2340可学习与使用什么数据来确定预定情况或者如何使用数据来确定情况有关的参考。模型学习器2340可获得将被用于学习的数据,并且将所获得的数据应用于稍后将描述的数据确定模型,从而学习用于确定情况的参考。

根据本公开的实施例,服务器2000可学习用于选择用于输出用户偏好的响应的应用(诸如输出更具体内容的响应或与语音输入相应地以高速输出响应)的参考。

另外,电子装置1000的识别结果提供器1320-4可通过将由识别数据选择器1320-3选择的数据应用于由服务器2000产生的数据确定模型来确定情况。例如,识别结果提供器1320-4可将由识别数据选择器1320-3选择的数据发送到服务器2000,并且请求服务器2000将由识别数据选择器1320-3选择的数据应用于数据确定模型并确定情况。此外,识别结果提供器1320-4可从服务器2000接收关于由服务器2000确定的情况的信息。

可选地,电子装置1000的识别结果提供器1320-4可从服务器2000接收由服务器2000产生的数据确定模型以使用接收到的数据确定模型来确定情况。在这种情况下,电子装置1000的识别结果提供器1320-4可将由识别数据选择器1320-3选择的数据应用于从服务器2000接收到的数据确定模型以确定情况。

根据本公开的实施例,电子装置1000可使用由服务器2000选择的应用来输出对语音输入的响应。

另外,服务器2000可执行电子装置1000可执行的一些操作、以及学习上述数据的功能。例如,服务器2000可基于从电子装置1000接收到的用户的语音输入100获得元数据,并且可将关于基于元数据选择的至少一个应用的信息发送到电子装置1000。服务器2000还可基于从电子装置1000接收到的用户的语音输入100来获得元数据,并使用基于元数据选择的至少一个应用来执行与语音输入100相应的操作。服务器2000可以产生执行操作的结果,并且将结果提供给电子装置1000。

服务器2000可执行根据本公开的实施例用于向电子装置1000提供对语音输入100的响应的各种操作,并且将执行操作的结果发送到电子装置1000。

根据本公开的实施例,可基于关于语音输入的元数据来选择适合于处理语音输入的应用,并且语音输入可由所选择的应用来处理,并且因此可向用户提供对语音输入的高度准确的响应。

根据本公开的实施例,可基于关于语音输入的元数据来选择用于提供对语音输入的响应的应用,并且因此可由适合于提供对语音输入的响应的应用来提供对语音输入的响应。

本公开的实施例可被实现为包括诸如计算机可执行程序模块的计算机可读指令的记录介质。计算机可读介质可以是可由计算机访问的任意可用介质,并且其示例包括所有易失性介质和非易失性介质以及可分离介质和不可分离介质。此外,计算机可读介质的示例可包括计算机存储介质和通信介质。计算机存储介质的示例包括通过任意方法或技术实现的用于存储信息(诸如,计算机可读指令、数据结构、程序模块或其他数据)的所有易失性介质和非易失性介质以及可分离介质和不可分离介质。通信介质通常包括计算机可读指令、数据结构、程序模块、调制数据信号的其他数据或其他传输机制,并且其示例包括任意信息传输介质。

此外,在本说明书中,术语“单元”可以是诸如处理器或电路的硬件组件和/或由诸如处理器的硬件组件执行的软件组件。

本领域普通技术人员将理解的是,本公开的前述描述仅用于示例性目的,并且本领域普通技术人员可容易地理解,在不脱离本公开的精神或本质特征的情况下,可进行各种改变和修改。因此,应当理解的是,本公开的上述实施例在所有方面是示例性的而非限制性的。例如,被描述为单个实体的每一个组件可被分布和实现,并且被描述为被分布的组件也可以以组合的形式被实现。

虽然已经参照本公开的各种实施例示出和描述了本公开,但是本领域技术人员将理解的是,在不脱离由权利要求及其等同物限定的本公开的精神和范围的情况下,可在其中进行形式和细节上的各种改变。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号