CN109863721A - 数字助理扩展自动排名和选择 - Google Patents

数字助理扩展自动排名和选择 Download PDF

Info

Publication number
CN109863721A
CN109863721A CN201780062529.8A CN201780062529A CN109863721A CN 109863721 A CN109863721 A CN 109863721A CN 201780062529 A CN201780062529 A CN 201780062529A CN 109863721 A CN109863721 A CN 109863721A
Authority
CN
China
Prior art keywords
robot program
group
feature
inquiry
ranking
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201780062529.8A
Other languages
English (en)
Other versions
CN109863721B (zh
Inventor
J-P·罗比乔德
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Technology Licensing LLC
Original Assignee
Microsoft Technology Licensing LLC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Microsoft Technology Licensing LLC filed Critical Microsoft Technology Licensing LLC
Publication of CN109863721A publication Critical patent/CN109863721A/zh
Application granted granted Critical
Publication of CN109863721B publication Critical patent/CN109863721B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/02User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail using automatic reactions or user delegation, e.g. automatic replies or chatbot-generated messages
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2457Query processing with adaptation to user needs
    • G06F16/24578Query processing with adaptation to user needs using ranking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9535Search customisation based on user profiles and personalisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/2803Home automation networks
    • H04L12/2816Controlling appliance services of a home automation network by calling their functionalities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/21Monitoring or handling of messages
    • H04L51/214Monitoring or handling of messages using selective forwarding

Abstract

代表性实施例公开了用于自动地对数字助理中被触发的扩展进行排名和选择的机制。扩展的样本集针对一组策划查询被执行以便提取一组特征和/或统计。系统基于特征和/或统计来训练机器学习模型,以基于它们对查询的响应来对扩展进行排名和选择。并入系统中的新扩展针对第二组策划查询被执行,以获得一组提取的特征和/或统计,其被保存以用于在运行时使用。在运行时,由系统接收的查询短语触发来自扩展的一个或多个任务。针对所触发的扩展的提取的特征与所存储的特征/统计组合,并且至少结果的子集被呈现给经训练的排名和选择模型。模型对被呈现给用户的合适任务进行排名和选择。

Description

数字助理扩展自动排名和选择
技术领域
本申请总体上涉及用于数字助理的扩展。更具体地,本文中公开的实施例利用机器学习来对数字助理扩展自动地进行排名和选择。
背景技术
数字助理已经进入人们的生活的各个方面。这些数字助理的目的是通过使任务自动化、代表用户执行各种任务、并且表面化重要信息来使用户的生活更容易。当前可用的数字助理依赖于一组窄的信息或命令。由于数字助理驻留于封闭环境中,所以数字助理的拥有者负责进化适用于特定数字助理的该组窄的信息或命令。
本文的实施例出现在这种上下文内。
附图说明
图1图示了根据本公开的方面的数字助理系统的示例架构。
图2图示了根据本公开的方面的数字助理系统的另一示例架构。
图3图示了用于具有对机器人程序(bot)的自动排名和选择的数字助理系统的示例架构。
图4图示了用于训练排名和选择模型的示例架构。
图5图示了用于采集关于提交的机器人程序的信息的示例架构。
图6图示了扩展机器人程序的各个部分的示例。
图7图示了用于对机器人程序自动地进行排名和选择以服务请求的示例流程图。
图8图示了适合于实现本文中公开的系统和其他方面或者适合于执行本文中公开的方法的代表性机器架构。
具体实施方式
下面的描述包括例示说明性实施例的说明性系统、方法、用户接口、技术、指令序列、以及计算机器程序产品。在下面的描述中,为了解释的目的,阐述了许多具体细节以提供对本发明技术方案的各种实施例的理解。然而,对于本领域技术人员将显而易见的是,可以在没有这些具体细节的情况下实践本发明技术方案的实施例。总体上,未详细示出公知的指令实例、协议、结构以及技术。
概述
数字助理的总体目的是让用户注意到信息并代表用户执行任务。在本公开的上下文中,数字助理是采集来自用户或关于用户的信息、向用户提供提示和/或代表用户执行各种任务的系统、系统的汇集、服务、服务的汇集、和/或其组合。
因此,用户想要并期望数字助理提供各种各样的服务并执行各种各样的任务。例如,能够预定航班、预约、跟踪包裹、订购物品、支付账单、以及各种各样的其他任务的数字助理对用户是有价值的。这些任务中的每一个倾向于存在于特定领域中。不是开发在用户感兴趣的每个领域中的服务和能力,数字助理的制造商而是可以将它们开放给第三方扩展。这些扩展可以丰富和/或扩展领域和领域内的任务,以便改进给定数字助理的功能和实用性。扩展以可执行指令的形式被提供和/或数据用于扩展数字助理的功能。在本公开中,扩展功能由“机器人程序”提供,“机器人程序”是指由开发者提供的可执行指令和数据(如果有的话)并且被并入数字助理中。从概念上来讲,内置功能也可以被认为是由机器人程序提供的,但是在一些实施例中,内置功能的架构与用于扩展功能的开发者提供的机器人程序稍微不同。然而,所公开的实施例应用于提供扩展功能和内置功能的两种机器人程序。因此,除非在特定部分中另行指示,否则术语“机器人程序”将被用于指代扩展机器人程序和提供内置功能的可执行指令两者。
数字助理的机器人程序(扩展或内置)可以代表用户完成一个或多个“任务”。单个机器人程序可以完成一个或多个任务。由机器人程序提供的任务在一组“意图”上触发。在这种上下文中,意图是用户旨在完成如“设置提醒”或“预定披萨”的事情,并且可以根据用户提交的如“提醒我在下个星期四安排与Kisha吃午饭”或“你能给我订一些吃的吗?”的查询来导出,或者可以如下面所解释的从由系统代表用户监测的一个或多个信号来导出。基于意图旨在触发的事件/活动的类型,意图存在于一个或多个领域中,如提醒领域、订购领域等。因此,提交给数字助理的查询被转变为一个或多个意图,其存在于一个或多个领域中。语言理解模型将提交的查询转换成一个或多个意图。在一些实施例中,开发者具有使用预定义意图或基于样本查询和规则来创建新定制意图模型的选项。在本公开的上下文中,术语“查询”将用于涵盖由用户无论以什么形式提交给数字助理的任何请求、问题等。
将数字助理开放给第三方扩展引起它自己的一些问题。例如,在机器人程序包含它们自己的意图模型的情况下,难以或不能够标识机器人程序将何时被调用(即,什么组的查询将触发机器人程序)。取决于机器人程序的关注和质量,机器人程序可以遭受各种问题,诸如过触发(即,当用户不想要它触发时触发)、欠触发(即,当用户想要它触发时不触发)、发起不正确的动作/错误地触发(即,当用户的意图是要设置订餐提醒时触发订餐动作)、具有“坏”的用户交互体验等。独立于可以从机器人程序本身产生的任何问题的是可以简单地由扩展机器人程序的存在产生的其他问题。例如,当多个机器人程序和/或内置功能均想要在相同用户意图上触发时,所触发的机器人程序应当如何被排名?所有选项是否应当被呈现给用户?另外,数字助理系统通常不知道扩展与内置功能之间的关系(即,机器人程序是否将用于提供与内置的功能不同的功能或相同的功能)。
本公开的实施例应用机器学习技术来自动地对扩展和内置功能进行选择和排名,以便完成来自用户的请求(即,查询)。用于对触发的机器人程序进行排名和选择的模型根据将机器学习技术应用于代表性的一组机器人程序和一组策划(curated)查询来创建。
代表性的该组机器人程序从存在于系统中的机器人程序和/或被创建为模仿内置功能的机器人程序中选择。机器人程序被选择为提供领域、任务等的代表性横截面。该组策划查询被创建以标识机器人程序的各个方面。策划查询针对该组机器人程序被运行。结果是描述机器人程序的各个方面的一组特征。输出用于训练被设计为对由接收到的查询触发的一个或多个机器人程序进行排名和选择的机器学习模型。策划查询集可以相当大并且被设计为确保排名和选择模型被有效地训练。另外,特征可以被存储,因此它们对处于运行时情况中的系统可用。
当新机器人程序要被添加到数字助理(诸如经由通过扩展入口的提交)时,通过一组策划查询运行新机器人程序以便收集相同特征。在该过程中使用的一组策划查询可以与用于训练排名和选择模型的一组策划查询相同、相似或完全不同。通常,一组策划查询将至少以某种方式不同于一组训练的策划查询。特征也被存储在数据存储库中以用于在数字助理的运行时期间访问。
在运行时期间,当用户提交查询时,数字助理将应用其语言理解模型来导出与查询相关联的一个或多个意图。附加地,查询可以被应用于到利用它们自己的意图模型的机器人程序。触发任务的扩展和/或内置功能被评价并且特征与数据存储库中的特征进行比较以标识最接近的匹配。匹配的特征然后被传递到先前创建的排名和选择模型。排名和选择模型对应当被呈现给用户的(即,由触发的机器人程序的一些子集提供的)那些任务进行排名和选择,并且选择的任务被呈现给用户。
以这种方式,当新扩展被添加到数字助理系统时,它们的行为不仅被自动地与内置功能和现有扩展集成,而且扩展的行为可以(即,通过排名和选择模型)被修改以便呈现更无缝的用户体验。
描述
图1图示了根据本公开的方面的数字助理系统106的示例架构100。该图图示了本公开中的数字助理106可以由附加功能扩展。开发者通常通过网络116将提供一个或多个任务的机器人程序114提交给数字助理扩展入口112。数字助理扩展入口112接纳机器人程序114,并在接收到部署机器人程序114的批准之前执行所要求的测试和任何其他功能。这些可以包括各种各样的测试以确保机器人程序恰当地工作(即,没有运行错误)以及安全检查等。
如下面所讨论的,根据本公开的一个方面是采集特征以观察提交的机器人程序如何对策划查询的汇集做出响应并且采集关于机器人程序的描述信息。描述信息允许机器人程序被集成到数字助理中。特征允许系统理解机器人程序如何适合已经在数字助理中的功能的剩余部分(不论是原生地还是通过扩展)并且标识机器人程序在哪种意图上触发。其还允许机器人程序针对过触发、欠触发、错误触发以及以上讨论的其他这样的问题被测试。其还允许标识机器人程序如何在与用户的代表性“对话”中执行并且确定机器人程序是否恰当地对后续查询做出响应。因此,代表性对话可以是:
用户:“我饿了”
助理:“你想要我为你订什么餐?”
用户:“提醒我在12:30订餐”
助理:“我会提醒你的”
在该对话中,助理正确地解读用户具有的需要,诸如吃的意图,并且正确地解读用户现在不要吃但是要在稍后时间被提醒的进一步指定的意图。因此,除了单个查询方面(即,触发由机器人程序的指示的响应的查询),一组策划查询可以包含一系列查询来概述机器人程序如何对后续问题对话做出响应。实际上,在部署之前针对机器人程序运行一组策划查询允许系统构建机器人程序的行为的简档并且在部署之前收集机器人程序的特性,并且因此能够针对提供相同或相似任务的其他机器人程序正确地对机器人程序的响应排列优先级。
在系统执行了任何期望测试并采集了描述信息和特征后,机器人程序114就被部署给数字助理106,其中其将(一个或多个)扩展动作110提供在内置原生(native)动作108旁边。
用户102一般通过网络104(其还可以是与网络116相同的网络)将一个或多个查询提交给数字助理106。数字助理106确定与提交的查询相关联的一个或多个用户意图并将合适的响应提供给查询。下面更详细地讨论该过程。
图2图示了根据本公开的方面的数字助理系统的另一示例架构200。这样的架构示出一个可能实施例,其中诸如数字助理系统106的数字助理系统的各个方面可以采用包括前端层、应用逻辑层以及数据层的三层架构来实现。这样的架构是将适合于所公开的实施例的仅一种类型的云和/或服务器架构,并且也可以使用许多其他模型和架构。例如,更近的许多服务和应用使用微服务架构来开发,使得它们可以被部署并运行在系统和/或服务结构的集群上。然而,三层架构足以用于说明目的,并且本领域技术人员将能够从所提供的说明来理解如何在其他环境中实现数字助理架构。
如相关计算机和互联网相关的领域的技术人员理解的,图2中示出的每个模块或引擎表示一组可执行软件指令和用于执行指令的对应的硬件(例如,存储器和处理器)。为了避免以不必要的细节使所公开的技术方案模糊不清,已经从图2中省略了各种功能模块和引擎。
如图2所示,前端层包括呈现引擎212,其可以包括一个或多个软件和/或硬件实现的模块。呈现引擎负责用户体验(UX)并从包括一个或多个用户设备204的各种客户端计算设备接收信息和/或请求,并将合适的响应传送到请求设备。因此,呈现引擎212可以一般通过(一个或多个)客户端应用206引起信息(例如,卡、响应等)、用户界面等在用户设备204上的呈现。
在该实施例中,用户设备204可以包括各种设备,可以包括诸如以下的设备:可穿戴设备(即,手表、带、眼镜等)、可携带设备(即,移动电话、平板计算机、膝上型计算机等)、固定设备或半固定设备(即,便携式计算机、台式计算机、集线器等)、和/或服务器设备和/或服务(即,服务器、云服务、日历系统、电子邮件系统等)。另外,一个多个车辆可以在图2的实施例的上下文中被认为是用户设备,即使这样的(一个或多个)车辆可以在不同时间与不同用户相关联,诸如在车辆由多于一个用户共享的情况下。
用户与所有这些设备和/或服务交互,并且它们全部具有可以由数字助理系统102用于将数字助理服务提供给用户的信息。该数据将被统称为用户数据,并且可以包括与用户相关的信息以及关于用户的信息,诸如偏好、简档信息等。示例信息包括但不限于用户的日历和/或日程、任务列表、电子邮件历史、购买历史、用户的正常日程、工作路线、家庭地点、工作地点、(即,针对学生的)学校地点、优选通信形式、拥有/与之交互的设备等。
(一个或多个)用户设备204可以执行允许设备通常通过呈现引擎212与数字助理系统106通信的不同客户端应用206。这样的应用可以包括但不限于web浏览器应用、数字助理应用、和/或客户端应用(也被称为“apps”),其已经针对一个或多个平台被开发,以提供将信息呈现给用户并且经由(一个或多个)网络112通信以与数字助理系统106交换信息的功能。用户设备204中的每一个可以包括计算设备,该计算设备包括至少一个处理器、显示器以及与网络112的通信能力以访问数字助理系统106。一个或多个用户202可以是个人、机器、或与(一个或多个)用户设备204交互的其他装置。(一个或多个)用户202可以经由(一个或多个)用户设备204与数字助理系统106交互。(一个或多个)用户202可以不是联网环境的一部分,但是可以与(一个或多个)用户设备204相关联。
根据隐私法和用户授权,数字助理系统106可以存储和/或能够访问各种各样的数据。如图2所示,数据层包括若干数据库和/或其他类型的数据存储库(统称为数据存储库),包括用于存储与诸如用户202的用户相关联的数据的数据存储库218。能够被存储在这样的数据存储库中的信息的类型包括但不限于以上讨论的任何用户信息。
数据层还可以包括第三方数据存储库,其存储从第三方获得的信息,诸如从(一个或多个)第三方系统208和/或(一个或多个)第三方应用210获得的信息。该信息可以是关于用户的,或者可以是由服务动作用于提供通过服务动作被利用的服务的信息。例如,如果服务动作还利用由(一个或多个)第三方系统208和/或(一个或多个)第三方应用210提供的服务,则允许数字助理系统106与(一个或多个)第三方系统208和/或(一个或多个)第三方应用210之间的相互操作的信息可以被存储在第三方数据存储库220中。在一些实施例中,从其他源收集的信息也可以被存储在第三方数据存储库220中。
数据层中的另一数据存储库可以包含用于使执行引擎216、语言理解模型224、和/或其他模块、组件、机器人程序等操作的规则222。这样的规则指定一组输入数据(组合)、一组条件以及一组得到的输出,诸如应当被采取的用户意图或动作。在这种上下文中,组可以包括一个或多个项(即,一个或多个输入数据、一个或多个条件、和/或一个或多个得到的输出)。换言之,规则限定输入数据与(一个或多个)得到的输出之间的关系。示例规则可以是当用户在距离预约的阈值时间内时,则将提醒用户离开以参加预约的卡发送到用户。该示例规则限定用户信息(具有预约的用户、预约)与得到的动作(发送离开以参加预约的提醒)之间的关系。诸如当指定阈值内的时间内时,条件可以被暗示、导出或表达。另一示例规则可以是当用户输入查询包含某种形式的术语“提醒”时,提醒意图应当被设置。
数字助理系统106还包括数据摄取和/或丰富模块214。当数据被接收时,数据可以以各种方式被处理,各种方式包括预处理操作的任何组合,预处理操作诸如验证、整理、规范化、变换、特征提取、选择等。验证和/或整理一般包括检测并校正数据或移除损坏的、不准确的、不完整的数据等。验证还确保数据具有合适的类型。规范化一般包括确保数据被恰当地缩放、冗余被移除等。变换包括将数据从一个集合映射到另一个,诸如当来自各个源的数据被映射到等效数据集(即,在来自不同制造者的部件编号利用标准部件编号系统被变换的情况下)时等。特征提取包括标识并提取各条相关信息,有时与机器学习相关。特征提取还涉及减少数据集的维度。选择包括选择感兴趣的相关特征的子集。其他预处理还可以在合适的情况下被使用。
数据摄取和/或丰富模块214还可以执行数据丰富。数据丰富通常将来自不同源的信息相互关联并以数据利用其他信息变得丰富(即,与之相关)的方式来汇总它。例如,来自多个源的用户信息可以被汇总在一个或多个相关联的数据结构中。汇总的信息可以然后允许数字助理系统标识用户在哪里、用户参与什么活动等。
数据摄取和/或丰富模块214可以从各种源接收并汇总信息,各种源在图2中由(一个或多个)第三方系统208、(一个或多个)第三方应用210、(一个或多个)用户设备204以及其他源表示。仅通过举例的方式,(一个或多个)第三方应用210和/或(一个或多个)第三方系统208可以表示如电子邮件、日程安排/日历安排的服务、以及其他这样的服务。(一个或多个)第三方应用210和/或(一个或多个)第三方系统208还可以是由提供扩展服务以填充用户请求的机器人程序使用的系统。例如,当用户请求助理预定在特定日期到目的地的航班时,机器人程序可以利用航班预定系统。(一个或多个)第三方应用210和/或(一个或多个)第三方系统208还可以表示如集线器的其他推理系统,其汇总信息并做出推理。这些可以推理出如家庭/工作/学校地点和活动、旅行上下文、地点和访问模式、路线模式、会议上下文、通信上下文、紧急信息、搜索上下文等的事情。当然,在给定原始数据的情况下,数字助理系统106也可以在一些实施例中做出这样的推理。
数字助理系统106包括语言理解模型224。语言理解模型224负责获取输入查询并从输入查询标识一个或多个意图。语言理解模型可以将置信度水平(也称为置信度得分)与所标识的意图相关联。置信度水平表示输入查询映射到所标识的意图的置信度。在被传递到语言理解模型224之前,输入查询可以被置成适合于由语言理解模型224处理的格式。例如,以音频格式(声音等)接收的查询可以在被传递到语言理解模型224之前被转换为文本或者某种其他期望格式。
数字助理系统106还包括执行引擎216。执行引擎216从语言理解模型224和/或从其他可执行指令接收意图,并且标识哪些机器人程序由意图触发。机器人程序可以不仅在意图上而且在意图/置信度水平组合上触发。在一些实施例中,机器人程序可以在给定意图具有低于阈值的置信度水平的情况下不触发,而是可以在高于阈值的情况下触发。在其他的一些实施例中,置信度水平未被使用,并且响应选择和排名模型恰当地处理任何歧义。
查询/响应模型表示当系统以反应模式动作时数字助理系统106的操作。然而,数字助理系统106还可以以主动模式操作。在主动模式中,系统可以监控数据(用户和/或其他信号或事件的当前上下文)并且主动地采取动作(即,以某种方式使用户参与)而无需用户诸如通过查询发起动作。例如,通过访问用户的日历、旅行日程和/或航班信息,数字助理系统106可以知道针对用户的航班的验票时间已经到达。数字助理可以利用提醒(即,验票时间)、利用请求(即,是时间验票了,我是否应当为你完成验票吗?)或者以某种其他方式主动地使用户参与。在又一示例中,如果用户浏览餐馆,则数字助理106可以步入并询问用户是否想要针对餐馆的推荐、进行预约等。
执行引擎还可以监控传入数据并提供洞察作为触发标识过程的一部分。如本文中所使用的洞察是系统具有访问和/或(即,从关于用户或与用户相关的数据)推断出用户或一组用户的许可的关于用户的特定条信息。洞察可以表示用户的特定上下文和/或活动,诸如在开会、操作车辆、浏览互联网、工作、在商店、在度假等。
(一个或多个)洞察和/或(一个或多个)意图触发数字助理106的机器人程序/内置功能。这些例如在图2中由原生任务266和扩展任务230表示。在机器人程序/内置功能被触发后,任务选择操作228就对任务进行排名和选择,并最终确定对用户的响应,如下面所描述的。
图3图示了用于具有对机器人程序的自动排名和选择的数字助理系统的示例架构300。在运行时期间,用户将使用设备302通常经由如先前所解释的网络304将查询提交给数字助理系统。查询将被转换为由语言理解模型308期望的格式。例如,如果查询是音频(话音等),则查询可以由执行语音到文本转换并将文本置成由语言理解模型308期望的格式的语音识别器306转换。
语言理解模型308产生对应于查询的一个或多个洞察。这些洞察被顺着传递到执行引擎310。如先前所讨论的,执行引擎310还可以提供洞察作为标识哪些机器人程序由查询和/或洞察触发的一部分。然而,为便于描述并避免重复短语“查询和/或洞察”或短语“意图和/或洞察”,描述将以机器人程序由查询触发来呈现。然而,在本文中描述的所有实施例中,由查询/意图进行的触发还包括如先前所描述的由意图进行触发。
执行引擎310标识由查询触发的机器人程序。附加地,查询可以被直接传递到使用它们自己的语言理解模型的那些机器人程序。执行引擎310通过标识在特定洞察/查询组合上触发的那些机器人程序、和/或通过将查询呈现给使用它们自己的语言理解模型的那些机器人程序来标识由查询触发的机器人程序。机器人程序当它们指示它们想要处理查询时被触发。
在标识被触发的机器人程序中,执行引擎可以利用数据存储库322中的定义和其他信息。数据存储库322中的定义帮助定义由机器人程序提供的各种任务和体验。因此,数据存储库322保持由执行引擎310使用的经历(即,机器人程序和/或领域)、任务描述等的列表。
另外,执行引擎310从触发的机器人程序提取特征和/或提取关于触发的机器人程序的特征。执行引擎310提取与以下项相关的特征:
●考虑一个特定机器人程序如何对特定查询做出响应而计算的特征,包括语言理解模型输出;
●考虑所有激活的机器人程序如何对特定查询做出响应而计算的特征,包括语言理解模型输出;
●考虑一个特定机器人程序的统计而计算的特征;以及
●考虑所有激活的机器人程序的统计而计算的特征。
下面讨论(即,在以上的最后两个点中)特征根据其被计算的代表性统计。附加地,在一些实施例中,模型可以用于在统计和/或特征被提取之前将机器人程序的输出转换成“规范化”数据。下面讨论以上特征及其示例。
特征提取器312标识(如下面所解释的)已经被预先计算并且与触发的机器人程序相关联的特征。如下面所讨论的,当机器人程序被呈现用于部署时计算特征,并且这些特征结合以上特征用于标识机器人程序应当如何被排名并且机器人程序是否应当被选择。特征提取器312从数据存储库322中取回与个体的触发的机器人程序相关联的特征,将取回到的特征与来自执行引擎310的特征进行组合,并且将特征和/或其子集呈现给响应排名和选择模型314。在一些实施例中,最接近的匹配集(即,使用距离度量)从数据存储库322中被取回。在本公开中,子集包括真子集(即,完全集)。该模型通过如下面所描述的机器学习过程来创建并将呈现的特征映射到针对触发的机器人程序的排名。
模型的输出是触发的机器人程序的排名的列表。被分配给触发的机器人程序的排名可以是绝对或相对排名。绝对排名有效地将排名的机器人程序放置成表示对触发的机器人程序的不同处置的“桶”。例如,一个桶可以向选择逻辑发信号通知触发的机器人程序将适合于呈现给用户(即,机器人程序已经合适地触发并将适合于响应于查询而呈现给用户),而另一桶可以发信号通知触发的机器人程序出于某种原因将不适合于响应于查询而呈现给用户。相对排名将触发的机器人程序按某种度量的顺序放置到列表中,该度量诸如为触发的机器人程序将满足用户的接受度(即,当其被假定并提供适合于查询的任务时触发)的置信度水平、由机器人程序提供的任务是否被用户喜欢(即,基于用户简档或其他数据)或者某种其他度量。
附加的选择逻辑可以被应用以选择要呈现给用户的排名的列表的子集。选择逻辑可以考虑各个方面,诸如用户简档数据、应当被呈现给用户的选择的最大数目、某些成本度量或其他准则。作为代表性示例,假设请求是要预定航班。触发的机器人程序包括使用特定预定服务的机器人程序A和使用另一预定服务的机器人程序B。特征提取器312标识与两个机器人程序相关联的特征并将子集呈现给排名和选择模型314。假定排名和选择模型314将它们在相对排名列表中排名为机器人程序B并且然后为机器人程序A。
在第一实例中,用户还没有指示针对预定服务的偏好并且系统将呈现给用户的选择的最大数目是3。在该实例中,返回到用户的响应将是用户拾取要使用的预定服务。取决于用户的选择,选择的机器人程序将被调用并且票被预定。
在第二实例中,用户已经指示了针对由机器人程序A使用的预定服务的偏好。在该实例中,返回到用户的响应可以指示票将使用与机器人程序A相关联的预定服务来预定并且系统将调用机器人程序A来预定服务。
在这两个实例中,附加的选择逻辑可以被应用以选择将用于最终确定响应的(一个或多个)机器人程序。这可以由响应排名和选择模型314和/或响应最终确定操作316来执行。在(一个或多个)机器人程序已经被选择后,响应最终确定操作316就准备信息并以合适的格式将其呈现给用户,诸如先前所描述的。
如应当通过该讨论显而易见的,排名和选择模型314具有不仅标识应当将任务提供给用户的机器人程序的效果,而且具有修改机器人程序的行为的效果。因此,如果机器人程序当其不应当触发时触发,由于针对该机器人程序的特征被应用到排名和响应模型,所以模型将以某种方式对机器人程序进行排名或者以其他方式指示其不应当已经触发并且不应当被呈现为响应的一部分。这具有修改机器人程序的行为并且使不守规矩的机器人程序与它们应当如何以自动方式来操作一致的效果。
如下面结合图5更完全地讨论的,用于扩展数字助理的功能的机器人程序318经由扩展入口320被提交,该扩展入口应用任何接受/批准过程(测试错误等)以及使用一组策划查询来收集由响应排名和选择模型314用于如先前所描述的那样排名和选择触发的机器人程序的上文所讨论的特征(存储在数据存储库322中)。
如下面结合图4更完全地讨论的,机器人程序326的样本集和查询328的策划集由机器学习方法324用于产生由响应排名和选择314使用的排名和选择模型。
图4图示了用于训练排名和选择模型的示例架构400。如先前所描述的,数字助理系统402包括执行引擎404、特征提取器406以及排名和选择模型408。这些块的功能先前已经描述并且不需要重述这些块在运行时数字助理402中做什么。
标注存储库412包含用于如下面所解释的那样训练排名和选择模型408的一组代表性机器人程序416和一组策划查询418。机器人程序和查询提取功能414从标注存储库412中取回该组代表性机器人程序416和策划查询418。策划查询(也有时被称为经标注的查询)是为了收集先前提及的特征而选择的查询。下面呈现了代表性特征的细节。查询在如下意义上被策划:它们被选择为收集构建关于特定机器人程序如何操作的“简档”所需要的特征信息。查询可以包括单个查询以及一组查询和后续查询,单个查询诸如应当全凭本身触发动作的查询(“与我的医生安排星期五下午2点的预约”),一组查询和后续查询一起表示在(即,由机器人程序做出的)特定响应被接受并呈现给用户的假设下的交谈。示例可以是交流:
●用户:“你能帮我安排下医生预约吗?”
●助理:“这将是你的初级护理医生:瓦伦堡博士?”
●用户:“是”。
●助理:“你想要预约安排在什么时候?”
●用户:“星期五下午2点”
●助理:“你的预约已经被安排并且放置在你的日历上。”
对于使用定制语言理解模型(而不是内置LU模型)的机器人程序,查询可以包含用于收集关于LU模型如何表现和/或什么类型的查询触发机器人程序的统计的各种查询。这些统计变成用于训练排名和选择模型的特征的一部分。
操作420提取描述机器人程序的描述(也被称为定义)。在一些实施例中,描述被存储在数据存储库中,例如数据存储库410中。数据存储库410可以是与图3的数据存储库322相同的数据存储库。描述允许数据存储库410包含由执行引擎404在操作期间用于标识由查询/(一个或多个)意图触发的机器人程序的任务的列表、它们的描述等。
操作422提取本文中讨论的用于训练排名和选择模型的特征。特征可以包括但不限于以下项中的一项或多项:
1.从语言理解结果中提取的特征(对于策划查询集中的每个单个可能响应并且对于完全在策划查询集中的所有可能响应)。示例包括但不限于:语言理解模型置信度得分的最小值、最大值、平均值、求和、标识的不同领域的数目、标识的意图的数目、跨所有选择检测到的实体的数目、和/或针对机器人程序而检测到的实体的数目。
2.从交谈在特定响应被接受并被呈现给用户的假设下进展如何(机器人程序在其应当触发时是否触发以及如从策划查询集确定的对查询的响应是否是合适的)中提取的特征。示例包括但不限于:填充的新实体的数目、再访问的实体的数目、是否询问了确认、触发的任务是否是重复问题动作、触发的任务是否是新问题动作、和/或对话状态置信度增大。
3.从针对由该机器人程序/这些机器人程序的各种任务活动使用的各种模型而采集的统计中提取的特征。示例包括但不限于:预测的总体精度、预测的总体召回率、针对当前语言理解模型结果的预期的精度、和/或估计的语义置信度重调因子。
4.从机器人程序配置中提取的特征。示例包括但不限于:机器人程序执行的任务的数目、任务中的参数的数目、使用的LU模型的类型、使用的查询的类型等。
5.从输入源中提取的特征:针对话音的语音识别水平特征、针对文本查询的文本特性特征、在其他模态被使用的情况下其他模态特定的信息(手势、签署、按钮按压等)。
如以上的其他特征的统计通过针对机器人程序的样本集运行策划查询集而被收集。统计还可以包括以下项中的一项或多项:
●机器人程序多久被它自己的语言使用模型(如果它使用一个语言使用模型的情况下)触发一次;
●哪个意图/哪种意图触发机器人程序;
●触发机器人程序的查询的平均置信度得分;
●置信度得分分布和/或概率密度函数如何;
●触发机器人程序的查询的特性(长查询、短查询等);以及
●模型多久基于在系统中具有的现有意图之上触发一次。
操作422通过针对样本机器人程序416运行策划查询集418并采集以上标识的统计和其他信息来提取特征。对于以上的信息中的一些,查询不需要被执行并且信息直接来自查询418它们本身、机器人程序416或两者。例如,从输入源(即,#5)提取的特征可以通过检查策划查询418或通过评价与策划查询418相关联的元数据(标注,等)来标识。从机器人程序配置(即,#4)中提取的特征可以通过检查机器人程序配置信息和/或与机器人程序相关联的元数据来标识。如先前所解释的,提取的特征可以被放置在一系列特征向量中并且被存储在数据存储库410中以用于在运行时期间使用。数据存储库410可以与图3的数据存储库322相同。
该系列特征向量用于经由操作424训练排名和选择模型。在操作424中,机器学习模型在输入特征向量上被使用以训练排名和选择模型。任何数目的机器学习模型适合于在操作424中使用并且这样的模型是公知的。仅作为代表性示例,机器学习模型可以是以下项中的一项或多项:贝叶斯模型(朴素贝叶斯、贝氏信念网络、贝氏网络、平均-依赖估计量等)、决策树模型(分类和回归树、卡方自动交互检测、条件树等)、降维模型(主成分分析、偏最小二乘回归、投影追踪、主成分回归、判别分析模型,诸如二次方程式、正规化、柔性、线性、多维尺度等)、基于实例的模型(k最近邻、学习向量量化、自组织映射、局部加权的学习等)、聚类方法(k均值、k中值、期望最大化、分层聚类等)、深度学习模型(深度波尔茨曼机、深度信念网络、卷积神经网络等)、集成模型(随机森林、梯度推进机、自展输入引导式聚合等)、神经网络模型(径向基函数网络、感知机、反向传播、霍普菲尔网络等)、正则化模型(脊线回归、弹性网、最小角度回归等)、规则系统(立体、单一规则、零规则、重复的增量修剪以产生错误减少等)、回归模型(线性回归、最小二乘回归、逻辑回归等)或者未被分类在以上分类中的模型,诸如支持向量机(SVM)的模型或另一模型。
过程用于使学习模型自举。一旦初始模型被训练,当附加的机器人程序被提交并且附加的统计如下面所描述的被提取时,统计可以用于在连续或定期的基础上调节排名和选择模型408的操作。因此,通过机器人程序提交而采集的统计可以被应用于机器学习技术以进一步训练模型。在备选实施例中,模型在一组代表性机器人程序416和一组策划查询418上被训练并且不被更新。附加地或备选地,更新的一组代表性机器人程序416和/或更新的一组策划查询418可以用于更新对模型的训练。
排名和选择模型由如以上诸如在图3中描述的数字助理系统402的排名和选择组件408使用。
图5图示了用于采集关于提交的扩展机器人程序502的信息的示例架构500。换言之,示例架构500描述由扩展入口504(例如,扩展入口320或数字助理扩展入口112)用于采集关于提交的机器人程序的信息使得它们可以被集成到系统中并且通过排名和选择模型被排名/选择的过程。入口可以执行这里未示出或讨论的附加过程,诸如安全检查、以及在做出部署之前发生的任何其他检查。
机器人程序502通过扩展入口504被提交。当机器人程序502被提交时,开发者定义执行它们的任务所需要的各种意图和其他信息(例如,洞察)。如先前所讨论的,开发者可以依赖于内置LU模型和由此创建的意图或者可以创建新定制LU模型。在一些实施例中,定制模型通过给出示例查询和/或规则来创建。查询/规则可以基于正示例(即,当查询“预定航班”被接收时触发机器人程序)或者负示例(即,当查询“预定航班”被接收时不触发机器人程序)或者两者的组合。
当机器人程序被提交时,扩展入口504提取描述信息506和特征508。这可以通过针对机器人程序运行一组策划查询510来完成。一组策划查询510可以与如以上结合图4描述的用于训练排名和选择模型的一组策划查询418相同、完全不同、或者部分不同。描述以与以上针对一组代表性机器人程序416的描述相同的方式来提取。换言之,相同操作420可以由扩展入口504用于提取合适的描述。类似地,特征508以与以上结合操作422描述的相同的方式来提取,除了一组策划查询510用于标识特征。
提取的特征508可以在一些实施例中用于根据用于创建排名和选择模型的机器学习模型来更新排名和选择模型。如先前所描述的,这可以在定期的基础上或者在不定期的基础上进行,或者在实施例不使用提取的特征来更新模型的情况下根本不执行。
描述506和特征508被存储在数据存储库512中。数据存储库512可以是与图3中示出的数据存储库322相同的数据存储库。如先前所描述的,存储的信息之后由数字助理系统514在运行时期间使用。
图6图示了扩展机器人程序602的各个部分的一个示例。图示和讨论的部分可以被接收并部署为统一数据结构的一部分,或者可以被接收和部署在将图示的部分中的一个或多个进行组合的数据结构中。另外,不是所有部分都可以被包括在所有机器人程序中。机器人程序可以以任何组合具有下面描述的部分中的一个或多个。
扩展机器人程序602可以包括机器人程序为了操作而需要的用户数据604。例如,如果机器人程序提供的任务是预定航班,则机器人程序将需要用户的姓名和由预定公司预定航班所需要的其他信息。该信息中的一些是数字助理能够访问并且机器人程序需要(利用用户的许可)被给予访问以便完成其任务的用户数据。这样的用户数据可以例如从用户和/或从诸如用户简档和数据存储库218的数据存储库获得。
如先前所讨论的,洞察是数字助理能够访问或者可以从数字助理能够访问的信息推断出的、关于用户的一条特定信息。洞察通常与上下文信息相关,诸如用户正在开会、开车、在家等。洞察606表示机器人程序602想要访问以便进行工作的洞察。例如,如果用户说“给我订购披萨”,则机器人程序需要知道将披萨送到哪里,其在缺少来自用户的任何其他指示的情况下推测是用户的当前位置。因此,机器人程序可能需要访问用户的当前位置洞察以便完成其任务。
意图608表示机器人程序想要“订阅”的意图。换言之,这些是由内置LU模型产生的应当触发机器人程序的意图。另外,意图可以具有相关联的置信度得分以允许机器人程序判定意图中是否存在足够的置信度以触发和/或数字助理应当触发机器人程序的置信度得分阈值。
如先前所讨论的,在一些实施例中,机器人程序可以具有它自己的定制LU模型以便确定它自己的意图。定制LU模型可以通过正和/或负示例查询和/或规则来描述。语言理解部分610表示定制LU模型,和/或对于使用查询和/或规则来描述LU模型的那些实施例表示用于描述其的查询/规则。
请求/预服务部分612表示应当在调用提供任务的实际指令之前被调用的可执行指令。可执行指令可以完成需要和/或期望的任何预处理,诸如在信息以其他方式不可获得的情况下询问用户完成任务所需要的信息。
处理/提供服务部分614表示根据触发任务的洞察来完成机器人程序执行的任务的可执行指令。
通知/后服务部分616表示应当在主要部分614之后被调用的可执行指令。这些指令可以完成所需要的任何后处理任务,诸如数据整理、任务终止等。
机器人程序602可以执行多于一个任务。对于那些实例,以上部分可以具有对所有任务共用的一些部分、对任务独特的一些部分、或其组合。换言之,在一些实例中,每个任务可以具有完全独立的部分。在其他的一些实例中,一些部分可以在多个任务之间是共用的。
图7图示了用于对机器人程序自动地进行排名和选择以服务请求的示例流程图700。流程图在操作702处开始并且前进到操作704,其中由数字助理系统接收查询。如先前所讨论的,查询可以以诸如音频(例如,话音)、文本、签署、按钮按压等的任何形式出现。
可选操作706表示在查询上完成以将其转换为期望格式的任何转换。在操作707中查询被呈现给LU模型并且如先前所讨论的那样从查询标识一个或多个意图。所标识的意图还可以具有相关联的置信度水平,其标识意图与查询相关联的置信度。
操作708标识哪些机器人程序在所标识的(一个或多个)意图上和/或基于所呈现的查询触发。这可以如先前上文所描述的那样来完成。
操作710-720表示针对已经在操作708中被触发的每个机器人程序执行的循环。循环在操作710处开始并且前进到操作714,其中与触发的机器人程序相关联的特征被标识。如先前所讨论的,这可以以各种方法来完成,诸如通过将数据存储库(例如,数据存储库322等)中的特征与触发的机器人程序匹配,诸如通过使用标识符,通过使用在触发过程期间从机器人程序提取的信息,等等。
操作716将从数据存储库取回的特征呈现给排名和选择模型,并获得针对机器人程序的排名。如先前所描述的,排名可以是相对的、绝对的、或其特定组合。以排名顺序来放置机器人程序(操作718)。
操作720表示循环的结束。在循环完成之后,系统具有激活的机器人程序的经排名的列表。
操作722根据选择准则来选择机器人程序。如讨论的,选择准则可以包括以下项中的一项或多项:基于阈值的选择(即,排名前n个的机器人程序)、基于用户简档数据的选择、基于机器人程序类型(即,内置或扩展)的选择、基于机器人程序的类别的选择(即,执行给定领域中的任务)等。
操作724在一个或多个响应中将选择的机器人程序呈现给用户。响应可以适合于最适于与用户通信的通道。例如,如果用户正在操作车辆,则响应可以以音频方式而不是通过文本来呈现。该操作724表示例如由图3的操作316提供的功能,并且包括针对给定响应介质(音频、文本、触觉等以及其组合)和响应通道(移动电话、桌面屏幕、带/手表或其他可穿戴装置等以及其组合)格式化响应的任何组合。
方法在726处结束。
示例机器架构和机器可读介质
图8图示了适合于实现本文中公开的系统等或者用于执行本文中公开的方法的代表性机器架构。图8的机器被示出为独立设备,其适合于实现以上的构思。针对以上描述的服务器方面,可以使用在数据中心中操作的多个这样的机器、云架构的一部分等。在服务器方面中,不是所有图示的功能和设备都被利用。例如,尽管用户用于与服务器和/或云架构交互的系统、设备等可以具有屏幕、触摸屏输入等,但是服务器通常不具有屏幕、触摸屏、相机等并且通常通过具有合适的输入和输出方面的连接的系统与用户交互。因此,下面的架构应当被认为涵盖多种类型的设备和机器,并且各个方面可以取决于其形状因子和用途而存在于或者可以不存在于任何特定设备或机器中(例如,服务器很少具有相机,而可穿戴装置很少包括磁盘)。然而,图8的示例说明适合于允许本领域技术人员确定如何利用硬件和软件的合适组合、利用对所使用特定设备、机器等的图示的实施例的合适修改等来实现先前描述的实施例。
尽管仅单个机器被图示,但是术语“机器”还应当被认为包括单独地或联合地执行指令集(多个指令集)以执行本文讨论的方法中的任何一个或多个的机器的任何汇集。
机器800的示例包括至少一个处理器802(例如,中央处理单元(CPU)、图形处理单元(GPU)、高级处理单元(APU)、或其组合)、诸如主存储器804、静态存储器806、或其他类型的存储器的一个或多个存储器(其经由链路808彼此通信)。链路808可以是总线或其他类型的连接通道。机器800可以包括另外的可选方面,诸如包括任何类型的显示器的图形显示单元810。机器800还可以包括其他可选方面,诸如字母数字输入设备812(例如,键盘、触摸屏等)、用户界面(UI)导航设备814(例如,鼠标、跟踪器、触摸设备等)、存储单元816(例如,磁盘驱动器或(一个或多个)其他存储设备)、信号生成设备818(例如,扬声器)、(一个或多个)传感器821(例如,全球定位传感器、(一个或多个)加速度计、(一个或多个)麦克风、(一个或多个)相机等)、输出控制器828(例如,用于与一个或多个其他设备连接和/或通信的有线或无线连接,诸如通用串行总线(USB)、近场通信(NFC)、红外(IR)、串行/并行总线等)、以及用于连接到一个或多个网络826和/或通过一个或多个网络826通信的网络接口设备820(例如,有线的和/或无线的)。
可执行指令和机器可读介质
各种存储器(即,804、806和/或(一个或多个)处理器802的存储器)和/或存储单元816可以存储实施本文描述的方法或功能中的任何一个或多个或者由本文描述的方法或功能中的任何一个或多个利用的一组或多组的指令和数据结构(例如,软件)824。这些指令当由(一个或多个)处理器802执行时使各个操作实现所公开的实施例。
如本文中所使用的,术语“机器可读介质”、“计算机可读介质”以及“设备可读介质”意指相同事物并且可以在本公开中互换使用。术语包括存储一个或多个指令或数据结构的单个介质或多个介质(例如,集中式或分布式数据库,和/或相关联的高速缓存和服务器)。该术语还应被认为包括能够存储、编码或承载用于由机器执行的并且使机器执行本发明的方法中的一个或多个的指令,或者能够存储、编码或承载由这样的指令使用的或与这样的指令相关联的数据结构的任何有形介质。因此,该术语应被认为包括但不限于固态存储器、以及光学和磁性介质。机器可读介质、计算机可读介质和/或设备可读介质的具体示例包括:非易失性存储器,通过示例包括半导体存储器器件(例如,可擦除可编程只读存储器(EPROM)、电可擦除可编程只读存储器(EEPROM))、以及闪存器件;诸如内部硬盘和可移除盘的磁盘;磁光盘;以及CD-ROM和DVD-ROM盘。术语机器可读介质、计算机可读介质、以及设备可读介质特别地不包括非法定信号本身,其可以被涵盖在下面讨论的术语“信号介质”之下。
信号介质
术语“信号介质”应当被认为包括任何形式的经调制的数据信号和信号本身。术语“经调制的数据信号”意指具有以使得在信号中编码信息的方式设置或改变的其特性中的一个或多个的信号。
示例实施例
示例1.一种用于对服务扩展进行选择和排名的方法,包括:
接收与用户相关的查询或推理;
标识响应于查询或推理而激活的任何机器人程序;
通过针对每个激活的机器人程序执行动作来对激活的机器人程序进行排名,动作包括:
标识对应于激活的机器人程序的一组特征;
将一组特征的至少一部分呈现给排名和响应选择模型,排名和响应选择模型经由机器学习过程被训练;
使用排名和响应选择模型以及一组特征的一部分来标识针对激活的机器人程序的排名;以及
将激活的机器人程序以相较于其他激活的机器人程序的排名顺序放置,以创建经排名的机器人程序列表;
从经排名的机器人程序列表中选择至少一个机器人程序;以及
将至少一个机器人程序的输出呈现给用户。
示例2.根据示例1的方法,还包括将查询从一种格式转换为另一种格式以用于处理。
示例3.根据示例1的方法,其中一组特征包括以下项中的至少一项:
从语言理解模型的结果中提取的特征;
从交谈在特定响应被接受并被呈现给用户的假设下进展如何中提取的特征;
从针对由激活的机器人程序的任务活动使用的模型而被采集的统计中提取的特征;
从激活的机器人程序配置中提取的特征;以及
从输入源中提取的特征。
示例4.根据示例1的方法,其中一组特征还包括以下项中的至少一项:
机器人程序的语言理解模型与内置语言理解模型之间的相关性度量;
机器人程序处置的任务列表;以及
描述使得机器人程序触发的至少一个查询的至少一个度量。
示例5.根据示例1、2、3或4的方法,还包括:
取回一组策划查询;
针对提交的机器人程序运行一组策划查询;
收集表征提交的机器人程序对一组策划查询的响应的一组特征;以及
存储一组特征。
示例6.根据示例5的方法,还包括:
从提交的机器人程序提取包括由机器人程序处置的任务的一组特征。
示例7.根据示例5的方法,还包括:
基于提交的机器人程序对一组策划查询的响应,来标识一组正触发示例或一组负触发示例或两者。
示例8.根据示例1、2、3或4的方法,还包括:
标识一组代表性机器人程序;
标识策划查询的训练集;以及
使用机器学习过程,从一组代表性机器人程序和策划查询的训练集来创建排名和响应选择过程。
示例9.一种计算系统,包括:
处理器和计算机可读介质上可访问的可执行指令,可执行指令当被执行时使系统执行操作,操作包括:
接收与用户相关的查询或推理;
标识响应于查询或推理而激活的任何机器人程序;
通过针对每个激活的机器人程序执行以下操作来对激活的机器人程序进行排名:
标识对应于激活的机器人程序的一组特征;
将一组特征的至少一部分呈现给排名和响应选择模型,排名和响应选择模型经由机器学习过程而被训练;
使用排名和响应选择模型以及一组特征的一部分来标识针对激活的机器人程序的排名;以及
将激活的机器人程序以相较于其他激活的机器人程序的排名顺序放置,以创建经排名的机器人程序列表;
从经排名的机器人程序列表中选择至少一个机器人程序;以及
将至少一个机器人程序的输出呈现给用户。
示例10.根据示例9的系统,其中一组特征包括其他激活的机器人程序的上下文中对应于该激活的机器人程序的特征和从一组策划查询计算的特征。
示例11.根据示例9的系统,其中一组特征包括以下项中的至少一项:
语言理解模型的置信度得分;
由语言理解模型检测到的实体的指示符;
置信度得分分布;
在现有意图之上触发的频率;以及
引起触发的查询的类型的指示符。
示例12.根据示例9的系统,其中一组特征还包括以下项中的至少一项:
机器人程序的语言理解模型与内置语言理解模型之间的相关性度量;
机器人程序处置的任务的列表;以及
描述使得机器人程序触发的至少一个查询的至少一个度量。
示例13.根据示例9、10、11或12的系统,还包括:
取回一组策划查询;
针对提交的机器人程序执行一组策划查询;
收集表征提交的机器人程序对一组策划查询的响应的一组特征;以及
存储一组特征。
示例14.根据示例13的系统,还包括:
从提交的机器人程序提取包括由机器人程序处置的任务的一组特征。
示例15.根据示例13的系统,还包括:
基于提交的机器人程序对一组策划查询的响应来标识一组正触发示例或一组负触发示例或两者。
示例16.根据示例9、10、11或12的系统,还包括:
标识一组代表性机器人程序;
标识策划查询的训练集;以及
使用机器学习过程,从一组代表性机器人程序和策划查询的训练集来创建排名和响应选择过程。
示例17.一种机器可读介质,具有编码于其上的可执行指令,可执行指令当由机器的至少一个处理器执行时使机器执行操作,操作包括:
通过执行包括以下的操作来训练排名和响应选择模型:
标识一组代表性机器人程序;
标识策划查询的训练集;以及
使用机器学习过程,从一组代表性机器人程序和策划查询的训练集来创建排名和响应选择过程;
接收来自用户的查询或与用户相关的推理;
标识响应于查询而激活的任何机器人程序;
通过针对每个激活的机器人程序执行操作来对激活的机器人程序进行排名,操作包括:
标识其他激活的机器人程序的上下文中对应于该激活的机器人程序的一组特征;
标识从第二组策划查询计算的第二组特征;
将该一组特征与第二组特征组合成一组经提取的特征;
将该组经提取的特征的子集呈现给排名和响应选择模型;
使用排名和响应选择模型以及经提取的特征的子集来标识针对激活的机器人程序的排名;以及
将激活的机器人程序以相较于其他激活的机器人程序的排名顺序放置,以创建经排名的机器人程序列表;
从经排名的机器人程序列表中选择至少一个机器人程序;以及
将至少一个机器人程序的输出呈现给用户。
示例18.根据示例17的机器可读介质,其中机器学习过程包括以下项中的至少一项:
基于回归的方法;
基于实例的方法;
正则化方法;
决策树方法;
贝叶斯方法;
聚类方法;
关联规则学习方法;
神经网络方法;
深度学习方法;
降维方法;以及
集成方法。
示例19.根据示例17的计算机可读介质,其中第二组特征通过包括以下的操作而被提取:
取回一组策划查询;
针对提交的机器人程序执行该组策划查询;
收集表征提交的机器人程序对该组策划查询的响应的第二组特征;以及
存储该组特征。
示例20.根据示例17、18、19或20的机器可读介质,其中一组特征或第二组特征包括以下项中的至少一项:
从语言理解模型的结果中提取的特征;
从交谈在特定响应被接受并被呈现给用户的假设下进展如何中提取的特征;
从针对由激活的机器人程序的任务活动使用的模型而被采集的统计中提取的特征;
从激活的机器人程序配置中提取的特征;以及
从输入源中提取的特征。
示例21.一种用于对服务扩展进行选择和排名的方法,包括:
接收与用户相关的查询或推理;
标识响应于查询或推理而激活的任何机器人程序;
通过针对每个激活的机器人程序执行动作来对激活的机器人程序进行排名,动作包括:
标识对应于激活的机器人程序的一组特征;
将一组特征的至少一部分呈现给排名和响应选择模型,排名和响应选择模型经由机器学习过程而被训练;
使用排名和响应选择模型以及一组特征的一部分来标识针对激活的机器人程序的排名;以及
将该激活的机器人程序以相较于其他激活的机器人程序的排名顺序放置,以创建经排名的机器人程序列表;
从经排名的机器人程序列表中选择至少一个机器人程序;以及
将至少一个机器人程序的输出呈现给用户。
示例22.根据示例21的方法,还包括将查询从一种格式转换为另一种格式以用于处理。
示例23.根据示例21或22的方法,其中一组特征包括以下项中的至少一项:
从语言理解模型的结果中提取的特征;
从交谈在特定响应被接受并被呈现给用户的假设下进展如何中提取的特征;
从针对由激活的机器人程序的任务活动使用的模型而被采集的统计中提取的特征;
从激活的机器人程序配置中提取的特征;以及
从输入源中提取的特征。
示例24.根据示例21、22或23的方法,其中一组特征还包括以下项中的至少一项:
机器人程序的语言理解模型与内置语言理解模型之间的相关性度量;
机器人程序处置的任务列表;以及
描述使得机器人程序触发的至少一个查询的至少一个度量。
示例25.根据示例21、22、23或24的方法,还包括:
取回一组策划查询;
针对提交的机器人程序执行该组策划查询;
收集表征提交的机器人程序对该组策划查询的响应的一组特征;以及
存储该组特征。
示例26.根据示例25的方法,还包括:
从提交的机器人程序提取包括由机器人程序处置的任务的一组特征。
示例27.根据示例25的方法,还包括:
基于提交的机器人程序对该组策划查询的响应,来标识一组正触发示例或一组负触发示例或两者。
示例28.根据示例21、22、23、24、25、26或27的方法,还包括:
标识一组代表性机器人程序;
标识策划查询的训练集;以及
使用机器学习过程,从该组代表性机器人程序和策划查询的训练集来创建排名和响应选择过程。
示例29.根据示例21、22、23、24、25、26、27或28的方法,其中一组特征包括其他激活的机器人程序的上下文中对应于该激活的机器人程序的特征和从一组策划查询计算的特征。
示例30.根据示例21、22、23、24、25、26、27、28或29的方法,其中一组特征包括以下项中的至少一项:
语言理解模型的置信度得分;
由语言理解模型检测到的实体的指示符;
置信度得分分布;
在现有意图之上触发的频率;以及
引起触发的查询的类型的指示符。
示例31.根据示例21、22、23、24、25、26、27、28、29或30的方法,其中机器学习过程包括以下项中的至少一项:
基于回归的方法;
基于实例的方法;
正则化方法;
决策树方法;
贝叶斯方法;
聚类方法;
关联规则学习方法;
神经网络方法;
深度学习方法;
降维方法;以及
集成方法。
示例32.根据示例21、22、23、24、25、26、27、28、29、30或31的方法,其中标识对应于激活的机器人程序的一组特征包括:
标识其他激活的机器人程序的上下文中对应于该激活的机器人程序的第一组特征;
标识从一组策划查询计算的第二组特征;
将第一组特征与第二组特征组合成对应于该激活的机器人程序的一组特征;
示例33.根据示例32的方法,其中标识从一组策划查询计算的第二组特征包括从一组特征之中标识最接近的一组特征。
示例34.一种装置,包括用于执行根据任何前述示例的方法的部件。
示例35.一种机器可读存储装置,包括机器可读指令,机器可读指令当被执行时实现根据任何前述示例的方法或实现根据任何前述示例的装置。
结论
鉴于本发明的原理和前述示例可以被应用于的许多可能实施例,应当意识到,本文中描述的示例意味着仅是说明性的并且不应当被认为限制本发明的范围。因此,如本文中所描述的本发明预见到如可以落入随附权利要求及其任何等价方案的范围内的所有这样的实施例。

Claims (15)

1.一种用于对服务扩展进行选择和排名的方法,包括:
接收与用户相关的查询或推理;
标识响应于所述查询或推理而激活的任何机器人程序;
通过针对每个激活的机器人程序执行动作来对激活的机器人程序进行排名,所述动作包括:
标识对应于所述激活的机器人程序的一组特征;
将所述一组特征的至少一部分呈现给排名和响应选择模型,所述排名和响应选择模型经由机器学习过程而被训练;
使用所述排名和响应选择模型以及所述一组特征的所述一部分来标识针对所述激活的机器人程序的排名;以及
将所述激活的机器人程序以相较于其他激活的机器人程序的排名顺序放置,以创建经排名的机器人程序列表;
从经排名的所述机器人程序列表中选择至少一个机器人程序;以及
将至少一个机器人程序的输出呈现给所述用户。
2.根据权利要求1所述的方法,还包括将所述查询从一种格式转换为另一种格式以用于处理。
3.根据权利要求1所述的方法,其中所述一组特征包括以下项中的至少一项:
从语言理解模型的结果中提取的特征;
从交谈在特定响应被接受并被呈现给所述用户的假设下进展如何中提取的特征;
从针对由所述激活的机器人程序的任务活动使用的模型而采集的统计中提取的特征;
从激活的机器人程序配置中提取的特征;以及
从输入源中提取的特征。
4.根据权利要求1所述的方法,其中所述一组特征还包括以下项中的至少一项:
机器人程序的语言理解模型与内置语言理解模型之间的相关性度量;
所述机器人程序处置的任务列表;以及
描述使得所述机器人程序触发的至少一个查询的至少一个度量。
5.根据权利要求1、2、3或4所述的方法,还包括:
取回一组策划查询;
针对提交的机器人程序执行所述一组策划查询;
收集表征所述提交的机器人程序对所述一组策划查询的响应的一组特征;以及
存储所述一组特征。
6.根据权利要求5所述的方法,还包括:
从所述提交的机器人程序提取包括由所述机器人程序处置的任务的一组特征。
7.根据权利要求5所述的方法,还包括:
基于所述提交的机器人程序对所述一组策划查询的响应,来标识一组正触发示例或一组负触发示例或两者。
8.根据权利要求1、2、3或4所述的方法,还包括:
标识一组代表性机器人程序;
标识策划查询的训练集;以及
使用机器学习过程,从所述一组代表性机器人程序和所述策划查询的训练集来创建排名和响应选择过程。
9.一种计算系统,包括:
处理器和计算机可读介质上可访问的可执行指令,所述可执行指令当被执行时使所述系统执行操作,所述操作包括:
接收与用户相关的查询或推理;
标识响应于所述查询或推理而激活的任何机器人程序;
通过针对每个激活的机器人程序执行操作来对激活的机器人程序进行排名,所述操作包括:
标识对应于所述激活的机器人程序的一组特征;
将所述一组特征的至少一部分呈现给排名和响应选择模型,所述排名和响应选择模型经由机器学习过程而被训练;
使用所述排名和响应选择模型以及所述一组特征的所述一部分来标识针对所述激活的机器人程序的排名;以及
将所述激活的机器人程序以相较于其他激活的机器人程序的排名顺序放置,以创建经排名的机器人程序列表;
从经排名的所述机器人程序列表中选择至少一个机器人程序;以及
将至少一个机器人程序的输出呈现给所述用户。
10.根据权利要求9所述的系统,其中所述一组特征包括:其他激活的机器人程序的上下文中对应于所述激活的机器人程序的特征和从一组策划查询计算的特征。
11.根据权利要求9所述的系统,其中所述一组特征包括以下项中的至少一项:
语言理解模型的置信度得分;
由所述语言理解模型检测到的实体的指示符;
置信度得分分布;
在现有意图之上触发的频率;以及
引起触发的查询的类型的指示符。
12.根据权利要求9所述的系统,其中所述一组特征还包括以下项中的至少一项:
机器人程序的语言理解模型与内置语言理解模型之间的相关性度量;
所述机器人程序处置的任务列表;以及
描述使得所述机器人程序触发的至少一个查询的至少一个度量。
13.根据权利要求9、10、11或12所述的系统,还包括:
取回一组策划查询;
针对提交的机器人程序执行所述一组策划查询;
收集表征所述提交的机器人程序对所述一组策划查询的响应的一组特征;以及
存储所述一组特征。
14.根据权利要求13所述的系统,还包括:
从所述提交的机器人程序提取包括由所述机器人程序处置的任务的一组特征。
15.根据权利要求13所述的系统,还包括:
基于所述提交的机器人程序对所述一组策划查询的响应,来标识一组正触发示例或一组负触发示例或两者。
从针对由所述激活的机器人程序的任务活动使用的模型而采集的统计提取的特征;
从激活的机器人程序配置提取的特征;以及
从输入源提取的特征。
CN201780062529.8A 2016-10-10 2017-10-03 数字助理扩展自动排名和选择 Active CN109863721B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US15/289,765 US10437841B2 (en) 2016-10-10 2016-10-10 Digital assistant extension automatic ranking and selection
US15/289,765 2016-10-10
PCT/US2017/054811 WO2018071221A1 (en) 2016-10-10 2017-10-03 Digital assistant extension automatic ranking and selection

Publications (2)

Publication Number Publication Date
CN109863721A true CN109863721A (zh) 2019-06-07
CN109863721B CN109863721B (zh) 2021-11-02

Family

ID=60162258

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201780062529.8A Active CN109863721B (zh) 2016-10-10 2017-10-03 数字助理扩展自动排名和选择

Country Status (4)

Country Link
US (2) US10437841B2 (zh)
EP (1) EP3523926B1 (zh)
CN (1) CN109863721B (zh)
WO (1) WO2018071221A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112117475A (zh) * 2020-09-30 2020-12-22 国网四川省电力公司经济技术研究院 一种燃料电池水管理子系统故障检测装置及方法

Families Citing this family (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10346542B2 (en) 2012-08-31 2019-07-09 Verint Americas Inc. Human-to-human conversation analysis
US10567312B2 (en) 2016-04-11 2020-02-18 Facebook, Inc. Techniques for messaging bot controls based on machine-learning user intent detection
US10606848B2 (en) 2016-04-11 2020-03-31 Facebook, Inc. Techniques for device configuration using messaging history information
US11816539B1 (en) * 2016-06-14 2023-11-14 SurgeonCheck LLC Selection system for machine learning module for determining target metrics for evaluation of health care procedures and providers
US10841264B2 (en) 2016-09-21 2020-11-17 Facebook, Inc. Method and system for presenting a subset of messages in a modular inbox
US10367767B2 (en) 2016-09-21 2019-07-30 Facebook, Inc. Modular inbox and generation of content modules
US11233760B2 (en) 2016-09-21 2022-01-25 Facebook, Inc. Module ranking for a modular inbox
US10356029B2 (en) 2016-09-21 2019-07-16 Facebook, Inc. Methods and systems for presenting modules in an inbox interface
US10880237B2 (en) * 2016-11-28 2020-12-29 Facebook, Inc. Methods and systems for ranking messaging bots
US10642913B2 (en) * 2016-12-21 2020-05-05 Accenture Global Solutions Limited Intent and bot based query guidance
US10276161B2 (en) * 2016-12-27 2019-04-30 Google Llc Contextual hotwords
US20180300414A1 (en) * 2017-04-17 2018-10-18 Facebook, Inc. Techniques for ranking of selected bots
SG11201901441QA (en) * 2017-08-02 2019-03-28 Panasonic Ip Man Co Ltd Information processing apparatus, speech recognition system, and information processing method
US11544617B2 (en) 2018-04-23 2023-01-03 At&T Intellectual Property I, L.P. Network-based machine learning microservice platform
US11163961B2 (en) * 2018-05-02 2021-11-02 Verint Americas Inc. Detection of relational language in human-computer conversation
JP6537211B1 (ja) * 2018-07-06 2019-07-03 Jeインターナショナル株式会社 検索装置およびプログラム
US20200042825A1 (en) * 2018-08-02 2020-02-06 Veritone, Inc. Neural network orchestration
WO2020062006A1 (en) * 2018-09-28 2020-04-02 Entit Software Llc Intent and context-aware dialogue based virtual assistance
US11822888B2 (en) 2018-10-05 2023-11-21 Verint Americas Inc. Identifying relational segments
US11043214B1 (en) * 2018-11-29 2021-06-22 Amazon Technologies, Inc. Speech recognition using dialog history
US11748422B2 (en) * 2019-03-15 2023-09-05 ContactEngine Limited Digital content security and communications system using artificial intelligence (AI) based machine learning and predictive analysis
AU2020324446B2 (en) * 2019-08-07 2023-11-23 Liveperson, Inc. Systems and methods for transferring messaging to automation
US11599826B2 (en) 2020-01-13 2023-03-07 International Business Machines Corporation Knowledge aided feature engineering
US11715465B2 (en) * 2020-02-07 2023-08-01 Royal Bank Of Canada System and method for conversational middleware platform
US11823082B2 (en) 2020-05-06 2023-11-21 Kore.Ai, Inc. Methods for orchestrating an automated conversation in one or more networks and devices thereof
US11115353B1 (en) * 2021-03-09 2021-09-07 Drift.com, Inc. Conversational bot interaction with utterance ranking
US11556510B1 (en) * 2022-02-18 2023-01-17 Kpmg Llp System and method for enriching and normalizing data

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070124263A1 (en) * 2005-11-30 2007-05-31 Microsoft Corporation Adaptive semantic reasoning engine
CN104145269A (zh) * 2012-02-29 2014-11-12 微软公司 基于上下文的搜索查询构成
US20150121216A1 (en) * 2013-10-31 2015-04-30 Next It Corporation Mapping actions and objects to tasks
CN105051674A (zh) * 2012-12-24 2015-11-11 微软技术许可有限责任公司 不起眼地显示上下文相关信息
CN105279146A (zh) * 2014-06-30 2016-01-27 邻客音公司 针对短不相关文本的检测的上下文感知方法
US20160225370A1 (en) * 2015-01-30 2016-08-04 Microsoft Technology Licensing, Llc Updating language understanding classifier models for a digital personal assistant based on crowd-sourcing

Family Cites Families (91)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6259969B1 (en) * 1997-06-04 2001-07-10 Nativeminds, Inc. System and method for automatically verifying the performance of a virtual robot
US6901394B2 (en) * 2000-06-30 2005-05-31 Askme Corporation Method and system for enhanced knowledge management
US6693651B2 (en) * 2001-02-07 2004-02-17 International Business Machines Corporation Customer self service iconic interface for resource search results display and selection
US7979314B2 (en) * 2001-08-23 2011-07-12 Jonas Ulenas Method and apparatus for obtaining consumer product preferences through interactive product selection and evaluation
US7287057B2 (en) 2001-11-15 2007-10-23 International Business Machines Corporation Accessing information using an instant messaging system
US20030236700A1 (en) * 2002-06-25 2003-12-25 International Business Machines Corporation Method for improving of service brokers' quality of service
US7467206B2 (en) * 2002-12-23 2008-12-16 Microsoft Corporation Reputation system for web services
US7505892B2 (en) 2003-07-15 2009-03-17 Epistle Llc Multi-personality chat robot
US20060235742A1 (en) * 2005-04-18 2006-10-19 Castellanos Maria G System and method for process evaluation
US20070169199A1 (en) * 2005-09-09 2007-07-19 Forum Systems, Inc. Web service vulnerability metadata exchange system
US7814048B2 (en) 2006-08-14 2010-10-12 Microsoft Corporation Knowledge extraction from online discussion forums
US8073681B2 (en) 2006-10-16 2011-12-06 Voicebox Technologies, Inc. System and method for a cooperative conversational voice user interface
US20080096533A1 (en) * 2006-10-24 2008-04-24 Kallideas Spa Virtual Assistant With Real-Time Emotions
US8112421B2 (en) * 2007-07-20 2012-02-07 Microsoft Corporation Query selection for effectively learning ranking functions
US9063975B2 (en) * 2013-03-15 2015-06-23 International Business Machines Corporation Results of question and answer systems
US20090235356A1 (en) 2008-03-14 2009-09-17 Clear Blue Security, Llc Multi virtual expert system and method for network management
US20100169323A1 (en) * 2008-12-29 2010-07-01 Microsoft Corporation Query-Dependent Ranking Using K-Nearest Neighbor
WO2010078614A1 (en) 2009-01-08 2010-07-15 Relevancenow Pty Limited Chatbots
US20100185623A1 (en) * 2009-01-15 2010-07-22 Yumao Lu Topical ranking in information retrieval
US8078617B1 (en) * 2009-01-20 2011-12-13 Google Inc. Model based ad targeting
US20100250523A1 (en) * 2009-03-31 2010-09-30 Yahoo! Inc. System and method for learning a ranking model that optimizes a ranking evaluation metric for ranking search results of a search query
CN101930438B (zh) * 2009-06-19 2016-08-31 阿里巴巴集团控股有限公司 一种搜索结果生成方法及信息搜索系统
US20110029517A1 (en) * 2009-07-31 2011-02-03 Shihao Ji Global and topical ranking of search results using user clicks
US8818926B2 (en) 2009-09-29 2014-08-26 Richard Scot Wallace Method for personalizing chat bots
US8290038B1 (en) * 2009-11-30 2012-10-16 Google Inc. Video coding complexity estimation
US20110208714A1 (en) * 2010-02-19 2011-08-25 c/o Microsoft Corporation Large scale search bot detection
US20110314011A1 (en) * 2010-06-18 2011-12-22 Microsoft Corporation Automatically generating training data
US20120078062A1 (en) * 2010-09-24 2012-03-29 International Business Machines Corporation Decision-support application and system for medical differential-diagnosis and treatment using a question-answering system
CN103229162B (zh) * 2010-09-28 2016-08-10 国际商业机器公司 使用候选答案逻辑综合提供问题答案
US8402543B1 (en) 2011-03-25 2013-03-19 Narus, Inc. Machine learning based botnet detection with dynamic adaptation
US9158976B2 (en) * 2011-05-18 2015-10-13 International Business Machines Corporation Efficient retrieval of anomalous events with priority learning
US8832560B2 (en) * 2011-09-21 2014-09-09 Facebook, Inc. Displaying social networking system user information via a historical newsfeed
US8886639B2 (en) * 2012-04-19 2014-11-11 Sap Ag Semantically enriched search of services
WO2013155619A1 (en) * 2012-04-20 2013-10-24 Sam Pasupalak Conversational agent
US10417037B2 (en) * 2012-05-15 2019-09-17 Apple Inc. Systems and methods for integrating third party services with a digital assistant
US9667742B2 (en) * 2012-07-12 2017-05-30 Robert Bosch Gmbh System and method of conversational assistance in an interactive information system
US20180047071A1 (en) * 2012-07-24 2018-02-15 Ebay Inc. System and methods for aggregating past and predicting future product ratings
WO2014075211A1 (en) * 2012-11-13 2014-05-22 Telefonaktiebolaget L M Ericsson (Publ) Service node selection in a communications network based on application server information
US9104733B2 (en) * 2012-11-29 2015-08-11 Microsoft Technology Licensing, Llc Web search ranking
US9172747B2 (en) * 2013-02-25 2015-10-27 Artificial Solutions Iberia SL System and methods for virtual assistant networks
US9152652B2 (en) * 2013-03-14 2015-10-06 Google Inc. Sub-query evaluation for image search
US9594838B2 (en) * 2013-03-14 2017-03-14 Microsoft Technology Licensing, Llc Query simplification
US8788263B1 (en) 2013-03-15 2014-07-22 Steven E. Richfield Natural language processing for analyzing internet content and finding solutions to needs expressed in text
US20140337372A1 (en) * 2013-05-13 2014-11-13 Samsung Electronics Co., Ltd. Method of providing program using semantic mashup technology
EP2821943A1 (en) * 2013-07-03 2015-01-07 Accenture Global Services Limited Query response device
US10162813B2 (en) 2013-11-21 2018-12-25 Microsoft Technology Licensing, Llc Dialogue evaluation via multiple hypothesis ranking
US9806942B2 (en) * 2013-12-02 2017-10-31 Yahoo Holdings, Inc. Deep linking to mobile applications
US20150154644A1 (en) * 2013-12-02 2015-06-04 Yahoo! Inc. Deep linking to mobile applications
EP2881898A1 (en) 2013-12-09 2015-06-10 Accenture Global Services Limited Virtual assistant interactivity platform
US9823811B2 (en) 2013-12-31 2017-11-21 Next It Corporation Virtual assistant team identification
US9641686B1 (en) * 2014-03-21 2017-05-02 Amazon Technologies, Inc. Method for using customer attributes to select a service representative
US9361446B1 (en) * 2014-03-28 2016-06-07 Amazon Technologies, Inc. Token based automated agent detection
US20150347414A1 (en) * 2014-05-30 2015-12-03 Linkedln Corporation New heuristic for optimizing non-convex function for learning to rank
US20160044380A1 (en) * 2014-06-12 2016-02-11 Bertrand Barrett Personal helper bot system
US9483768B2 (en) 2014-08-11 2016-11-01 24/7 Customer, Inc. Methods and apparatuses for modeling customer interaction experiences
US10116596B2 (en) 2014-09-29 2018-10-30 International Business Machines Corporation Personalizing data system components and data sources as chatbots in a group chat session
US11049409B1 (en) * 2014-12-19 2021-06-29 Educational Testing Service Systems and methods for treatment of aberrant responses
US9836452B2 (en) 2014-12-30 2017-12-05 Microsoft Technology Licensing, Llc Discriminating ambiguous expressions to enhance user experience
US10460227B2 (en) * 2015-05-15 2019-10-29 Apple Inc. Virtual assistant in a communication session
US9600394B2 (en) * 2015-06-18 2017-03-21 Oracle International Corporation Stateful detection of anomalous events in virtual machines
US10102482B2 (en) * 2015-08-07 2018-10-16 Google Llc Factorized models
KR20180108562A (ko) * 2015-09-02 2018-10-04 아이덴티포, 인크. 지능형 가상 어시스턴트 시스템들 및 관련 방법들
US10534780B2 (en) * 2015-10-28 2020-01-14 Microsoft Technology Licensing, Llc Single unified ranker
US10733254B2 (en) * 2015-12-10 2020-08-04 Facebook, Inc. Ranking of news feeds of content including consideration of specific content clicks by users
US10769547B2 (en) * 2015-12-30 2020-09-08 Oath Inc. Mobile searches utilizing a query-goal-mission structure
US20170250935A1 (en) * 2016-02-25 2017-08-31 Facebook, Inc. Techniques for messaging bot app interactions
US9720981B1 (en) * 2016-02-25 2017-08-01 International Business Machines Corporation Multiple instance machine learning for question answering systems
US11477139B2 (en) * 2016-02-25 2022-10-18 Meta Platforms, Inc. Techniques for messaging bot rich communication
US10372508B2 (en) 2016-03-17 2019-08-06 Wipro Limited Method and system for dynamically integrating bots
US11295228B2 (en) * 2016-03-21 2022-04-05 Wipro Limited Methods for creating automated dynamic workflows of interoperable bots and devices thereof
US10963853B2 (en) * 2016-03-25 2021-03-30 Amazon Technologies, Inc. Unified payment interface preference monitoring service capable of integration into merchant sites
US9817395B2 (en) * 2016-03-31 2017-11-14 Toyota Jidosha Kabushiki Kaisha Autonomous navigation of people using a robot network
US10567312B2 (en) * 2016-04-11 2020-02-18 Facebook, Inc. Techniques for messaging bot controls based on machine-learning user intent detection
US10831802B2 (en) * 2016-04-11 2020-11-10 Facebook, Inc. Techniques to respond to user requests using natural-language machine learning based on example conversations
US10437610B2 (en) * 2016-05-25 2019-10-08 Bank Of America Corporation System for utilizing one or more data sources to generate a customized interface
US10489448B2 (en) * 2016-06-02 2019-11-26 Baidu Usa Llc Method and system for dynamically ranking images to be matched with content in response to a search query
US10586535B2 (en) * 2016-06-10 2020-03-10 Apple Inc. Intelligent digital assistant in a multi-tasking environment
US10360906B2 (en) * 2016-06-14 2019-07-23 Microsoft Technology Licensing, Llc Computer proxy messaging bot
US20170372436A1 (en) * 2016-06-24 2017-12-28 Linkedln Corporation Matching requests-for-proposals with service providers
US10692006B1 (en) * 2016-06-30 2020-06-23 Facebook, Inc. Crowdsourced chatbot answers
US10506055B2 (en) * 2016-07-08 2019-12-10 Facebook, Inc. Automatic recipient targeting for notifications
US10528632B2 (en) * 2016-07-19 2020-01-07 Microsoft Technology Licensing, Llc Systems and methods for responding to an online user query
US10237240B2 (en) * 2016-07-21 2019-03-19 AT&T Global Network Services (U.K.) B.V. Assessing risk associated with firewall rules
US10402740B2 (en) * 2016-07-29 2019-09-03 Sap Se Natural interactive user interface using artificial intelligence and freeform input
US10382370B1 (en) * 2016-08-11 2019-08-13 Amazon Technologies, Inc. Automated service agents
US20180052884A1 (en) * 2016-08-16 2018-02-22 Ebay Inc. Knowledge graph construction for intelligent online personal assistant
US10204166B2 (en) * 2016-09-09 2019-02-12 Facebook, Inc. Ranking content items based on session information
US10075463B2 (en) * 2016-09-09 2018-09-11 Ca, Inc. Bot detection system based on deep learning
US10853747B2 (en) * 2016-10-03 2020-12-01 Google Llc Selection of computational agent for task performance
US10880237B2 (en) * 2016-11-28 2020-12-29 Facebook, Inc. Methods and systems for ranking messaging bots
US11138388B2 (en) * 2016-12-22 2021-10-05 Verizon Media Inc. Method and system for facilitating a user-machine conversation

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070124263A1 (en) * 2005-11-30 2007-05-31 Microsoft Corporation Adaptive semantic reasoning engine
CN101356525A (zh) * 2005-11-30 2009-01-28 微软公司 自适应语义推理引擎
CN104145269A (zh) * 2012-02-29 2014-11-12 微软公司 基于上下文的搜索查询构成
CN105051674A (zh) * 2012-12-24 2015-11-11 微软技术许可有限责任公司 不起眼地显示上下文相关信息
US20150121216A1 (en) * 2013-10-31 2015-04-30 Next It Corporation Mapping actions and objects to tasks
CN105279146A (zh) * 2014-06-30 2016-01-27 邻客音公司 针对短不相关文本的检测的上下文感知方法
US20160225370A1 (en) * 2015-01-30 2016-08-04 Microsoft Technology Licensing, Llc Updating language understanding classifier models for a digital personal assistant based on crowd-sourcing

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112117475A (zh) * 2020-09-30 2020-12-22 国网四川省电力公司经济技术研究院 一种燃料电池水管理子系统故障检测装置及方法

Also Published As

Publication number Publication date
US20180101533A1 (en) 2018-04-12
US11379489B2 (en) 2022-07-05
CN109863721B (zh) 2021-11-02
US20200012655A1 (en) 2020-01-09
EP3523926A1 (en) 2019-08-14
WO2018071221A1 (en) 2018-04-19
US10437841B2 (en) 2019-10-08
EP3523926B1 (en) 2020-07-29

Similar Documents

Publication Publication Date Title
CN109863721A (zh) 数字助理扩展自动排名和选择
US20200020014A1 (en) Method and apparatus for assessing price for subscription products
US20130204813A1 (en) Self-learning, context aware virtual assistants, systems and methods
US11238132B2 (en) Method and system for using existing models in connection with new model development
US20200097879A1 (en) Techniques for automatic opportunity evaluation and action recommendation engine
CN107111475A (zh) 管理用于输入理解确定的用户交互
US20190318262A1 (en) Tool for designing artificial intelligence systems
Lin et al. Domain-independent user simulation with transformers for task-oriented dialogue systems
KR101881630B1 (ko) 사용자 단말로부터 수집된 데이터를 이용한 유형 정보 및 평가 정보 제공 방법 및 시스템
US11210719B2 (en) Inferring service opportunities
US11922443B2 (en) Method for predicting demand using visual schema of product, device therefor and computer program therefor
CN109154945A (zh) 基于数据属性的新连接推荐
CN104428804A (zh) 用于评价对象的方法和装置
US20230290343A1 (en) Electronic device and control method therefor
CN116018791A (zh) 在助手系统中使用单个请求进行多人呼叫
CN110427564A (zh) 将深度学习集成到广义加性混合效应(game)框架中
US10600099B2 (en) Inferring service providers
KR20200115695A (ko) 전자 장치 및 이의 제어 방법
Lola et al. Chatbot for fitness management using IBM Watson
CN117057855A (zh) 一种数据处理方法及相关装置
US20230138557A1 (en) System, server and method for preventing suicide cross-reference to related applications
Alkhatri et al. The use of data mining techniques to predict the ranking of e-government services
US20240027204A1 (en) Systems and methods for generating a trip plan with trip recommendations
US20240061845A1 (en) Machine learning model for recommending interaction parties
Bordel Sánchez et al. Recognition of activities of daily living in Enhanced Living Environments

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant