CN113906433A - 澄清问题以用于重写有歧义的用户话语 - Google Patents

澄清问题以用于重写有歧义的用户话语 Download PDF

Info

Publication number
CN113906433A
CN113906433A CN202080040770.2A CN202080040770A CN113906433A CN 113906433 A CN113906433 A CN 113906433A CN 202080040770 A CN202080040770 A CN 202080040770A CN 113906433 A CN113906433 A CN 113906433A
Authority
CN
China
Prior art keywords
entity
ambiguous
user
utterance
entities
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.)
Pending
Application number
CN202080040770.2A
Other languages
English (en)
Inventor
葛加银
黄子乘
曹桂宏
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 CN113906433A publication Critical patent/CN113906433A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/26Speech to text systems
    • 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/903Querying
    • G06F16/9032Query formulation
    • G06F16/90332Natural language query formulation or dialogue systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/30Semantic analysis
    • G06F40/35Discourse or dialogue representation
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/02Feature extraction for speech recognition; Selection of recognition unit
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • G10L15/18Speech classification or search using natural language modelling
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • G10L15/18Speech classification or search using natural language modelling
    • G10L15/1815Semantic context, e.g. disambiguation of the recognition hypotheses based on word meaning
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • G10L15/18Speech classification or search using natural language modelling
    • G10L15/1822Parsing for meaning understanding
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue

Abstract

一种对多回合对话中的包括用户话语的集合的用户查询进行消除歧义的方法,包括:使用预定义语言模型来识别来自多回合对话的未消解的用户话语中的有歧义实体。该方法还包括:输出关于有歧义实体的澄清性问题,以及接收澄清性用户话语。该方法还包括:标识澄清性用户话语中的消除歧义实体。该方法还包括:将未消解的用户话语重写为用消除歧义实体替代有歧义实体的经重写话语,以及将经重写话语输出到一个或多个查询应答机器。

Description

澄清问题以用于重写有歧义的用户话语
背景技术
自动化助手系统被用于经由自然语言与用户交互,例如,被用于应答查询。然而,用户话语可能包括歧义,其可能使处理用户话语变得困难或不可能。
发明内容
提供本发明内容从而以简化的形式介绍一系列概念,下面在具体实施方式中对其进一步描述。本发明内容既不旨在标识要求保护的主题的关键特征或必要特征,也不旨在用于限制要求保护的主题的范围。另外,要求保护的主题不限于解决本公开的任何部分中提到的任何或所有缺点的实施方式。
使用预定义语言模型来对多回合对话中的包括用户话语的集合的用户查询进行消除歧义,该预定义语言模型识别来自多回合对话的未消解的用户话语中的有歧义实体。输出关于有歧义实体的澄清性问题,并且接收澄清性用户话语。在澄清性用户话语中标识有歧义实体,并且重写未消解的用户话语以用消除歧义实体替代有歧义实体。将经重写话语输出到一个或多个查询应答机器。
附图说明
图1A示出用于处理用户话语的架构。
图1B示出针对用于处理用户话语的架构的示例性运行时状态格式。
图2A-图2M示出针对与不同言语行为相关联的示例性会话的示例性运行时状态。
图3示出用于消解用户话语中的有歧义实体的方法。
图4示出用于消解用户话语中的建议实体或经校正实体的方法。
图5示出用于消解用户话语中的建议意图的方法。
图6示出用于澄清有歧义用户话语的方法。
图7示出示例性计算机系统。
具体实施方式
自动化代理系统可以使得用户能够经由自然语言与计算机设备交互。例如,用户可以经由自然语言话语发出命令或查询,并且自动化代理系统可以控制计算机设备对自然语言命令/查询做出响应。
自动化代理系统可以被配置为以计算机可读文本、解析树或其他计算机可读数据结构的形式处理自然语言话语。在一些示例中,用户可以通过发送话语文本(例如,在键盘或任何其他适当的输入设备处输入的文本)来与自动化代理系统交互。在一些示例中,用户可以通过可听言语与自动化代理系统交互,可听言语例如在与自动化代理系统相关联的麦克风处接收并通过任何适当的语言到文本技术来处理。类似地,自动化代理系统可以输出话语以将信息以任何适当的形式传达给用户,例如通过将文本输出到显示设备和/或通过经由扬声器输出可听言语。
在一些示例中,用户话语定义查询,表示要由自动化代理系统回答的问题。自动化代理系统可以回答各种不同的问题,包括领域特定查询(例如,体育问题、电影问题、地缘政治新闻问题)和/或领域无关查询(例如,网页搜索)。例如,自动化代理系统可以被训练以识别针对查询(例如,体育)的特定领域并使用领域特定方法来回答查询(例如,查找来自体育赛事的相关分数和集锦)。在其他示例中,自动化助手系统可以不识别针对查询的特定领域并且可以使用一般的领域无关方法(例如,将查询文本发送到网页搜索引擎,以便接收与查询文本有关的网页搜索结果)来回答查询。
在一些示例中,用户话语可以通过包括查询意图和一个或多个查询实体来定义查询。例如,查询可以表示关于一个或多个查询实体的问题,其中问题由查询意图定义。如本文所使用的“实体”可以包括人、地方、事物、公司、概念(例如,“天气”)、动物(例如,动物种类或特定动物)等。在一些示例中,查询意图可以包括查询实体的一个或多个属性,例如对查询的回答的预期内容。例如,如果用户问“谁创办了微软?”,那么查询包含一个实体:“微软”和查询针对“微软”实体的“公司的创始人”属性的相关意图。查询意图可以与来自用户话语的任何相关词(例如,词语“创始人”与“创办”属性相关)相关联。查询意图可以以各种方式由用户话语的动词、形容词和/或名词表示,例如,关于“微软”实体的相同查询意图可以由不同的查询:“谁是微软的创始人?”定义。
在一些示例中,用户话语可以是在一个或多个用户与自动化代理之间的多回合对话的一个话语。用户话语可以与多回合对话的计算机可访问会话历史中的其他话语(例如,(多个)用户和/或自动化代理的先前话语)上下文相关。因此,在没有将由计算机可访问会话历史中的其他话语提供的信息置于上下文中的情况下,用户话语可能是有歧义的。例如,用户话语可以经由诸如代词或部分名的共指引用先前讨论的实体。在以上描述的示例中,响应于查询“谁创办了微软?”,自动化代理可以做出响应“比尔盖茨和保罗艾伦”。如果用户之后发出另一查询“比尔的净资产是多少?”,那么自动化代理可以使用本公开的方法来推出用户想要知道比尔盖茨的净资产。然而,没有由第一查询(“谁创办了微软?”)和自动化代理的答复(“比尔盖茨和保罗艾伦”)提供的上下文,查询“比尔的净资产是多少?”将是有歧义的,即,由于部分名“比尔”关于用户正在问哪个“比尔”不够具体。
因此,图1示出用于对多回合对话中的用户话语进行消除歧义的示例性数据流架构100。数据流架构100在概念上通过以下操作来工作:在共指消解机器102中消解用户话语106中的任何共指,将由用户话语表示的言语行为分类,并且基于检测到的言语行为将用户话语的进一步处理委托给一个或多个下游机器。然而,这样的数据流绝不是限制性的,并且可以使用其他数据流。在一些示例中,处理检测到的言语行为还包括:当来自用户话语的一个或多个歧义甚至在共指的消解之后存在时,消解这样的歧义。例如,讨论新话题的有歧义建议可以被消解为完全消解的查询。在一些示例中,歧义的消解基于由多回合对话的计算机可访问会话历史提供的上下文来完全自动化。在一些示例中,歧义的消解包括问用户澄清性问题并接收澄清性回复。在任何情况下,在消解用户话语中的歧义(例如,经由共指消解,消解讨论新话题的有歧义建议,或问澄清性问题)之后,经重写话语可以被输出到一个或多个下游查询应答机器以进行进一步处理。经重写话语是定义处理查询所需要的所有信息的完全消解的查询,使得计算机可访问会话历史的进一步处理对于处理经重写话语可以不是必需的。数据流架构100和/或其他适当的数据流架构可以被使用在涉及与用户的自然语言交互的任何适当的情景中,例如以提供自动化代理。
一个或多个查询应答机器可以返回对给定查询的多个不同的回答。在一些示例中,数据流架构100可以被配置为获得这样的多个不同的回答并且选择一个或多个回答以用于经由自动化代理回复提供给用户。例如,不同的回答可以各自具有由查询应答机器评估的相关联的置信度值,并且一个回答可以基于具有最高置信度值来选择,或者两个回答可以被选择并被呈现为可能性。
数据流架构100的组件可以使用现有的和/或未来的机器学习和/或自然语言技术的任何适当的组合来实现。在一些示例中,本文描述的决策、分数以及任何其他计算可以经由预定义语言模型来实现。预定义语言模型可以经由机器学习、人工智能和/或统计模型的任何组合(例如,经由判别和/或生成模型)来实现。下面参考图7来进一步描述示例性模型。预定义语言模型可以使用关于任何适当的目标函数(例如,关于对用户话语做出响应的用户满意度)的任何适当的过程来训练。例如,预定义语言模型可以经由使用来自历史会话的标记数据示例的监督式训练和/或基于用户反馈数据的强化训练来训练。预定义语言模型可以以“端到端”方式来训练,使得本文描述的所有组件同时关于数据流架构100和/或使用数据流架构100实现的(多个)自动化代理系统的组合功能被优化。在一些示例中,预定义语言模型可以包括一个或多个知识库、数据库和/或被配置为动态地检索与实体、意图和/或自然语言短语有关的信息的搜索引擎工具。例如,预定义语言模型可以包括包含关于人、组织等的信息并且包括实体属性、实体之间的关系等的知识库。
数据流架构100包括被配置为关于会话历史202检测用户话语106中的多个不同的预定义言语行为的言语行为分类器机器110。当每个新的用户话语106被处理时,会话历史202被更新以反映到目前为止的会话。在由言语行为分类器机器110进行的分类之前,用户话语106可以由共指消解机器102预处理以消解用户话语106中存在的任何有歧义的共指(例如,有歧义的代词、部分名等)。参考图2C-图2F和图3来进一步描述共指消解机器102。
例如,如图1A中所示出的,言语行为分类器机器110可以使用预定义语言模型来检测包括以下项的预定义言语行为:“问候”、“确认”、“拒绝”、“完全消解的查询”、“实体建议”、“实体校正”、“意图建议”、“澄清”和“歧义”。基于对特定预定义言语行为的检测,言语行为分类器机器110被配置为将用户话语的进一步处理委托给一个或多个下游操作者,包括问候/确认/拒绝回复机器112、实体建议/校正消解器机器118、意图建议消解器机器120、澄清技术机器116、澄清消解机器122以及(多个)查询应答机器114。这些下游操作者以及共指消解机器102和言语行为分类器机器110可以被实现在任何适当的计算机设备或计算机设备的组合上。例如,本文描述的机器可以被实现在具有单个外壳的集成计算设备中、被实现为云计算情景中的单独的处理节点或以任何其他适当的方式来实现。
“问候”、“确认”和“拒绝”是示例性言语行为,其中用户问候自动化代理,由自动化代理提供回复的确认(例如,确定),或者由自动化代理拒绝回复。响应于检测到这些言语行为中的一个,言语行为分类器机器110可以将用户话语106的处理委托给问候/确认/拒绝回复机器112,下面参考图2B来对其进行进一步描述。
“完全消解的查询”言语行为包括完全定义用于由下游查询应答机器处理的查询的任何用户话语。换言之,“完全消解的查询”言语行为是不具有任何歧义并且不依赖于会话历史的上下文以进行处理的用户话语。响应于检测到完全消解的查询,言语行为分类器110可以将用户话语106的处理委托给被配置为返回对用户话语106中的查询的回答的查询应答机器114。查询应答机器114可以被配置为对仅仅明确地提到任何相关实体、查询意图等的完全定义的查询做出响应。查询应答机器114可以包括领域特定技术114S,例如针对体育查询的领域特定技术或针对名人查询的领域特定技术。查询应答机器114可以备选地或附加地包括领域无关技术,例如用于经由网页搜索回答任意查询的网页搜索技术。
“实体建议”和“实体校正”言语行为是其中用户想要关于由先前用户或代理话语建立的查询意图而改变话题以讨论不同实体的话语。“实体建议”或“实体校正”话语本身不是完全定义的查询,因为所请求的话题的改变是关于在会话历史202中建立的上下文的。响应于检测到实体建议或实体校正,言语行为分类器机器110可以将用户话语106的处理委托给实体建议/校正消解器机器118,其被配置为以并入来自会话历史202的任何相关信息的无歧义的方式重写查询,并且转而将经重写查询的处理委托给查询应答机器114。参考图2G、图2H、图4和图5来进一步描述实体建议/校正消解器机器118。
“意图建议”言语行为是其中用户想要关于在先前用户或代理话语中提到的实体而改变话题以讨论不同查询意图的话语。“意图建议”话语本身不是完全定义的查询,因为所请求的话题的改变是关于在会话历史202中先前讨论的实体的。响应于检测到实体建议或实体校正,言语行为分类器机器110可以将用户话语106的处理委托给意图建消解器机器118,其被配置为以并入来自会话历史202的任何相关信息的无歧义的方式重写查询,并且转而将经重写查询的处理委托给查询应答机器114。
“歧义”言语行为是无法基于用户话语106和/或会话历史202中的信息而被消除歧义的任何有歧义话语。例如,有歧义话语可以包括无法被消解为来自会话历史202的任何实体的共指、对应于来自会话历史202的两个不同实体的共指或改变关于建议的实体和/或意图有歧义的话题的建议。响应于检测到歧义,言语行为分类器110被配置为将用户话语106的进一步处理委托给被配置为输出澄清性问题的澄清技术116。从用户接收到的随后话语可以被分类为“澄清”言语行为。响应于检测到澄清言语行为,言语行为分类器机器110被配置为将随后用户话语的处理委托给被配置为重写原始用户话语106的澄清消解机器122,以便通过并入来自澄清言语行为的相关信息来对原始用户话语106进行消除歧义。因此,如果经重写话语被完全消除歧义,那么经重写话语可以由查询应答机器114进一步处理。如果在澄清言语行为之后仍然存在剩余的歧义,那么经重写话语可以在将经重写话语的处理最终委托给查询应答机器114之前由澄清技术机器116进一步处理,以便输出一个或多个附加的澄清性问题。
本文描述的方法可以使得下游查询应答机器能够返回对包含歧义的用户话语的回答,而不要求(多个)下游查询应答机器处理歧义消除。这些方法包括将无歧义的完全形成的经重写话语提供到(多个)下游查询应答机器。完全形成的经重写话语可以由(多个)下游查询应答机器以任何适当的方式来处理。在一些示例中,经重写话语被提供到多个下游查询应答机器,其可以全部处理经重写话语(例如,并行地)。由于歧义消除在经重写话语之前被执行,因此经重写话语可以在不执行任何附加的歧义消除步骤之前被处理,其可以减少用于下游查询应答机器返回回答的延时、存储器要求和/或计算成本。
在一些示例中,数据流架构100可以被配置为将多个不同的可能的经重写查询提供到一个或多个查询应答机器,并且接收针对不同的可能的经重写查询中的每个的回答。在一些示例中,数据流架构100可以被配置为将多个不同的回答提供在单个代理话语中。例如,如果用户问“拉塞尔为谁效力?”,那么本公开的方法可以基于会话历史推出,用户正在提及“拉塞尔威尔逊”或“拉塞尔威斯布鲁克”。因此,两个不同的经重写查询“拉塞尔威斯布鲁克为谁效力?”和“拉塞尔威尔逊为谁效力?”可以被发布到一个或多个查询应答机器。基于来自(多个)查询应答机器的结果,数据流架构100可以确定对这两个不同的问题的回答的相似的置信度值。因此,数据流架构100可以被配置为输出并入对两个经重写查询的回答的话语,诸如“拉塞尔威尔逊为海鹰队效力;但是如果你是指拉塞尔威斯布鲁克,那么他为雷霆队效力”。
在一些示例中,用户话语106可以通过表示在用户与自动化代理之间的多回合对话的计算机可访问会话历史202置于上下文中。因此,计算机可访问会话历史202可以包括用户和/或自动化代理的多个话语。在图示的示例中,用户话语106是最近的用户话语,出现在其他用户和/或自动化代理话语之后。
用户话语106可以提及一个或多个实体,例如以定义查询话题。在一些示例中,用户话语106可以使用实体的全名提及一个或多个实体,其可以由下游操作者容易地标识(例如,通过基于全名在实体的知识库中搜索)。然而,在其他示例中,实体可以通过共指来提及。如本文所使用的,“共指”描述话语的提及特定实体的部分。单个特定实体可以由用户话语中和/或一系列用户话语中的多个不同的共指提及。
图1B示出针对多回合对话200的示例性运行时状态格式。针对多回合对话200的运行时状态格式可以根据本公开的方法和示例以任何适当的方式来处理。例如,针对多回合对话200的运行时状态格式可以用于跟踪图1A的数据流架构100的运行时状态。针对多回合对话200的运行时状态格式包括未消解的用户话语216,其可以以任何适当的格式来表示,例如被表示为计算机可读文本字符串和/或计算机可读解析树。
针对多回合对话200的运行时状态格式还包括计算机可访问会话历史202。在一些示例中,计算机可访问会话历史202可以是空的,包括零条话语。在其他示例中,计算机可访问会话历史202可以包括单条用户话语和/或单条代理话语。更一般地,计算机可访问会话历史202可以包括任何适当的数量的用户话语和/或代理话语。例如,在图1B中,计算机可访问会话历史202被示出具有用户话语204、代理话语206、用户话语208、代理话语210、用户话语230、代理话语232、以及未示出的其他用户/代理话语。计算机可访问会话历史202中的用户和/或代理话语可以按时间顺序,例如由时间戳指示或以任何其他方式。例如,图1B中的用户和代理话语可以以表示当话语出现时的时间上第一个到最后一个的次序的从上到下的顺序布置。计算机可访问会话历史202中的话语可以以任何适当的格式存储,例如被存储为包括针对每条话语的计算机可读文本和/或解析树的收集数据结构(例如,列表、数组或集合数据结构)。尽管图1B示出了计算机可访问会话历史202,其中所记录的话语在用户话语与代理话语之间交替,但是话语可以以任何其他顺序出现,例如,多条用户话语在一行中而没有回复的代理话语,响应于单条用户话语的多条代理话语,或任何其他顺序。
计算机可访问会话历史202还可以包括来自历史的实体212的集合。实体212的集合可以包括该历史中的话语中所包括的任何实体,例如由用户明确命名的实体、由代理在回答中出现的实体等。每个实体包括可能与会话相关的任何适当的细节。实体细节的非限制性示例包括实体名、实体的类型(例如,人、地方等)、实体的子类型(例如,人实体可以具有诸如“创始人”、“艺术家”等的子类型)、与其他实体的关系和/或任何其他实体属性。在一些示例中,实体属性可以被存储为键/属性值对。实体的集合中的每个实体可以以任何适当的格式被存储,例如被存储为数据交换语言(例如,JSON、XML)的计算机可读语法描述、根据数据库模式等。实体212的集合可以以任何适当的格式被存储,例如被存储为数据库、收集数据结构、图形知识库等。例如,如图2C中所示出的,来自历史的实体212的集合包括比尔盖茨和保罗艾伦,按名字组织并且具有针对每个实体的属性/类型。
可以通过使用预定义语言模型和/或查询应答机器以任何适当的方式来标识和/或跟踪来自历史的先前消解的实体212的集合。作为非限制性示例,查询应答机器可以被配置为记录可以从任何用户话语和/或代理话语无歧义地消解的每个新提到的实体。在一些示例中,跟踪先前消解的实体的集合可以至少部分地由查询应答机器实现。例如,查询应答机器可以被配置为识别来自话语的实体,并且被配置为输出在话语中出现的每个实体。查询应答机器可以还被配置为跟踪在对查询的回复中出现的实体,作为确定对查询的回复中包括的步骤。然而,本文描述的方法不受这样的限制,并且跟踪先前消解的实体的任何方法可以连同本公开的方法和/或数据流一起被采用。在一些示例中,来自历史的先前消解的实体212的集合可以包括来自可能的经重写话语218和/或来自可能的代理话语222的先前消解的实体。这些先前消解的实体可以以任何适当的方式来跟踪,例如通过将可能的经重写话语218发送到查询应答机器和/或通过从查询应答机器接收可能的代理话语222以及由查询应答机器确定为与可能的代理话语222有关的先前消解的实体212。尽管被示出为计算机可访问会话历史202的部分,但是来自历史的实体212可以被单独地跟踪并存储在任何计算设备上。作为另一非限制性示例,来自历史的实体212可以由查询应答机器跟踪并存储在查询应答机器上,并且查询应答机器可以被咨询以从查询应答机器检索实体数据和/或检索与实体有关的特定结果(例如,通过实体名来查找实体属性)。
针对多回合对话200的运行时状态格式还包括与处理未消解的用户话语216相关的其他运行时状态信息,包括来自未消解的用户话语的实体约束224。实体约束可以包括实体属性、名称和/或类型,其可以通过使用根据本公开的预定义语言模型从未消解的用户话语216自动地推出。针对多回合对话200的运行时状态格式还包括检测到的言语行为220,其可以通过根据本公开的言语行为分类器机器从未消解的用户话语216自动地推出。检测到的言语行为可以是预定义的多个预定义言语行为中的一个,并且可以以任何适当的格式来表示,例如被表示为计算机可读整数指数或计算机可读文本字符串。在一些示例中,本公开的方法包括重写未消解的用户话语216以产生可能的经重写话语218。可能的经重写话语218是可以被处理而无需重新分析计算机可访问会话历史202中的信息的完整的完全定义的话语。在一些示例中,本公开的方法包括确定要通过自动化代理输出的可能的代理话语222。可能的经重写话语218和可能的代理话语222各自可以以任何适当的格式被存储,例如被存储为计算机可读文本字符串或计算机可读解析树。计算机可访问会话历史202可以被存储在任何适当的位置中,例如在提供自动化代理的计算设备上本地存储,或者在云计算服务器上远程存储。
将参考图2A-图2M来描述各种多回合对话。在图2A-图2M中,多回合对话200根据针对图1B示出的多回合对话200的运行时状态格式来示出。图2A-图2M中的每个是关于不同的多回合对话的;然而,类似的组件使用对应于针对来自图1B的多回合对话200的运行时状态格式的组件的数字前缀和对应于该图的字母后缀来标记。例如,图2A示出多回合对话200A,而图2B示出多回合对话200B。当一般地引用多个不同的多回合对话的类似组件时,组件可以在没有字母后缀的情况下被引用。在图2A-图2M中,针对多回合对话200的运行时状态格式的相关方面被示出以解释示例使用情景,而与该示例使用情景不相关的方面未被示出。
在如图2A中所示出的一些示例中,对未消解的用户话语216A中的实体的仅有引用是全名(“微软”),并且因此共指消解机器102检测到未消解的用户话语实际上包含完全消解的查询。因此,用户话语可以由言语行为分类器机器110处理以检测言语行为220A是完全消解的查询。因此,完全消解的查询可以被转发到一个或多个查询应答机器114,以便获得回答,其可以被代理输出为可能的代理话语222A。计算机可访问会话历史202A还指示来自未消解的用户话语的任何相关实体约束224A,指示用户对具有“创始人”类型并创办了微软公司的实体感兴趣。
在一些示例中,如图2B中所示出的,未消解的用户话语216B是简单的“谢谢”,其实际上不包含对实体的任何引用。因此,共指消解机器102检测到未消解的用户话语216B可以被直接发送到言语行为分类器机器110,其转而检测确认言语行为。诸如确认、问候或确认/拒绝的语句的简单言语行为可以由被配置为提供对这些简单言语行为的回复的问候/确认/拒绝回复机器112处理。除了礼貌地处理诸如“谢谢”或“你好”的用户话语,问候/确认/拒绝回复机器112可以类似地发出对其他用户话语的礼貌回复,诸如肯定提议的行动过程,拒绝提议的行动过程,等等。
尽管图2B的未消解的用户话语216B未提到任何实体,但是计算机可访问会话历史202B仍然可以跟踪来自历史的实体212B,例如在响应于用户话语204B的代理话语206B中提到的比尔盖茨和保罗艾伦。针对来自历史的实体212B的相关属性连同实体名一起被跟踪,例如,跟踪(多种)实体类型、实体属性等。尽管“比尔盖茨”被示出具有跟踪的“人”和“创始人”类型以及跟踪的“性别”和“创办的公司”属性,但是实体可以具有其他相关联的类型和/或与从知识库、网页搜索、查询应答机器等确定的实体的特征相关联的属性。例如,针对“比尔盖茨”,其他类型和/或属性可以被跟踪,诸如“创造者”类型或“创办的公司=比尔和梅琳达盖茨基金会”属性。
在其他示例中,如图2C中所示出的,未消解的用户话语216C内的一个或多个共指是有歧义的和/或要求来自计算机可访问会话历史202的上下文。如图2C中所示出的,本公开的方法(即,下面将参考图3讨论的方法300)可以用于推出部分名“比尔”是指在来自历史202C的实体212C中跟踪的实体“比尔盖茨”。未消解的用户话语216C本身不足以消除“比尔盖茨”的歧义,(即使实体212C包括“比尔盖茨”),因为“比尔盖茨”仅由未消解的用户话语216中的名“比尔”引用。因此,尽管自动化助手系统可能能够在计算机可访问会话历史202C的上下文中处理未消解的用户话语216C,但是未消解的用户话语216C将不适合于由可能未被配置为访问在计算机可访问会话历史202C的下游查询应答机器处理。注意,如在来自历史的实体212G中跟踪的“比尔盖茨”被示出具有仅仅示出的一系列可能相关的类型和/或属性,例如,比尔盖茨可以附加地具有被定义以跟踪他的美元净资产的“净资产”属性。
因此,共指消解机器102被配置为预处理用户话语106以消解用户话语中的任何可能有歧义的共指,以产生经重写话语。经重写话语是自包含的以用于由言语行为分类器机器110检测言语行为和/或由下游查询应答机器进一步处理等。例如,在图2C中,在重写之后,检测到的言语行为220F是完全消解的问题。
共指的示例包括部分名(例如,如关于图2C中示出的“比尔”)、全名和其他名,诸如外号、头衔等。在一些示例中,共指还可以包括拼错/发错音的名字等。因此,用户话语可以以多种不同的方式提及同一个人,其中每个这样的引用是对相同实体的共指。作为特定示例,用户话语可以以如下中的任何的各种方式提及“比尔盖茨”:1)“威廉·亨利·盖茨三世”,2)“比尔盖茨”,3)“比尔”,4)“盖茨先生”,或5)“盖茨”以及其他可能性。共指还包括代词,例如,比尔盖茨可以被称为“他(he)”或“他(him)”,并且与比尔盖茨相关的其他名词可以使用物主代词来描述,“他的”是指比尔盖茨,例如“他的妻子”可以是指“比尔盖茨的妻子”。共指还可以包括对来自计算机可访问会话历史202的实体的列表的实体的显式引用,例如,“第一个”、“第二个”、“第三个”或任何其他适当的描述以指代来自计算机可访问会话历史202的话语内的实体的有序列表中的由用户和/或由代理提供的实体。
图2D和2E示出多回合对话的另外的示例,其中来自未消解的用户话语216的有歧义的实体被消解以指代“比尔盖茨”。图2D的特征在于以对来自代理话语206D中的“比尔盖茨和保罗艾伦”的有序列表中的“第一个”的引用的形式对“比尔盖茨”的共指。图2E的特征在于以代词“他”的形式对“比尔盖茨”的共指。
因此,图3示出用于通过消解共指来消除多回合对话中的包括用户话语的集合的用户查询的歧义的方法300。共指机器102可以被配置为实现方法300。
在302处,方法300包括使用预定义语言模型(例如,如以上所描述的任何适当的预定义语言模型)来标识来自多回合对话的未消解的用户话语中的有歧义实体。有歧义实体可以是对实体的任何自然语言引用(例如,如以上所描述的对实体的共指)。例如,在图2C中,“比尔”是有歧义实体。在图2D中,“第一个”是有歧义实体。在图2E中,“他的”是对有歧义实体的物主代词引用。
在304处,方法300还包括使用预定义语言模型来识别有歧义实体的实体约束。实体约束可以从用户话语的任何词语(例如,指代实体的共指短语、描述由实体执行的动作的动词、描述实体属性的形容词等)导出。
例如,在图2C中,实体约束包括部分名“比尔”和“净资产”属性的相关性。在图2D中,实体约束224D包括“净资产”属性的相关性以及用户对来自条目列表的“第一个”条目(例如,来自代理话语206D中的“比尔盖茨和保罗艾伦”的列表的“比尔盖茨”)感兴趣的指示。在图2E中,实体约束224E包括“性别=男”(例如,基于来自未消解的用户话语216E的男性代词“他”)和基于未消解的用户话语216E中的动词短语“他创办了......公司”的“已经定义的属性=创办的公司”。
在306处,方法300还包括在多回合对话的计算机可访问会话历史中在先前消解的实体的集合中搜索含有具有与有歧义实体的实体约束的最高置信度对应的实体属性的候选实体。
可以以任何适当的方式来确定实体约束与实体属性之间的对应的置信度,例如,通过测量匹配的实体约束/属性的数量或比例。在一些示例中,针对约束/属性匹配导出的置信度可以针对不同的约束/属性被不同地加权,例如,匹配部分名可以比匹配性别被更高地加权,反之亦然。在一些示例中,置信度值可以通过预定义语言模型和/或通过一个或多个其他机器学习、人工智能和/或统计模型来评估。更一般地,确定对应的置信度可以基于实体约束与计算机可访问会话历史202和/或来自该历史的实体212的任何适当的特征之间的对应。例如,实体约束可以对应于实体类型和/或实体属性,并且置信度可以基于对应的实体属性/类型的数量和/或比例。置信度可以附加地通过由计算机可访问会话历史202提供的上下文来确定,诸如实体是否出现于实体的有序列表中,和/或来自历史的实体212的一个多久在来自计算机可访问会话历史202的用户话语或代理话语中被提到。
在一些示例中,在先前消解的实体的集合中搜索候选实体包括基于有歧义实体的实体约束来消解实体类型,并且因此在先前消解的实体的集合中搜索候选实体包括找到具有对应的实体类型的先前消解的实体的子集。对应的实体类型可以是来自类型的层次结构的相同类型或相关类型。例如,类型的层次结构可以包括“人”类型和作为“人”类型的子类型的“创始人”类型。因此,针对图2E中示出的示例,当基于“人”类型搜索时,先前消解的实体的子集可以具有“人”类型、“创始人”类型或“人”类型的任何其他适当的子类型(例如,“演员”或“音乐家”)。尽管图2E中的示例仅仅示出来自历史202的跟踪的实体之中的“比尔盖茨”和“保罗艾伦”,但是来自历史的实体212可以包括其他实体,诸如“微软”公司实体。然而,搜索实体以消解来自未消解的用户话语216E的“他”共指可以包括搜索匹配“人类”类型的实体的子集使得搜索被有效地限制以仅仅考虑诸如比尔盖茨和保罗艾伦的相关实体而不考虑具有不匹配类型的实体,诸如“微软”。
在一些示例中,候选实体是从来自计算机可访问会话历史的用户话语(其可以是原始用户话语或重写的用户话语)消解的。例如,在图2E中,来自未消解的用户话语216E的“他”可以被消解为在来自计算机可访问会话历史202E的(重写的)用户话语218E中提到的“比尔盖茨”。在一些示例中,候选实体是从多回合对话的自动化助手话语中的一条消解的,例如,在图2D中,来自未消解的用户话语216D的“第一个”被消解为来自代理话语206D的“比尔盖茨”。
在一些示例中,如图2C中,有歧义实体的实体约束包括有歧义实体的部分名,并且因此,在先前消解的实体的集合中搜索候选实体包括找到具有与部分名一致的全名的先前消解的实体的子集,其中候选的消除歧义实体来自该子集。例如,在图2C中,确定针对“比尔盖茨”的较高置信度对应可以基于实体名“比尔盖茨”与“部分名=比尔”约束之间的对应和“已经定义的属性=净资产”约束与比尔盖茨的“净资产”属性(例如,以及来自历史的实体212C中未示出的比尔盖茨的其他属性)之间的对应。
在一些示例中,诸如图2D,未消解的用户话语中的有歧义实体包括对来自多回合对话的实体的有序列表引用的序数,并且其中候选实体是来自实体的有序列表的对应实体。在图2D中,除了具有定义的“净资产”属性之外,来自未消解的话语216D的感兴趣实体是“第一个”,其以高置信度对应于来自“比尔盖茨和保罗艾伦”的有序列表的第一条目“比尔盖茨”。
在一些示例中,如图2E中,未消解的用户话语中的有歧义实体包括代词,有歧义实体的实体约束包括代词性别,并且其中在先前消解的实体的集合中搜索候选实体包括找到具有与代词性别一致的性别的先前消解的实体的子集。在一些示例中,除了考虑代词性别之外,搜索先前消解的实体的集合可以基于其他代词特征,诸如复数、动物性(例如,用于指代人类的代词,诸如‘他’或‘她’,对比用于指代物体的代词,诸如‘它’或诸如‘那里’的地方)。在图2E中,来自未消解的用户话语216E的实体约束包括“性别=男”和“已经定义的属性=创办的公司”。这些约束和比尔盖茨和保罗艾伦两者都匹配(例如,两者都是男性,两者都具有“创始人”类型和“创办的公司”属性)。然而,“比尔盖茨”最近在用户话语210E中提到。因此,共指消解机器102可以被配置为对用户更可能问关于“比尔盖茨”的跟进型问题而不是关于“保罗艾伦”的问题评估相对更高的置信度。因此,“比尔盖茨”具有与来自未消解的用户话语216E的有歧义实体(“他”)的实体约束的最高置信度对应。
在一些示例中,方法300还包括使用预定义语言模型来识别从未消解的用户话语导出的动词谓语,其中有歧义实体的实体约束包括动词谓语,并且其中在先前消解的实体的集合中搜索候选实体包括找到具有针对动词谓语的定义值的先前消解的实体的子集。例如,图2E的未消解的用户话语216E包括指示感兴趣实体“创办了”一个或多个公司的动词谓语。因此,搜索先前消解的实体的集合可以包括找到具有诸如“创办的公司”属性的相关属性的先前消解的实体的子集。
在一些示例中,如图2F中所示出的,有歧义实体的实体约束可以包括有歧义实体与基本实体之间的依赖关系,并且因此搜索候选实体包括搜索基本实体,并且使用有歧义实体与基本实体之间的依赖关系来自动地消解候选实体。例如,图2F的未消解的用户话语216F包括两个截然不同的实体,“比尔”和“他的妻子”。然而,如果共指“比尔”首先被消解,例如通过在知识库中查找“比尔”并找到相关实体,那么从属实体“他的妻子”可以通过下游查询应答机器来容易地消解。因此,查询可以通过用“比尔盖茨”替代“比尔”被消解为经重写话语218F,并且实体“他的妻子”不需要被重写。
在308处,方法300还包括将未消解的用户话语重写为用候选实体替代有歧义实体的经重写话语。例如,图2C-2F示出对应于未消解的用户话语216的重写的用户话语218,其中有歧义实体由从计算机可访问会话历史选择的候选实体替代。
在许多情况下,如图2C-2F中所示出的,经重写话语可以被完全消解使得对实体的共指用对实体的显式引用替代。由于经重写话语被完全消解,其中任何实体以无歧义的方式提到,所以经重写话语可以由一个或多个查询应答机器处理而无需访问来自计算机可访问会话历史的上下文。因此,在310处,方法300包括将经重写话语输出到一个或多个查询应答机器。
然而,在许多示例中,即使在(例如,由图1的共指消解机器102,和/或根据图3的方法300)处理共指之后,得到的经重写查询也可以不是可以由查询应答机器114处理的完全消解的查询。
在一些示例中,即使在所有共指被消解之后,经重写话语也仍然可以要求来自计算机可访问会话历史202的上下文以用于查询应答。因此,除了将完全定义的查询发送到查询应答机器之外,不同的言语行为可以以取决于言语行为的专门化方式来处理。例如,话语可以是实体建议言语行为或实体校正言语行为,其旨在关于不同实体改变讨论先前确立的意图的会话话题,并且因此话语可以由图1的实体建议/校正消解器机器118(下面将参考图2G-图2H和图4对其进行进一步)处理。类似地,话语可以是意图建议言语行为,其旨在关于先前确立的实体改变讨论不同意图的会话话题,并且因此话语可以由图1的意图建议消解器机器120(下面将参考图2I和图5对其进行进一步描述)处理。
图2G示出未消解的用户话语216G中的已经由共指消解机器102预处理并由言语行为分类器机器110分类为“建议实体”言语行为的实体建议言语行为的示例。在实体建议言语行为中,计算机可访问会话历史202G已经包括关于定义的查询意图对另一实体的讨论。例如,该讨论可以关于其他实体的感兴趣属性。在图2G中,计算机可访问会话历史202G包括比尔盖茨的净资产的先前讨论,例如,该会话与由关于实体“比尔盖茨”的“净资产”实体属性定义的查询意图相关。因此,未消解的用户话语216G确立讨论关于新实体“杰夫贝佐斯”的(例如,由“净资产”实体属性定义的)相同查询意图的话题的改变。实体建议可以包括话题的改变的任何适当的指示,例如,诸如“怎样”或“怎么样”或“关于”的自然语言短语可以指示实体建议言语行为,并且因此这样的自然语言短语可以由言语行为分类器机器110例如使用如以上所描述的预定义语言模型来检测。如果实体建议言语行为被检测到,那么用户话语的剩余部分可以被评估以定义用户意图讨论的新实体,即“杰夫贝佐斯”。之后,基于用户的讨论杰夫贝佐斯的意图,原始用户话语208G可以被重写以并入实体建议,例如通过在重写的用户话语中用“杰夫贝佐斯”替代“比尔盖茨”。因此,在检测到“建议实体”言语行为220G之后,未消解的用户话语216G可以被重写为例如可能的经重写话语218G以得到完全形成的查询。
图2H示出未消解的用户话语216H中的已经由共指消解机器102预处理并由言语行为分类器机器110分类为“校正实体”言语行为的实体校正言语行为的示例。尽管来自历史的实体212H包括比尔盖茨和保罗艾伦两者,但是在所描绘的示例中,提到“他的净资产”的用户话语208H被消解为指代比尔盖茨。例如,共指机器102可以对比尔盖茨和“净资产”属性评估更高置信度,因为比尔盖茨是具有当前“净资产”属性的活实体,而保罗艾伦已故并且“净资产”属性可能关系不大。因此,代理话语210H与比尔盖茨有关。然而,用户实际上可能已经对保罗艾伦的净资产感兴趣,例如在他死的时候。因此,用户可以说“不,我是指保罗”,其被检测为“校正实体”言语行为以将话题代替地改变为讨论保罗艾伦。共指消解机器102可以用于预处理未消解的用户话语以确定“保罗”实际上的确指代保罗艾伦。类似于实体建议,可以由言语行为分类器机器110(例如,通过检测诸如“我是指”或“不”的指示词)以任何适当的方式来检测实体校正言语行为。如果“校正实体”言语行为被检测到,那么用户话语的剩余部分可以被评估以定义用户意图讨论的实体,即“保罗艾伦”。之后,基于检测到“校正实体”言语行为220H并检测到用户的讨论保罗艾伦的意图,原始用户话语208H可以被重写以并入实体建议,例如通过在重写的用户话语中用“保罗艾伦”替代“比尔盖茨”。尽管图2G和2H中的消解实体建议/校正基于根据部分名或全名约束来查找实体,但是以上关于图2C-2F和方法300描述的共指消解技术可以类似地适用于在消解实体建议/校正中搜索相关实体。
因此,图4示出用于通过(例如,在如图1中所示出的实体建议/校正消解器机器118中)消解实体建议和/或校正来消除多回合对话中的包括用户话语的集合的用户查询的歧义的方法400。关于建议的实体来描述方法400,但是本文描述的技术类似地适用于消解校正的实体。实体建议/校正机器118可以被配置为实现方法400。
在402处,方法400包括使用预定义语言模型(例如,如以上所描述的任何适当的预定义语言模型)来识别来自多回合对话的未消解的用户话语中的建议的实体。建议的实体可以以任何适当的方式(例如,经由共指)来指代。检测到实体正在被建议可以基于任何适当的特征,例如基于检测到诸如“怎样”的相关英语短语、检测到任何其他语言的相关短语或以任何其他适当的方式。
在404处,方法400包括使用预定义语言模型来识别与建议的实体相关联的实体约束。可以以任何适当的方式从用户话语的任何词语(例如,全名或部分名、指代实体的共指短语、描述由实体执行的动作的动词、描述实体属性的形容词等)导出实体约束。例如,在图2G中,建议的实体“杰夫贝佐斯”由全名指代。备选地,“杰夫贝佐斯”可以以任何其他方式(例如,“亚马逊的创始人”或“贝佐斯”)来指代。可以以任何适当的方式(例如,使用本文描述的共指消解方法)来消解建议的实体。
在406处,方法400包括在多回合对话的计算机可访问会话历史中在先前消解的实体的集合中搜索含有具有与建议的实体的实体约束的最高置信度对应的实体属性的候选实体、包括候选实体的候选话语以及与候选实体相关联的候选意图。候选话语可以是提到候选实体的任何话语,例如用户话语或代理话语。类似于消解共指,建议的实体的实体约束可以包括建议的实体的部分名,并且因此在先前消解的实体的集合中搜索候选实体包括找到具有与部分名一致的全名的先前消解的实体的子集,其中候选实体在该子集之中。在其他示例中,未消解的用户话语中的有歧义实体可以包括对来自多回合对话的实体的有序列表引用的序数,并且因此候选实体可以被标识为来自实体的有序列表的对应条目。在一些示例中,建议的实体的实体约束包括建议的实体与基本实体之间的依赖关系,并且因此搜索候选实体包括搜索基本实体,并且使用建议的实体与基本实体之间的依赖关系来自动地消解候选实体。例如,包括实体建议的用户话语可以为以下形式中的任何:“她怎么样?”“第三个怎么样?”“他的妻子怎么样?”。
候选意图可以是来自候选话语的意图或关于候选实体讨论的任何其他查询意图(例如,候选实体的实体属性)。在许多示例中,候选意图和候选实体出现在用户话语的集合的相同用户话语中。例如,在图2G中,候选实体是比尔盖茨,并且候选意图是先前关于比尔盖茨描述的“净资产”。基于实体约束/实体属性来搜索候选实体可以以任何适当的方式来执行,例如如以上关于共指消解所描述的。例如,杰夫贝佐斯具有可以基于在知识库或网页搜索中查找杰夫贝佐斯而确定的许多实体约束。如本示例中所描绘的,针对杰夫贝佐斯的实体约束紧密地对应于比尔盖茨的实体属性,例如,两个实体可以具有定义的“创办的公司”属性和“净资产”属性以及类似的实体类型(例如,“人类”、“创始人”)。
在408处,方法400包括将候选话语重写为包括候选意图并且用建议的实体替代候选实体的经重写话语。例如,在图2G中,可能的经重写话语218G是其中候选实体“比尔盖茨”用建议的实体“杰夫贝佐斯”替代的用户话语208G。
在410处,方法400包括将经重写话语输出到一个或多个查询应答机器。正如共指消解,在消解建议/校正的实体之后,经重写话语可以适合于由查询应答机器在下游处理,而无需来自计算机可访问会话历史202的任何进一步上下文。例如,在图2G中,经重写话语218G是关于杰夫贝佐斯的净资产的完全定义的查询。
在一些示例中,方法400还包括使用预定义语言模型来识别未消解的用户话语中的建议的实体的一个或多个实体属性,其中与建议的实体相关联的实体约束包括建议的实体的一个或多个实体属性。在图2G中示出的示例中,除了确定全名杰夫贝佐斯之外,预定义语言模型可以被操作用于查找针对杰夫贝佐斯的属性/类型,例如以确定杰夫贝佐斯具有类型“人”和“创始人”并且具有性别“男”。备选地,如果代替指代“杰夫贝佐斯”,用户已经在未消解的用户话语216G中指代“亚马逊的创始人”,那么预定义语言模型可以被操作用于查找针对“亚马逊的创始人”的属性/类型,诸如“创办的公司=亚马逊”属性、“人”类型和/或创始人类型。在一些示例中,方法400还包括使用预定义语言模型来识别未消解的用户话语中的动词谓语,例如“创始人”暗示“创办的公司”谓语。因此,与建议的实体相关联的实体约束包括动词谓语,并且其中在先前消解的实体的集合中搜索候选实体包括找到具有针对指示动词谓语的实体属性的定义值的先前消解的实体的子集。谓语短语、实体属性、实体类型和实体约束之间的关系可以以任何适当的方式来确定,例如,基于从人类用户获得的示例数据。在一些示例中,谓语短语、实体属性、实体类型和/或实体约束之间的关系可以被表示为计算机可访问词典、数据库和/或知识库,包括相关的谓语短语、实体属性、实体类型和/或实体约束之间的任何适当的映射。在一些示例中,可以由机器学习函数来确定这样的关系。例如,机器学习函数可以被配置为评估针对特定关系的置信度值。备选地或附加地,机器学习函数可以被配置为接收谓语短语、实体属性、实体类型或实体约束,并且输出一个或多个相关的谓语短语、实体属性、实体类型和/或实体约束。
在一些示例中,用户可以建议通过隐含地提及当前时间和/或位置来谈论时间和位置。例如,本公开的方法可以推出“天气怎样?”很可能询问关于当前时间和位置的天气。因此,如果俄勒冈州的波特兰的用户在2020年1月1日下午4:00问“天气怎样?”,那么查询可以通过将当前时间和位置添加到查询来重写,如在“俄勒冈州的波特兰在2020年1月1日下午4:00的天气怎样?”中一样。然而,在一些示例中,本公开的方法可以被配置为推出不同的时间/位置与相对较高的置信度相关,例如,如果特定时间/位置在会话历史中的先前话语中被提到。例如,如果用户问“俄勒冈州动物园明天有表演吗?”并且随后问“天气怎样?”,那么本公开的方法可以对时间是“明天”和位置是“俄勒冈州动物园”而不是当前时间和当前位置评估相对较高的置信度。
图2I示出未消解的用户话语216I中的已经由共指消解机器102预处理并由言语行为分类器机器110分类为“建议意图”言语行为的“建议意图”言语行为的示例。计算机可访问会话历史202I包括比尔盖茨的净资产的讨论。未消解的用户话语216I是其中用户确立要关于相同实体(比尔盖茨)讨论的新查询意图的“建议意图”言语行为。正如对建议/校正实体,“建议意图”言语行为可以由言语行为分类器机器110(例如,如由来自未消解的用户话语的词语“怎么样”所指示的,或如由诸如“怎样”或“关于”的任何其他指示词/短语所指示的)以任何适当的方式来检测。如果“建议意图”言语行为被检测到,那么用户话语的剩余部分可以被评估以定义关于新话题(即“年收入”)的用户意图。之后,基于用户的讨论“年收入”的意图,原始用户话语208I可以被重写以并入意图建议,例如通过在经重写话语218I中用“年收入”替代“净资产”。注意,未消解的用户话语216G“年收入怎么样?”未提到任何实体,因此不是可以在没有提到相关实体的第一次重写的情况下被回答的完全形成的查询。
因此,图5示出用于通过消解实体建议和/或校正来消除多回合对话中的包括用户话语的集合的用户查询的歧义的方法500。实体意图消解器机器120可以被配置为实现方法500。
在502处,方法500包括使用预定义语言模型来识别来自多回合对话的未消解的用户话语中的建议的意图。正如对建议的实体的检测,任何适当的预定义语言模型可以用于基于任何适当的准则来检测建议的意图,例如通过检测诸如“怎样?”或“怎么样?”的短语。
在504处,方法500包括使用预定义语言模型来识别与建议的意图相关联的实体约束。例如,建议的意图可以关于实体属性来定义,例如,在图2I中,意图是询问“年收入”实体属性。因此,来自未消解的用户话语216I的实体约束可以与相同实体属性(例如,约束“已经定义的属性=年收入”)相关。
在506处,方法500包括在多回合对话的计算机可访问会话历史中在先前消解的实体的集合中搜索含有具有与建议的意图的实体约束的最高置信度对应的实体属性的候选实体。可以以任何适当的方式(例如,如以上关于图3所描述的)来确定对应的置信度。例如,在图2I中,比尔盖茨具有由意图定义的“年收入”属性,而保罗艾伦(其已故)不具有该属性。因此,比尔盖茨具有与建议的意图的实体约束的更高置信度对应。
在508处,方法500包括将未消解的用户话语重写为包括建议的意图和候选实体的经重写话语。例如,在图2I中,经重写话语218I包括建议的意图“年收入”和候选实体“比尔盖茨”。
在510处,方法500包括将经重写话语输出到一个或多个查询应答机器。正如共指消解,在消解建议的意图之后,经重写话语可以适合于由查询应答机器在下游处理,而无需来自计算机可访问会话历史202的任何进一步上下文。例如,在图2I中,经重写话语218I是关于比尔盖茨的年收入的完全定义的查询。在一些示例中,候选实体是先前从计算机可访问会话历史202I中的自动化助手话语中的一个消解的,例如在图2I中,比尔盖茨首次在代理话语206I中提到。备选地或附加地,候选实体可以从用户话语消解,例如早前的用户话语可以显式地提到比尔盖茨。
在一些示例中,识别建议的意图还包括识别与建议的意图相关联的谓语重写模式。例如,预定义语言模型可以能操作用于针对给定建议的意图确定一个或多个相关谓语重写模式,其中将未消解的用户话语重写为经重写话语包括将谓语重写模式应用到候选实体。例如,预定义语言模型可以将多个预定义意图关联到谓语重写模式。在一些示例中,预定义语言模型可以包括计算机可访问词典、数据库或包括多个不同的预定义意图的知识库以及针对每个预定义意图的一个或多个相关的谓语重写模式。在一些示例中,预定义语言模型可以包括被配置为接收预定义意图并输出谓语重写模式的机器学习函数。作为特定示例,针对“年收入”意图,预定义语言模型可以包括预定义模式:“<候选实体>的年收入是多少”,其中<候选实体>可以用合适的候选实体替代。该示例性谓语重写模式将得到图2I中示出的经重写话语218I。
如果预定义学习模型未能找到针对给定意图的谓语重写模式,那么查询可以根据一般的预定义规则来重写。用于重写未消解的用户话语的一般规则的非限制性示例包括使用预定义连接字符串或替代如本文定义的模板字符串的部分。在一些示例中,建议的意图包括感兴趣的实体属性,并且实体约束包括针对感兴趣的实体属性的定义值。在图2I中,建议的意图包括感兴趣的“年收入”属性,并且比尔盖茨具有针对该属性的定义值。因此,在一些示例中,将未消解的用户话语重写为经重写话语包括将感兴趣的实体属性、预定义连接字符串和候选实体串联。例如,预定义连接字符串可以为“是”、“的”或空格(“”)。因此,图2I中的经重写话语218I可以备选地被重写为例如“比尔盖茨的年收入”。基于替代模板字符串的部分的规则可以以任何适当的方式针对各种自然语言来定义。在英语中,如果谓语短语是名词短语,那么模板字符串的非限制性示例是“<候选实体>的<谓语短语>”,其中括号部分被指定为分别用候选实体和谓语短语替代。作为另一非限制性示例,谓语短语是针对某种感兴趣形容词的“<形容词>怎样”的形式的短语,之后查询可以是重写的“<候选实体><形容词>怎样”。否则,更一般地,意图建议消解器机器120被配置为通过替代模板字符串“<谓语短语><对象实体>”的部分来重写查询。相信,类似地,可以针对任何自然语言实现一般规则,以便促进重写未消解的用户话语以包括建议的意图和候选实体。
在一些示例中,共指消解、意图建议消解和/或实体建议/校正消解可能未成功地消解来自未消解的用户话语的每一个可能的歧义。例如,可以存在不可以被消解为单个无歧义实体的一个或多个共指,要么因为针对匹配实体的搜索得到零个具有足够相关性的实体(例如,零个具有高于预定义阈值的置信度值的实体),要么因为该搜索得到两个或更多个具有类似相关性的匹配实体(例如,基于相同或相似的置信度值)。备选地,建议的意图或实体可能无法基于计算机可访问会话历史消解,例如如果建议的意图被提到但是建议的意图与来自历史的任何实体不相关,或者如果建议的实体被提到但是与来自历史的任何意图不相关。因此,为了回复用户话语,可能有必要获得关于什么实体/意图是相关的额外信息。
因此,可以存在仍然存在于经重写话语中的固有歧义,其甚至无法使用由计算机可访问会话历史提供的上下文来消解。因此,即使给定经重写话语,言语行为分类器机器110可能无法将经重写话语分类为“完全消解的问题”、“问候”、“确认”、“拒绝”、“建议实体”、“校正实体”或“建议意图”言语行为。因此,为了解决固有歧义,话语可以由被配置为检测歧义并输出澄清性问题以获得来自用户的澄清性回复的澄清技术机器116处理。下面将参考图2J-2M和6进一步描述澄清技术机器116。另外,用户话语可以是由用户响应于澄清性问题提供的澄清性回复。基于在澄清性问题之后出现的澄清性回复,和/或基于在澄清性回复中出现的词语(例如,“我是指”),言语行为分类器机器110可以将澄清性回复分类为“澄清”言语行为,并且委托澄清性回复由被配置为基于澄清性回复来消除(多个)先前用户话语的歧义的澄清消解机器122处理。
图2J示出被检测为无法经由共指消解、实体建议/校正消解和/或意图建议消解被完全消解的歧义的有歧义用户话语的示例。未消解的用户话语216J使用代词“他”并且与创办了公司的实体相关联。然而,这些属性可以匹配来自历史的实体212J中的任一个,即比尔盖茨或保罗艾伦。由于“他”无法被消解为单个明确的实体,并且由于不存在更紧密地对应于比尔盖茨或保罗艾伦的额外属性,所以检测到的言语行为220J是“歧义”。
图2K示出代理话语210K中输出的澄清性问题和未消解的用户话语214K中的对应的澄清性回复的示例。言语行为分类器机器110可以被编程和/或训练以检测澄清言语行为,其可以用于消除先前的有歧义用户话语208K的歧义。例如,言语行为分类器机器可以被训练以基于澄清性回复中的词语(例如,“我是指”)和/或基于先前已经输出澄清性问题来检测澄清言语行为。返回到图2K中的示例,在未消解的用户话语214K中,用户澄清他们是指“第一个”,其可以被消解(例如,通过本文描述的共指消解方法)为指代来自包括“比尔盖茨和保罗艾伦”的有序列表中的“比尔盖茨”。任何其他适当的指代可以用于澄清并且可以使用本文描述的任何方法被消解为来自历史的实体212K,例如,诸如“比尔”的部分名可以使用本文描述的共指消解方法来消解。在消解消除歧义实体之后,原始的有歧义用户话语(例如,图2K中的208K)可以被重写以用消除歧义实体(例如,“比尔盖茨”)替代有歧义实体(例如,“他”),如在可能的经重写话语218K中一样。
图2J示出被检测为无法经由共指消解、实体建议/校正消解和/或意图建议消解被完全消解的歧义的有歧义用户话语的另一示例。未消解的用户话语216J使用代词“她”并且与创办了公司的实体相关联。然而,“她”代词的“女”性别不匹配针对来自会话历史202J的实体212J中的任何(即比尔盖茨或保罗艾伦)的性别属性。由于“她”无法被消解为单个明确的实体,所以检测到的言语行为220J是“歧义”。尽管用户对询问由女人创办的公司感兴趣,但是在历史中不存在这样的实体212J,因此问题是有歧义的,因为会话历史202J未包括足够的信息来消解歧义。
图2M示出代理话语210M中输出的澄清性问题和未消解的用户话语216M中的对应的澄清性回复的示例。澄清性回复被检测为澄清言语行为,其可以用于消除先前的有歧义用户话语208M的歧义。用户澄清他们实际上想要询问“梅琳达盖茨”,即使她尚未在来自历史的实体212M中被跟踪到。正如其他示例,澄清性实体可以使用本文描述的任何技术(例如,经由共指)来消解。例如,代替说明“哦,我是指梅琳达盖茨”,用户可以备选地说明“我是指比尔的妻子”或“我是指梅琳达”,并且基于已经在计算机可访问会话历史202中的上下文,这些说明书可以被消解为“梅琳达盖茨”,例如,基于比尔盖茨和梅琳达盖茨实体之间的确立的关系。在消解消除歧义实体之后,原始的有歧义用户话语(例如,图2M中的208M)可以被重写以用消除歧义实体(例如,“梅琳达盖茨”)替代有歧义实体(例如,“她”),如在可能的经重写话语218M中一样。
因此,图6示出用于通过使用澄清性问题获得来自用户的额外信息来消除多回合对话中的包括用户话语的集合的用户查询的歧义的方法600。澄清技术机器116和/或澄清消解机器122可以被配置为实现方法600。
在602处,方法600包括使用预定义语言模型来识别来自多回合对话的未消解的用户话语中的有歧义实体。例如,有歧义实体可以由被有歧义地消解为两个或更多个实体的共指、无法被消解为任何实体的共指、或无法被消解为指代任何实体的建议的意图、或可能指代两个或更多个不同的实体的建议的意图定义。
在604处,方法600包括通过分析多回合对话的计算机可访问会话历史来试图消解有歧义实体。该分析可以包括共指消解、建议/校正的实体消解、建议的意图消解或本文描述的任何其他(多种)技术。例如,该分析可以包括使用预定义语言模型来识别未消解的用户话语中的初始未消解的实体,使用预定义语言模型来识别初始未消解的实体的实体约束,并且在多回合对话的计算机可访问会话历史中,在先前消解的实体的集合中搜索具有对应于初始未消解的实体的实体约束的实体属性的消解实体。
如果消解实体可以在先前消解的实体的集合中找到,那么有歧义实体可以通过分析来消除歧义。因此,用户话语可以以消除歧义的形式来重写,例如如以上关于共指消解、建议/校正的实体消解和/或建议的意图消解所描述的。因此,不需要进一步澄清并且在614处,重写的用户话语可以被输出到一个或多个查询应答机器。
然而,在一些情况下,如图2J和2L中,消解实体未被包括在先前消解的实体的集合中。因此,有歧义实体无法通过分析来消除歧义(例如,因为存在零个适合于歧义消除的来自历史的候选实体,或者因为存在两个或更多个等可能的候选实体)。
响应于未能通过分析消除有歧义实体的歧义,方法600还包括在606处输出关于有歧义实体的澄清性问题。方法600还包括在608处接收澄清性用户话语。因此,在610处,方法600还包括使用本公开的方法中的任何来标识澄清性用户话语中的消除歧义实体,例如通过操作预定义语言模型来标识澄清性用户话语中提到的实体,并且使用共指机器102来关于原始的有歧义用户话语消解实体。例如,图2K和2M示出示例性的澄清性问题和澄清性回复。
在一些示例中,试图消解有歧义实体包括确定有歧义实体是对两个或更多个实体的有歧义引用,其中澄清性问题是选择两个或更多个实体中的一个实体的请求。例如,澄清性问题可以包括两个或更多个实体的有序列表,并且因此标识澄清性用户话语中的消除歧义实体可以包括通过对两个或更多个实体的有序列表引用的序数来标识消除歧义实体。如图2K中所示出的,存在可以匹配来自用户话语208K的有歧义实体的两个不同的实体,即比尔盖茨和保罗艾伦。因此,澄清性问题提到这些选项以帮助用户消除歧义:“谁还创办了其他什么公司?比尔盖茨还是保罗艾伦?”。另外,澄清性回复通过澄清用户是指“第一个”(即比尔盖茨)来重新提及这些选择。备选地或附加地,标识澄清性用户话语中的消除歧义实体可以包括通过包括在澄清性用户话语中的部分实体名来标识消除歧义实体,例如,澄清性用户话语可以已经说明“比尔”或“盖茨”而非“第一个”。
在一些示例中,试图消解有歧义实体包括确定有歧义实体无法被消解为任何实体,并且因此澄清性问题是对用户显式地指示消除歧义实体的请求。在图2M中,由于有歧义实体与来自历史的跟踪的实体212M的性别之间的不匹配,不存在可以匹配来自用户话语208M的有歧义实体的来自历史的实体212M。因此,澄清性问题不列出选项而是代替地简单地要求用户进行澄清:“谁还创办了其他什么公司?”。因此,用户的澄清性回复说明特定人“梅琳达盖茨”,尽管如以上所描述的,但是用户的澄清性回复可以代替地经由共指或任何其他适当的描述(例如,“比尔盖茨的妻子”)说明“梅琳达盖茨”。在任何情况下,用户的澄清性回复被消解以确定消除歧义实体,即图2K中的示例中的“比尔盖茨”和图2M中的示例中的“梅琳达盖茨”。
在612处,方法600将未消解的用户话语重写为用消除歧义实体替代有歧义实体的经重写话语。经重写话语被消除歧义以显式地提到消除歧义实体,使得其可以由下游查询应答机器处理而没有对计算机可访问会话历史202的歧义消除或分析的任何进一步需要。因此,在614处,方法600包括将经重写话语输出到一个或多个查询应答机器。
在一些示例中,方法600包括使用预定义语言模型来识别有歧义实体的实体约束和消除歧义实体的实体属性。因此,标识澄清性用户话语中的消除歧义实体包括确定实体约束是否以足够的置信度对应于实体属性。在一些示例中,消除歧义实体是多个候选实体中的一个并且足够的置信度是多个候选实体之中的最高置信度。在一些示例中,足够的置信度是超过预定义阈值置信度的任何置信度值。可以以任何适当的方式(例如,如以上参考图3所描述的)来确定对应的置信度。
在606处输出澄清性问题可以以任何适当的方式来执行。在一些示例中,方法600包括使用预定义语言模型来确定未消解的用户话语的谓语从句。谓语从句可以是来自未消解的用户话语的任何相关短语,例如与感兴趣的实体属性或任何其他查询意图相关。因此,谓语从句可以指示未消解的用户话语的什么方面要求澄清。例如,如果用户问“她还唱了什么?”而没有提到任何特定歌手,那么“歌手”可以被用作描述有歧义实体的谓语从句。因此,澄清性问题可以提到该谓语从句,例如“谁还唱了什么?”或“哪个歌手还唱了什么?”。在一些示例中,预定义语言模型可以用于识别有歧义实体的实体属性,其中澄清性问题提到实体属性。例如,在图2K中,用户对关于有歧义实体的“创办的公司”属性感兴趣。因此,澄清性问题通过问“谁还创办了其他什么公司?比尔盖茨还是保罗艾伦?”。
在一些示例中,输出澄清性问题包括生成针对未消解的用户话语的解析图并选择解析图的连接子图。在一些示例中,解析图的连接子图包括解析图的根节点。例如,解析图可以是标识未消解的用户话语的根词和话语中的从句之间的从句关系的依赖性解析图。因此,选择合适的连接子图可以包括从未消解的用户话语找到“疑问词”,例如,“谁”、“什么”、“哪里”、“是”等,其中疑问词最靠近未消解的用户话语中的有歧义共指。例如,在图2M中,有歧义共指是“她”并且相关的疑问词是“什么”。输出澄清性问题还可以包括用另一疑问词(例如,如图2M中所示出的)替代有歧义共指。
在一些特定人类语言中,特定共指词可以出现在言语的不同部分中。例如,在英语中,“她的”可以作为名词的部分而出现并且可以由疑问词“谁的”替代以用于问题生成,例如,“她的孩子是谁?”可以被重写为“谁的孩子是谁?”。备选地,“她的”可以作为代词而出现,如在“汤姆汉克斯何时娶了她”(其可以被重写为“汤姆汉克斯何时娶了谁”)中一样。
在一些示例中,有歧义实体是有歧义共指。因此,澄清性问题可以包括来自未消解的用户话语的用与有歧义共指相关联的疑问词替代有歧义共指的经重写短语,以便指示什么共指需要在用户的澄清回复中被澄清。例如,在图2M中,用户话语208M包括有歧义共指“她”并且代理话语210M问“谁还创办了其他什么公司?”。代理话语210M通过用相关疑问词“谁”替代来自用户话语208M的有歧义共指“她”来形成澄清性问题。
在一些示例中,澄清性回复可能未能充分地消除原始的未消解的用户话语的歧义。例如,澄清性回复中提到的实体可能未以足够的置信度对应于来自未消解的用户话语的有歧义共指或建议。因此,利用澄清消解机122和/或澄清技术116来消解歧义可以包括进行多次尝试以消解歧义。因此,响应于实体约束未能以至少足够的置信度对应于实体属性,澄清技术116可以被配置为输出附加的澄清性问题并接收附加的澄清性用户话语。以这种方式,许多澄清性问题可以在最终对原始的未消解的用户话语进行消除歧义之前被输出。
本文描述的方法和过程可以被关联于一个或多个计算设备的计算系统。具体地,这样的方法和过程可以被实现为可执行计算机应用程序、网络可访问计算服务、应用编程接口(API)、库或以上和/或其他计算资源的组合。
图7示意性地示出被配置为提供本文描述的计算功能中的任何至全部的计算系统700的简化表示。计算系统700可以采取以下形式:一个或多个个人计算机、计算机可访问服务计算机、平板计算机、家庭娱乐计算机、游戏设备、移动计算设备、移动通信设备(例如,智能电话)、虚拟/增强/混合现实计算设备、可穿戴计算设备、物联网(IoT)设备、嵌入式计算设备、个人助手计算设备和/或其他计算设备。
计算系统700包括逻辑子系统702和存储子系统704。计算系统700可以可选地包括输入/输出(I/O)子系统708、通信子系统706和/或图7中未示出的其他子系统。在一些示例中,I/O子系统708包括被配置为接收以可听言语的形式的来自用户的用户话语的麦克风子系统714、被配置为接收以文本的形式的来自用户的用户话语的键盘子系统716、被配置为输出以文本的形式的代理话语的显示子系统710和/或被配置为输出以可听言语的形式的代理话语的扬声器子系统712。
逻辑子系统702包括被配置为运行指令的一个或多个物理设备。例如,逻辑子系统可以被配置为运行作为一个或多个应用、服务或其他逻辑结构的部分的指令。逻辑子系统可以包括被配置为运行软件指令的一个或多个硬件处理器。附加地或备选地,逻辑子系统可以包括被配置为运行硬件或固件指令的一个或多个硬件或固件设备。逻辑子系统的处理器可以是单核的或多核的,并且其上运行的指令可以被配置用于顺序的、并行的和/或分布式的处理。逻辑子系统的个体组件可选地可以被分布在两个或更多个单独的设备之中,其可以被远程地定位和/或配置用于协同处理。逻辑子系统的各方面可以由配置于云计算配置中的可远程访问的网络化计算设备虚拟化和运行。
存储子系统704包括被配置为临时和/或暂时保持诸如数据和可由逻辑子系统运行的指令的计算机信息的一个或多个物理设备。当存储子系统包括两个或更多个设备时,这些设备可以被并列定位和/或远程定位。存储子系统704可以包括易失性、非易失性、动态、静态、读/写、只读、随机访问、顺序访问、位置可寻址、文件可寻址和/或内容可寻址设备。存储子系统704可以包括可移除和/或内置设备。当逻辑子系统运行指令时,可以转变存储子系统704的状态,例如以保持不同的数据。
逻辑子系统702和存储子系统704的各方面可以被一起集成到一个或多个硬件逻辑组件中。例如,这样的硬件逻辑组件可以包括程序和应用特定集成电路(PASIC/ASIC)、程序和应用特定标准产品(PSSP/ASSP)、片上系统(SOC)以及复杂可编程逻辑器件(CPLD)。
逻辑子系统和存储子系统可以协作以制定图1的数据流架构100和/或实例化一个或多个逻辑机器(例如,共指消解机器102、实体建议/校正消解器机器118、澄清消解机122、问候/确认/拒绝回复机器112、查询应答机器114以及澄清技术机器116)和/或实例化计算机可访问会话历史202。
如本文所使用的,术语“机器”用于统一指代硬件、固件、软件、指令和/或协作以提供计算机功能的任何其他组件的组合。换言之,“机器”绝不是抽象概念而且总是具有有形形状。机器可以由单个计算设备实例化,或者机器可以包括由两个或更多个不同的计算设备实例化的两个或更多个子组件。在一些实施方式中,机器包括与远程组件(例如,由服务器计算机的网络提供的云计算服务)协作的本地组件(例如,由计算机处理器运行的软件应用)。软件和/或给出特定机器的其他指令可以可选地在一个或多个适当的存储设备上被保存为一个或多个未运行的模块。
机器可以使用现有的和/或未来的机器学习(ML)、人工智能(AL)和/或自然语言处理(NLP)技术以及硬编码的或其他程序员定义的计算功能的任何适当的组合来实现。应当理解,可以由计算系统700的对应机器和/或其他计算实体以编程方式来执行以上参考图2A-图2M所描述的决策、推理、检测以及其他逻辑中的全部。
可以并入一个或多个机器的实施例中的技术的非限制性示例包括支持向量机、多层神经网络、卷积神经网络(例如,包括用于处理图像和/或视频的空间卷积网络、用于处理音频信号和/自然语言句子的时间卷积网络和/或被配置为跨一个或多个时间和/或空间维度卷积和池化特征的任何其他适当的卷积神经网络)、递归神经网络(例如,长短期记忆网络)、联合存储器(例如,查找表、散列表、布隆过滤器、神经图灵机和/或神经随机访问存储器)、词语嵌入模型(例如,GloVe或Word2Vec)、无监督式空间和/或聚类方法(例如,最近邻算法、拓扑数据分析和/或k均值聚类)、图形模型(例如,(隐)马尔科夫模型、马尔科夫随机场、(隐)条件随机场和/或AI知识库)和/或自然语言处理技术(例如,标记化、词干、成分和/或依赖性解析、和/或意图标识、音段模型和/或超音段模型(例如,隐动态模型))。
在一些示例中,可以使用一个或多个可微函数来实现本文描述的方法和过程,其中可以参考可微函数的输入和/或输出(例如,参考训练数据和/或参考目标函数)来计算和/或估计可微函数的梯度。这样的方法和过程可以至少部分地由可训练参数集确定。因此,可以通过任何适当的训练过程来调节针对特定方法或过程的可训练参数集,以便不断改进该方法或过程的功能。
用于调节可训练参数的训练过程的非限制性示例包括监督式训练(例如,使用梯度下降或任何其他适当的优化方法)、零样本、少样本、无监督式学习方法(例如,基于从无监督式聚类方法导出的类的分类)、增强学习(例如,基于反馈的深度Q学习)和/或生成式对抗神经网络训练方法、信念传播、RANSAC(随机样本一致性)、上下文班迪特方法、最大似然法和/或期望最大。在一些示例中,本文描述的多种方法、过程和/或组件可以关于测量多个组件的集体功能的性能的目标函数(例如,关于增强反馈和/或关于标记的训练数据)被同时训练。同时训练多种方法、过程和/或组件可以改进这样的集体功能。在一些示例中,一个或多个方法、过程和/或组件可以可以独立于其他组件被训练(例如,在历史数据上离线训练)。
语言模型(例如,本文提及的任何(多个)预定义语言模型)可以利用词汇特征来引导针对词语的采样/搜索以用于标识言语。例如,语言模型可以至少部分地由词语或其他词汇特征的统计分布来定义。例如,语言模型可以由n元语法的统计分布来定义,从而根据词汇统计来定义候选词之间的转移概率。语言模型还基于任何其他合适的统计特征和/或利用一个或多个机器学习和/或统计算法(例如,从这样的处理得到的置信度值)处理统计特征的结果。在一些示例中,统计模型可以约束什么词可以针对音频信号被识别,例如基于音频信号中的词语来自特定词汇的假设。
备选地或附加地,语言模型可以基于先前被训练以将音频输入和词语表示于共享潜在空间中的一个或多个神经网络,共享潜在空间例如为由一个或多个音频和/或词语模型(例如,wav2letter和/或word2vec)学习的向量空间。因此,找到候选词可以包括基于由音频模型针对音频输入编码的向量来搜索共享潜在空间,以便找到用于用词语模型解码的候选词向量。共享潜在空间可以被用于针对一个或多个候选词评估该候选词出现在言语音频中的置信度。
语言模型可以结合声学模型来使用,声学模型被配置为针对候选词和音频信号基于词语的声学特征(例如,梅尔倒频谱系数、共振峰等)评估候选词被包括在音频信号中的言语音频中的置信度。可选地,在一些示例中,语言模型可以合并声学模型(例如,语言模型的评估和/或训练可以基于声学模型)。声学模型定义声学信号与基本声音单位(诸如音位)之间的映射,例如基于标记的言语音频。可以基于现有的和/或未来的机器学习(ML)和/或人工智能(AL)模型的任何适当的组合来实现声学模型,例如:深度神经网络(例如,长短期记忆、时间卷积神经网络、受限玻尔兹曼机、深度信念网络)、隐马尔科夫模型(HMM)、条件随机场(CRF)和/或马尔科夫随机场、高斯混合模型、和/或其他图形模型(例如,深度贝叶斯网络)。要用声学模型处理的音频信号可以以任何适当的方式来预处理,例如以任何适当的采样率编码、傅里叶变换、带通滤波等。声学模型可以被训练以基于用标记的音频数据训练来识别声学信号与声音单位之间的映射。例如,声学模型可以基于包括言语音频和校正文本的标记的音频数据来训练,以便学习言语音频信号与由校正文本指示的声音单位之间的映射。因此,声学模型可以被不断改进以改进其用于正确地识别言语音频的实用性。
在一些示例中,除了统计模型、神经网络和/或声学模型之外,语言模型可以并入任何适当的图形模型,例如隐马尔科夫模型(HMM)或条件随机场(CRF)。图形模型可以利用统计特征(例如,转移概率)和/或置信度值来确定在给定到目前为止识别的语音音频和/或其他词语的情况下识别词语的概率。因此,图形模型可以利用统计特征、先前训练的机器学习模型和/或声学模型来定义图形模型中表示的状态之间的转移概率。
当被包括时,显示子系统710可以用于呈现由存储子系统704保持的数据的视觉表示。该视觉表示可以采取图形用户界面(GUI)的形式。显示子系统710可以包括利用几乎任何类型的技术的一个或多个显示设备。在一些实施方式中,显示子系统可以包括一个或多个虚拟现实、增强现实或混合现实显示器。
当被包括时,I/O子系统708可以包括一个或多个输入设备或与其接口连接,输入设备例如为麦克风子系统714和/或键盘子系统716。输入设备可以包括传感器设备或用户输入设备。用户输入设备的示例包括键盘、鼠标、触摸屏或游戏控制器。在一些实施例中,输入子系统可以包括选定自然用户输入(NUI)组件或与其接口连接。这样的组件可以是集成的或外围的,并且对输入动作的转换和/或处理可以在板上或离板被处理。示例性NUI组件可以包括用于语音和/或声音标识的麦克风;用于机器视觉和/或姿势标识的红外、颜色、立体视觉和/或深度相机;用于运动检测和/或意图标识的头部跟踪器、眼部跟踪器、加速度计和/或陀螺仪。
当被包括时,通信子系统706可以被配置为将计算系统700与一个或多个其他计算设备通信地耦合。通信子系统706可以包括与一个或多个不同的通信协议兼容的有线和/或无线通信设备。通信子系统可以被配置用于经由个人网络、局域网和/或广域网的通信。
在示例中,一种对多回合对话中的包括用户话语的集合的用户查询进行消除歧义的方法包括:使用预定义语言模型来识别来自多回合对话的未消解的用户话语中的有歧义实体;输出关于有歧义实体的澄清性问题;接收澄清性用户话语;标识澄清性用户话语中的消除歧义实体;将未消解的用户话语重写为用消除歧义实体替代有歧义实体的经重写话语;以及将经重写话语输出到一个或多个查询应答机器。在这个或任何其他示例中,通过分析多回合对话的计算机可访问会话历史来试图消解有歧义实体;并且输出关于有歧义实体的澄清性问题是响应于未能消解有歧义实体的。在这个或任何其他示例中,使用预定义语言模型来分析多回合对话的计算机可访问会话历史包括:使用预定义语言模型来识别未消解的用户话语中的初始未消解的实体;使用预定义语言模型来识别初始未消解的实体的实体约束;以及在多回合对话的计算机可访问会话历史中,在先前消解的实体的集合中搜索具有对应于初始未消解的实体的实体约束的实体属性的消解的实体,并且确定消解的实体未被包括在先前消解的实体的集合中。在这个或任何其他示例中,试图消解有歧义实体包括确定有歧义实体是对两个或更多个实体的有歧义引用,其中澄清性问题是选择两个或更多个实体中的一个实体的请求。在这个或任何其他示例中,澄清性问题包括两个或更多个实体的有序列表,并且其中标识澄清性用户话语中的消除歧义实体包括通过对两个或更多个实体的有序列表的序数引用来标识消除歧义实体。在这个或任何其他示例中,试图消解有歧义实体包括确定有歧义实体无法被消解为任何实体,并且其中澄清性问题是对用户显式地指示消除歧义实体的请求。在这个或任何其他示例中,标识澄清性用户话语中的消除歧义实体包括通过包括在澄清性用户话语中的部分实体名来标识消除歧义实体。在这个或任何其他示例中,该方法还包括使用预定义语言模型来识别有歧义实体的实体约束和消除歧义实体的实体属性,并且其中标识澄清性用户话语中的消除歧义实体包括确定实体约束是否以足够的置信度对应于实体属性。在这个或任何其他示例中,该方法还包括,响应于实体约束未能以至少足够的置信度对应于实体属性,输出附加的澄清性问题并接收附加的澄清性用户话语。在这个或任何其他示例中,消除歧义实体是多个候选实体中的一个,并且足够的置信度是多个候选实体之中的最高置信度。在这个或任何其他示例中,该方法还包括使用预定义语言模型来确定未消解的用户话语的谓语从句,其中澄清性问题提到谓语从句。
在这个或任何其他示例中,该方法还包括使用预定义语言模型来确定有歧义实体的实体属性,其中澄清性问题提到实体属性。在这个或任何其他示例中,有歧义实体是有歧义共指,并且其中澄清性问题包括来自未消解的用户话语的用与有歧义共指相关联的疑问词替代有歧义共指的经重写短语。在这个或任何其他示例中,输出澄清性问题包括生成针对未消解的用户话语的解析图并选择解析图的连接子图。在这个或任何其他示例中,解析图的连接子图包括解析图的根节点。
在示例中,一种自动化助手系统包括:麦克风;扬声器;逻辑子系统;以及存储子系统,被配置为保持由逻辑子系统可执行以进行以下操作的指令:识别经由麦克风接收到的未消解的用户话语中的有歧义实体;经由扬声器输出关于有歧义实体的澄清性问题;标识经由麦克风接收到的澄清性用户话语中的消除歧义实体;将在未消解的用户话语中用消除歧义实体替代有歧义实体的经重写话语输出到一个或多个查询应答机器;以及经由扬声器输出由查询应答机器中的一个返回的回答。在这个或任何其他示例中,未消解的用户话语被包括在多回合对话中,并且其中识别有歧义实体包括:使用多回合对话的计算机可访问会话历史,通过搜索多回合对话的先前消解的实体的集合来试图消解有歧义实体;并且其中输出关于有歧义实体的澄清性问题是响应于未能消解有歧义实体的。
在示例中,一种对多回合对话中的包括用户话语的集合的用户查询进行消除歧义的方法包括:使用预定义语言模型来识别来自多回合对话的未消解的用户话语中的有歧义实体,通过分析多回合对话的计算机可访问会话历史来试图消解有歧义实体;并且响应于未能消解有歧义实体:输出关于有歧义实体的澄清性问题;接收澄清性用户话语;标识澄清性用户话语中的消除歧义实体;将未消解的用户话语重写为用消除歧义实体替代有歧义实体的经重写话语;以及将经重写话语输出到一个或多个查询应答机器。在这个或任何其他示例中,试图消解有歧义实体基于确定有歧义实体是对两个或更多个实体的有歧义引用,其中澄清性问题是选择两个或更多个实体中的一个实体的请求。在这个或任何其他示例中,试图消解有歧义实体包括确定有歧义实体无法被消解为任何实体,并且其中澄清性问题是对用户显式地指示消除歧义实体的请求。
通过举例并且参考相关联的附图来呈现本公开。然而,将指出的是,在附图中的一个或多个中可能基本上相同的组件、过程步骤以及其他元件被协同地标识并以最小重复性来描述。然而,将指出的是,协同地标识的元件还可以在某种程度上不同。还将指出的是,一些附图可以是示意性的并且不是按比例绘制的。附图中示出的组件的各种绘图比例、长宽比和数量可以被故意扭曲以使某些特征或关系更容易看见。
将理解的是,本文描述的配置和/或方法本质上是示例性的,并且这些特定实施例或示例不应被认为是限制性的,因为许多变型是可能的。本文描述的特定例程或方法可以表示任何数量的处理策略中的一个或多个处理策略。因此,图示和/或描述的各种动作可以以图示和/或描述的顺序、以其他顺序、并行地被执行,或者被省略。类似地,以上描述的过程的次序可以被改变。

Claims (15)

1.一种对多回合对话中的包括用户话语的集合的用户查询进行消除歧义的方法,所述方法包括:
使用预定义语言模型来识别来自所述多回合对话的未消解的用户话语中的有歧义实体;
输出关于所述有歧义实体的澄清性问题;
接收澄清性用户话语;
标识所述澄清性用户话语中的消除歧义实体;
将所述未消解的用户话语重写为用所述消除歧义实体替代所述有歧义实体的经重写话语;以及
将所述经重写话语输出到一个或多个查询应答机器。
2.根据权利要求1所述的方法,还包括:
通过分析所述多回合对话的计算机可访问会话历史来试图消解所述有歧义实体;以及
其中输出关于所述有歧义实体的所述澄清性问题是响应于未能消解所述有歧义实体的。
3.根据权利要求2所述的方法,其中使用所述预定义语言模型来分析所述多回合对话的所述计算机可访问会话历史包括:
使用所述预定义语言模型来识别所述未消解的用户话语中的初始未消解的实体;
使用所述预定义语言模型来识别所述初始未消解的实体的实体约束;以及
在所述多回合对话的所述计算机可访问会话历史中,在先前消解的实体的集合中搜索具有与所述初始未消解的实体的所述实体约束相对应的实体属性的消解的实体,并且确定所述消解的实体未被包括在所述先前消解的实体的集合中。
4.根据权利要求2所述的方法,其中试图消解所述有歧义实体包括确定所述有歧义实体是对两个或更多个实体的有歧义引用,其中所述澄清性问题是选择所述两个或更多个实体中的一个实体的请求。
5.根据权利要求4所述的方法,其中所述澄清性问题包括所述两个或更多个实体的有序列表,并且其中标识所述澄清性用户话语中的所述消除歧义实体包括通过对所述两个或更多个实体的所述有序列表引用的序数来标识所述消除歧义实体。
6.根据权利要求2所述的方法,其中试图消解所述有歧义实体包括确定所述有歧义实体无法被消解为任何实体,并且其中所述澄清性问题是针对用户显式地指示所述消除歧义实体的请求。
7.根据权利要求1所述的方法,其中标识所述澄清性用户话语中的所述消除歧义实体包括通过包括在所述澄清性用户话语中的部分实体名来标识所述消除歧义实体。
8.根据权利要求1所述的方法,还包括使用所述预定义语言模型来标识所述有歧义实体的实体约束和所述消除歧义实体的实体属性,并且其中标识所述澄清性用户话语中的所述消除歧义实体包括确定所述实体约束是否以足够的置信度对应于所述实体属性。
9.根据权利要求8所述的方法,还包括,响应于所述实体约束未能以至少所述足够的置信度对应于所述实体属性,输出附加的澄清性问题并接收附加的澄清性用户话语。
10.根据权利要求8所述的方法,其中所述消除歧义实体是多个候选实体中的一个候选实体,并且所述足够的置信度是所述多个候选实体之中的最高置信度。
11.根据权利要求1所述的方法,还包括使用所述预定义语言模型来确定所述未消解的用户话语的谓语从句,其中所述澄清性问题提到所述谓语从句。
12.根据权利要求1所述的方法,还包括使用所述预定义语言模型来确定所述有歧义实体的实体属性,其中所述澄清性问题提到所述实体属性。
13.根据权利要求1所述的方法,其中所述有歧义实体是有歧义共指,并且其中所述澄清性问题包括来自所述未消解的用户话语的用与所述有歧义共指相关联的疑问词替代所述有歧义共指的经重写短语。
14.根据权利要求1所述的方法,其中输出所述澄清性问题包括生成针对所述未消解的用户话语的解析图并选择所述解析图的连接子图。
15.一种自动化助手系统,包括:
麦克风;
扬声器;
逻辑子系统;以及
存储子系统,被配置为保持由所述逻辑子系统可执行以进行如下操作的指令:
识别经由所述麦克风接收到的未消解的用户话语中的有歧义实体;
经由所述扬声器输出关于所述有歧义实体的澄清性问题;
标识经由所述麦克风接收到的澄清性用户话语中的消除歧义实体;
将在所述未消解的用户话语中用所述消除歧义实体替代所述有歧义实体的经重写话语输出到一个或多个查询应答机器;以及
经由所述扬声器输出由所述查询应答机器中的一个查询应答机器返回的回答。
CN202080040770.2A 2019-06-03 2020-04-22 澄清问题以用于重写有歧义的用户话语 Pending CN113906433A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US16/430,312 2019-06-03
US16/430,312 US11302330B2 (en) 2019-06-03 2019-06-03 Clarifying questions for rewriting ambiguous user utterance
PCT/US2020/029193 WO2020247096A1 (en) 2019-06-03 2020-04-22 Clarifying questions for rewriting ambiguous user utterance

Publications (1)

Publication Number Publication Date
CN113906433A true CN113906433A (zh) 2022-01-07

Family

ID=70680632

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202080040770.2A Pending CN113906433A (zh) 2019-06-03 2020-04-22 澄清问题以用于重写有歧义的用户话语

Country Status (4)

Country Link
US (1) US11302330B2 (zh)
EP (1) EP3963501A1 (zh)
CN (1) CN113906433A (zh)
WO (1) WO2020247096A1 (zh)

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11308281B1 (en) * 2018-11-08 2022-04-19 Amazon Technologies, Inc. Slot type resolution process
KR20190083629A (ko) * 2019-06-24 2019-07-12 엘지전자 주식회사 음성 인식 방법 및 음성 인식 장치
US11216519B2 (en) * 2019-07-30 2022-01-04 Walmart Apollo, Llc Methods and apparatus for automatically providing personalized search results
US11609919B2 (en) 2019-07-30 2023-03-21 Walmart Apollo, Llc Methods and apparatus for automatically providing personalized search results
JP2021071632A (ja) * 2019-10-31 2021-05-06 ソニー株式会社 情報処理装置、情報処理方法、及び、プログラム
US11574127B2 (en) * 2020-02-28 2023-02-07 Rovi Guides, Inc. Methods for natural language model training in natural language understanding (NLU) systems
US11393455B2 (en) * 2020-02-28 2022-07-19 Rovi Guides, Inc. Methods for natural language model training in natural language understanding (NLU) systems
US11626103B2 (en) 2020-02-28 2023-04-11 Rovi Guides, Inc. Methods for natural language model training in natural language understanding (NLU) systems
US11392771B2 (en) * 2020-02-28 2022-07-19 Rovi Guides, Inc. Methods for natural language model training in natural language understanding (NLU) systems
JP6771251B1 (ja) * 2020-04-24 2020-10-21 株式会社インタラクティブソリューションズ 音声解析システム
US11798538B1 (en) * 2020-09-21 2023-10-24 Amazon Technologies, Inc. Answer prediction in a speech processing system
TWI746214B (zh) * 2020-10-19 2021-11-11 財團法人資訊工業策進會 機器閱讀理解方法、機器閱讀理解裝置及非暫態電腦可讀取媒體
CN112632251B (zh) * 2020-12-24 2023-12-29 北京百度网讯科技有限公司 回复内容的生成方法、装置、设备和存储介质
CN114692639A (zh) * 2020-12-25 2022-07-01 华为技术有限公司 一种文本纠错方法和电子设备
US20220374604A1 (en) * 2021-05-18 2022-11-24 International Business Machines Corporation Natural language bias detection in conversational system environments
US11908452B1 (en) * 2021-05-20 2024-02-20 Amazon Technologies, Inc. Alternative input representations for speech inputs
US20230138741A1 (en) * 2021-10-29 2023-05-04 Kyndryl, Inc. Social network adapted response
US11977852B2 (en) * 2022-01-12 2024-05-07 Bank Of America Corporation Anaphoric reference resolution using natural language processing and machine learning

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6839667B2 (en) * 2001-05-16 2005-01-04 International Business Machines Corporation Method of speech recognition by presenting N-best word candidates
US20110054900A1 (en) * 2007-03-07 2011-03-03 Phillips Michael S Hybrid command and control between resident and remote speech recognition facilities in a mobile voice-to-speech application
US8943094B2 (en) 2009-09-22 2015-01-27 Next It Corporation Apparatus, system, and method for natural language processing
EP2839391A4 (en) 2012-04-20 2016-01-27 Maluuba Inc CONVERSATION AGENT
US9465833B2 (en) 2012-07-31 2016-10-11 Veveo, Inc. Disambiguating user intent in conversational interaction system for large corpus information retrieval
US9501469B2 (en) * 2012-11-21 2016-11-22 University Of Massachusetts Analogy finder
US9805718B2 (en) 2013-04-19 2017-10-31 Sri Internaitonal Clarifying natural language input using targeted questions
US9602449B2 (en) * 2013-10-17 2017-03-21 International Business Machines Corporation Correction of incoming messaging
US10079013B2 (en) * 2013-11-27 2018-09-18 Sri International Sharing intents to provide virtual assistance in a multi-person dialog
CN107003999B (zh) 2014-10-15 2020-08-21 声钰科技 对用户的在先自然语言输入的后续响应的系统和方法
US20170024375A1 (en) 2015-07-26 2017-01-26 Microsoft Technology Licensing, Llc Personal knowledge graph population from declarative user utterances
US10262062B2 (en) 2015-12-21 2019-04-16 Adobe Inc. Natural language system question classifier, semantic representations, and logical form templates
US10304444B2 (en) 2016-03-23 2019-05-28 Amazon Technologies, Inc. Fine-grained natural language understanding
US9858265B1 (en) 2016-06-08 2018-01-02 Rovi Guides, Inc. Systems and methods for determining context switching in conversation
US20180052842A1 (en) 2016-08-16 2018-02-22 Ebay Inc. Intelligent online personal assistant with natural language understanding
US10135979B2 (en) * 2016-11-02 2018-11-20 International Business Machines Corporation System and method for monitoring and visualizing emotions in call center dialogs by call center supervisors
KR20180070970A (ko) * 2016-12-19 2018-06-27 삼성전자주식회사 음성 인식 방법 및 장치
US10467509B2 (en) * 2017-02-14 2019-11-05 Microsoft Technology Licensing, Llc Computationally-efficient human-identifying smart assistant computer
US10586071B2 (en) * 2017-11-24 2020-03-10 International Business Machines Corporation Safeguarding confidential information during a screen share session
US10593350B2 (en) * 2018-04-21 2020-03-17 International Business Machines Corporation Quantifying customer care utilizing emotional assessments

Also Published As

Publication number Publication date
EP3963501A1 (en) 2022-03-09
WO2020247096A1 (en) 2020-12-10
US20200380991A1 (en) 2020-12-03
US11302330B2 (en) 2022-04-12

Similar Documents

Publication Publication Date Title
CN113906433A (zh) 澄清问题以用于重写有歧义的用户话语
US11256868B2 (en) Architecture for resolving ambiguous user utterance
US10977452B2 (en) Multi-lingual virtual personal assistant
US10083690B2 (en) Better resolution when referencing to concepts
US9269354B2 (en) Semantic re-ranking of NLU results in conversational dialogue applications
CN114600099A (zh) 使用助理系统的基于自然语言理解的元语音系统提高语音识别精度
US8818795B1 (en) Method and system for using natural language techniques to process inputs
US11861315B2 (en) Continuous learning for natural-language understanding models for assistant systems
CN110770694A (zh) 获得来自多个语料库的响应信息
US20220050833A1 (en) Dynamically suppressing query answers in search
US11133001B2 (en) Generating dialogue events for natural language system
US20220284904A1 (en) Text Editing Using Voice and Gesture Inputs for Assistant Systems
US20220415320A1 (en) Systems and Methods for Implementing Smart Assistant Systems
US20220351716A1 (en) System and method for a personalized dialogue system using knowledge-based entity services
EP4327199A1 (en) Active listening for assistant systems
WO2022225729A1 (en) Task execution based on real-world text detection for assistant systems
US20220147719A1 (en) Dialogue management
EP4327198A1 (en) Multi-device mediation for assistant systems
US20210149900A1 (en) Method, system and computer program for semantic triple-based knowledge extension
EP3822817A1 (en) Method, system and computer program for semantic triple-based knowledge extension
US20230353652A1 (en) Presenting Personalized Content during Idle Time for Assistant Systems
US20240119932A1 (en) Systems and Methods for Implementing Smart Assistant Systems
WO2022187480A1 (en) Text editing using voice and gesture inputs for assistant systems
CN117396837A (zh) 助理系统的多设备调解
CN117765940A (zh) 为助理系统呈现与语音命令相关联的注意状态

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