CN107111611A - 区分歧义表达以增强用户体验 - Google Patents

区分歧义表达以增强用户体验 Download PDF

Info

Publication number
CN107111611A
CN107111611A CN201580070449.8A CN201580070449A CN107111611A CN 107111611 A CN107111611 A CN 107111611A CN 201580070449 A CN201580070449 A CN 201580070449A CN 107111611 A CN107111611 A CN 107111611A
Authority
CN
China
Prior art keywords
dialogue
natural language
assumed
collection
component
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
CN201580070449.8A
Other languages
English (en)
Inventor
J-P·罗比乔德
R·萨里卡亚
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 CN107111611A publication Critical patent/CN107111611A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/332Query formulation
    • G06F16/3325Reformulation based on results of preceding query
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/332Query formulation
    • G06F16/3329Natural language query formulation or dialogue systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/3331Query processing
    • G06F16/3332Query translation
    • G06F16/3334Selection or weighting of terms from queries, including natural language queries
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/3331Query processing
    • G06F16/3332Query translation
    • G06F16/3335Syntactic pre-processing, e.g. stopword elimination, stemming
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/3331Query processing
    • G06F16/334Query execution
    • G06F16/3344Query execution using natural language analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/3331Query processing
    • G06F16/3349Reuse of stored results of previous queries
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • G06F40/289Phrasal analysis, e.g. finite state techniques or chunking
    • G06F40/295Named entity recognition
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/30Semantic analysis
    • 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 TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; 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
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/3331Query processing
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; 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 TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • G10L15/18Speech classification or search using natural language modelling
    • G10L15/183Speech classification or search using natural language modelling using context dependencies, e.g. language models
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • G10L2015/223Execution procedure of a spoken command

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Artificial Intelligence (AREA)
  • Mathematical Physics (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • General Health & Medical Sciences (AREA)
  • Human Computer Interaction (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Machine Translation (AREA)

Abstract

提供了用于区分歧义表达以增强用户体验的方法和系统。例如,可以由语音识别组件接收自然语言表达(402)。自然语言表达可以包括文本的单词、术语和短语中的至少一项。可以通过使用上下文信息来创建来自自然语言表达的对话假设集(404)。在一些情况下,对话假设集具有至少两个对话假设。可以为对话假设集生成多个对话响应(406)。可以基于对多个对话响应的分析来对对话假设集评级(408)。可以基于对对话假设集评级来执行动作(410)。

Description

区分歧义表达以增强用户体验
背景技术
语言理解应用(例如,数字助理应用)需要至少一些上下文语言理解用于解释口语输入。在这方面,数字助理应用可能具有解释具有特定领域和/或任务的口语输入的经验。例如,当解释与日历事件相关的口语输入时,数字助理应用可以提供准确的结果。然而,在数字助理应用不知道如何处理口语输入的场景中,可以使用后端解决方案(例如,web)来向用户提供结果。可能难以确定针对给定的口语输入何时使用数字助理应用以及何时使用后端解决方案。在一些情况下,可以使用确定性硬编码的规则来确定何时使用数字助理应用以及何时使用后端解决方案来满足用户的请求。制定和实现这些规则以及评估其准确性的成本很高。另外,硬编码的规则对于区域(locale)扩展(例如,解释新的和/或不同的语言)不能很好地缩放。此外,当确定要使用后端解决方案时,将口语输入“按原样”发送到后端解决方案,并且基于所接收的口语输入来提供结果。因此,如社区所公知的,硬编码的规则是“粗粒度”的,并且整体用户体验次优。
已经关于这些和其他一般考虑做出了实施例。此外,尽管已经讨论了相对具体的问题,但是应当理解,实施例不应该限于解决背景技术中标识的具体问题。
发明内容
总之,本公开总体上涉及区分歧义表达。更具体地,本公开涉及用于区分歧义表达以增强用户体验的方法和系统。例如,可以由语音识别组件接收自然语言表达。自然语言表达可以包括文本的单词、术语和短语中的至少一项。可以通过使用上下文信息来创建来自自然语言表达的对话假设集。在一些情况下,对话假设集具有至少两个对话假设。可以为对话假设集生成多个对话响应。可以基于对多个对话响应的分析来对对话假设集评级。可以基于对对话假设集评级来执行动作。
提供本发明内容以便以简化的形式介绍在下面的具体实施方式中进一步描述的概念的选择。本发明内容不旨在标识所要求保护的主题的主要特征或基本特征,也不旨在用于限制所要求保护的主题的范围。
附图说明
参考以下附图描述非限制性和非穷尽性示例。
图1示出了根据示例实施例的在客户端计算设备处实现的用于区分歧义表达的示例性动态系统。
图2示出了根据示例实施例的在服务器计算设备处实现的用于区分歧义表达的示例性动态系统。
图3示出了根据示例实施例的用于区分歧义表达的对话组件的示例性框图。
图4示出了根据示例实施例的用于区分歧义表达的示例性方法。
图5示出了根据示例实施例的用于训练对话组件以区分歧义表达的示例性方法。
图6示出了根据示例实施例的用于区分歧义表达的示例性方法。
图7是示出可以实践本公开的实施例的计算设备的示例物理组件的框图。
图8A和8B是可以实践本公开的实施例的移动计算设备的简化框图。
图9是其中可以实践本公开的实施例的分布式计算系统的简化框图。
图10示出了用于执行本公开的一个或多个实施例的平板计算设备。
具体实施方式
在下面的详细描述中,参考附图,附图形成本公开的一部分并且通过说明示出具体方面或示例。可以组合这些方面,可以使用其他方面,并且可以进行结构改变而不脱离本公开的精神或范围。各方面可以作为方法、系统或装置来实践。因此,各方面可以采取硬件实现、完全软件实现、或组合软件和硬件方面的实现的形式。因此,以下详细描述不应当在限制意义上来理解,并且本公开的范围由所附权利要求及其等同物限定。
本公开总体上涉及使用受监督和无监督的机器学习技术用于区分歧义请求。用于区分歧义请求的现有技术依赖于确定性的硬编码的规则,这些规则在制作和实现方面是昂贵的。例如,可以基于由系统随时间接收的数据(例如,口语输入)在当前系统中编写和实现预定规则,以确定如何对口语输入做出响应。然而,由于与多个领域的自然重叠,使用硬编码的规则来区分歧义请求难以良好的信心进行。此外,使用硬编码的规则来区分歧义请求可能提供次优的用户体验。因此,本文中描述的各方面包括用于动态地区分歧义请求的基于机器学习的技术。这种基于机器学习的技术使得能够确定使用哪个用户体验来最好地对特定用户口语输入(例如,请求)做出响应。例如,可以使用来自各种来源的信息来将歧义请求动态地转换成向用户提供相关结果的查询。基于来自各种来源的信息来将歧义请求动态地转换成向用户提供相关结果的查询可以导致与系统和/或与系统相关联的应用(例如,数字助理应用)的更好的用户体验。此外,区分歧义请求可以减少系统和/或应用必须提供的澄清请求和/或响应的数目。因此,客户端和/或服务器计算设备可以需要较少的计算。
参考图1,示出了用于区分歧义请求的动态系统100的一个方面。在各方面,动态系统100可以在客户端计算设备104上实现。在基本配置中,客户端计算设备104是具有输入元件和输出元件二者的手持式计算机。客户端计算设备104可以是用于实现用于上下文语言理解的动态系统100的任何合适的计算设备。例如,客户端计算设备104可以是以下中的至少一个:移动电话;智能电话;平板计算机;平板电话;智能手表;可穿戴计算机;个人计算机;台式计算机;笔记本计算机等。该列表仅是示例性的,而不应被视为限制。可以使用用于实现用于上下文语言理解的动态系统100的任何合适的客户端计算设备。
在各方面,动态系统100可以包括语音识别组件110、语言理解组件120、对话组件130和后端引擎140。各种组件可以使用硬件、软件、或硬件和软件的组合来实现。动态系统100可以被配置为处理自然语言表达。在这方面,动态系统100可以支持区分歧义请求。在一个示例中,自然语言表达可以包括口语输入(例如,用户查询和/或请求)形式的短语、单词和/或术语。在另一示例中,自然语言表达可以包括文本语言输入(例如,用户查询和/或请求)形式的短语、单词和/或术语。在这方面,自然语言表达可以是歧义的和/或缺少信息。例如,自然语言表达“how about tomorrow(明天怎么样)”在孤立分析时是歧义的。
动态系统100可以被配置为在不同的场景中处理自然语言表达。例如,动态系统100可以在单轮(single-turn)场景和/或多轮(multi-turn)场景中处理自然语言表达。单轮场景可以是在用户和动态系统100之间的会话期间单独处理口语输入/自然语言表达的场景。单轮场景可以指示,仅来自当前被处理的自然语言表达的信息用于区分歧义请求。多轮场景是在用户102和动态系统100之间的会话期间处理多于一个口语输入/自然语言表达的场景。在一些情况下,每个自然语言表达可以被解释为在会话期间的一轮。一轮可以包括自然语言表达和动态系统100的响应/动作。也就是说,第一轮可以包括自然语言表达和动态系统100的响应/动作。在其他方面,多轮场景指示,可以利用来自会话的多个轮的信息来进行预测和/或区分歧义请求。会话可以包括用户和动态系统100的应用(例如,数字助理应用)之间的交谈。会话可以在应用被激活并且用户开始说话时开始,并且在应用被去激活时结束。
如上所述,动态系统100可以包括语音识别组件110、语言理解组件120、对话组件130和后端引擎140。在各方面,语音识别组件110可以包括本领域技术人员已知的标准语音识别技术,诸如“自动语音识别”(ASR)、“计算机语音识别”和“语音到文本”(STT)。在一些情况下,语音识别组件110可以包括本领域技术人员已知的标准文本到语音技术,诸如“文本到语音”(TTS)。本领域技术人员将认识到,语音识别组件110可以包括一种或多种各种不同类型的语音识别和/或文本识别组件。在一些情况下,语音识别组件110被配置为接收自然语言表达并且输出所接收的自然语言表达的多个n-best(n-最优)表示。例如,语音识别组件110可以接收自然语言表达“is the five twenty on time(520准时吗)”,并且输出包括“is the five twenty on time”的第一表示和包括“is BE five twenty on time(BE520准时吗)”的第二表示。在这方面,关于自然语言表达是指例如公共交通服务还是航班“BE520”可能存在歧义。n-best表示可以使用单个ASR、SST、或TTS,或者使用多个ASR、SST或TTS来生成。可以进一步处理自然语言表达的n-best表示,以区分自然语言表达的表示中的歧义,这将在下面详细讨论。
在各方面,语言理解组件120可以包括用于训练目的的标准口语理解模型,诸如支持向量机、条件随机场和/或卷积非循环神经网络。本领域技术人员将认识到,可以通过本文中公开的不同方面来采用各种不同的标准语言理解模型,诸如支持向量机、条件随机场和卷积神经网络。在这方面,语言理解组件120可以被配置为从语音识别组件110接收n-best表示,并且基于从语音识别组件110接收到的n-best表示来进行预测。例如,语言理解组件120可以执行领域和意图预测(例如,使用支持向量机)和槽标注(例如,使用条件随机场)。一方面,领域预测可以包括将自然语言表达分类为语言理解组件120的支持领域。领域通常可以指代已知的主题,诸如地点、提醒、日历、天气、通信等。例如,在自然语言表达“show me driving directions to Portland(请向我示出去往波特兰的驾驶方向)”中,语言理解组件120可以提取特征“Portland(波特兰)”,并且将自然语言表达分类为语言理解组件120支持的领域“Places(地点)”。
一方面,意图预测可以包括经由自然语言表达来确定用户102的意图。例如,在自然语言表达“show me driving directions to Portland”中,语言理解组件120可以确定用户102的意图是意图分类,例如“get_route(获得_路径)”。一方面,槽标注可以包括对自然语言表达执行槽检测。在一种情况下,槽检测可以包括使用来自自然语言表达的语义加载的单词来填充槽类型(例如由语言理解组件120支持的槽类型)。例如,在自然语言表达“from 2pm to 4pm(从下午2点到下午4点)”中,槽标注可以包括使用“2pm(下午2点)”填充槽类型“start_time(开始_时间)”,并使用“4pm(下午4点)”填充槽类型“end_type(结束_时间)”。
如上所述,动态系统100可以在包括单轮和多轮场景的各种场景中处理自然语言表达。在这方面,语言理解组件120可以使用来自当前处理的自然语言表达的信息和来自当前处理的自然语言表达的上下文信息来评估自然语言表达。上下文信息可以包括从会话中的每个轮提取的信息。例如,所提取的信息可以包括从先前轮(例如,来自当前会话的先前的自然语言表达/请求)预测的领域预测、意图预测和槽类型(例如,结果)。在另一种情况下,上下文信息可以包括动态系统100对先前轮的响应。例如,对先前轮的响应可以包括动态系统100如何响应于来自用户的先前请求(例如,动态系统对用户输出/说了什么)、位于客户端计算设备104的显示器上的项目、位于客户端计算设备104的显示器上的文本等。在另一种情况下,上下文信息可以包括客户端上下文。例如,客户端上下文可以包括客户端计算设备104上的联系人列表、客户端计算设备104上的日历、GPS信息(例如,客户端计算设备104的位置)、当前时间(例如,早晨、晚上、在会议中、在锻炼、驾驶等)等。在另一种情况下,上下文信息可以包括知识内容。例如,知识内容可以包括使用所存储的数据来映射来自自然语言表达的特征的知识数据库。作为示例,作为在贝尔维尤的餐馆名称的“John Howie”可以被映射到知识数据库中的餐馆。在另一种情况下,上下文信息包括上述上下文信息的任何组合。
在各方面,语言理解组件120可以使用上述上下文信息来执行领域和意图预测(例如,使用支持向量机)和槽标注(例如,使用条件随机场)。例如,会话的第一轮可以包括自然语言表达“how is the weather tomorrow(明天天气如何)”。在该示例中,语言理解组件120可以将领域分类预测为“Weather(天气)”。同一会话的第二轮可以包括自然语言表达“how about this weekend(这周末怎么样)”。在该示例中,语言理解组件120可以将领域分类预测为“Weather(天气)”。例如,语言理解组件120可以评估第一轮“how is the weathertomorrow”以及第一轮预测的领域分类“Weather”,以预测第二轮“how about thisweekend”的领域分类。在这方面,基于同一会话的第一轮是关于天气的请求并且具有“Weather”领域分类,语言理解组件120可以预测表达“how about this weekend”与第一表达“how is the weather tomorrow”相关,并且因此将该领域分类为“Weather”。
在另一示例中,会话的第一轮可以包括自然语言表达“show me drivingdirections to Portland”。在该示例中,语言理解组件120可以将领域分类预测为“Places”,并且将用户的意图分类预测为“get_route”。同一会话的第二轮可以包括自然语言表达“how about Vancouver(温哥华怎么样)”。在该示例中,语言理解组件120可以将领域分类预测为“Places”,并且将用户的意图分类预测为“get_route”。如图所示,语言理解组件120使用来自第一会话中的第一轮的上下文信息来从第一会话的第二轮“how aboutVancouver”将用户102的意图分类预测为“get_route”。
在又一示例中,会话的第一轮可以包括自然语言表达“create a meeting withJason(与Jason创建会议)”。在该示例中,语言理解组件120可以将领域分类预测为“Calendar(日历)”,并且将用户102的意图分类预测为“create_meeting(创建_会议)”。同一会话的第二轮可以包括自然语言表达“from 2pm to 4pm”。在该示例中,语言理解组件120可以将领域分类预测为“Calendar”,并且将槽类型预测为“start_time=2pm”和“end_time=4pm”。如图所示,语言理解组件120使用来自第一会话中的第一轮的上下文信息来将第一会话中的第二轮“from 2pm to 4pm”的槽类型预测为“start_time=2pm”和“end_time=4pm”。
在各方面,由语言理解组件120确定的预测可以被发送到对话组件130用于处理。在这方面,对话组件130可以被配置为为每个自然语言表达创建对话假设集,并且确定对于每个自然语言表达要采取的响应/动作,这将在下面相对于图3来详细描述。对话组件130可以接收信息的组合用于处理。例如,对话组件130可以接收输入上下文(例如,上下文信息)、由动态系统100接收的自然语言表达、以及由语言理解组件120进行的预测。输入上下文可以包括客户端信息(例如,客户端的设备类型)以及上面讨论的上下文信息。
当对话组件130接收到信息的组合用于处理时,对话组件130可以创建对话假设集。对话假设集可以包括基于自然语言表达的至少两个对话假设。在一些情况下,对话假设集可以包括任何数目的对话假设。在一种情况下,可以基于从语言理解组件120接收到的预测来创建对话假设。例如,语言理解组件120可以预测自然语言表达“create a meetingwith Jason”是与Jason创建会议的请求并且被分类在“Calendar”领域中。因此,对话组件130可以创建类似的假设,并且将自然语言表达“create a meeting with Jason”发送到日历领域组件用于处理。在另一种情况下,可以基于从动态系统100中的其他组件接收的信息(例如,上下文信息)的组合来创建对话假设。例如,语言理解组件120可以不处理自然语言表达“how did my football team do yesterday(我的足球队昨天做得如何)”。因此,对话组件130可以创建类似的假设,并且将自然语言表达“how did my football team doyesterday”发送到web领域组件用于处理。web领域组件可以利用信息的组合来创建web领域假设集。web领域假设集可以包括使用自然语言表达和信息的组合创建的多个查询,使得多个查询中的每个查询都包括不同的表达,这将在以下在图3中详细描述。
在各方面,对话组件130可以确定对于每个自然语言表达要采取的响应/动作。在这方面,对话组件130可以通过分析响应于使用假设执行查询而返回的响应来对对话假设集中的假设评级,这将相对于图3详细描述。查询可以通过使用后端引擎140来执行。后端引擎140可以包括适合于接收和处理文本和/或关键字自然语言表达/查询的任何后端引擎。在一个示例中,后端引擎140可以包括搜索引擎,诸如Bing、Google、Yahoo等。在另一示例中,后端引擎140可以包括领域特定的搜索引擎,诸如地点、提醒、日历、天气、通信等。在一种情况下,后端引擎140可以位于对话组件130处。在其他情况下,后端引擎140可以位于与对话组件130通信的服务器计算设备处。在其他情况下,以任何组合,后端引擎140的部分可以位于对话组件130处,并且后端引擎140的部分可以位于服务器计算设备处。
图2示出了根据本文中公开的一个或多个方面的用于区分歧义请求的动态系统200。在各方面,动态系统200可以在服务器计算设备204上实现。服务器计算设备204可以通过网络205向以及从客户端计算设备104提供数据。一方面,网络205是分布式计算网络,诸如因特网。在各方面,该动态系统200可以在诸如多个服务器计算设备204的多于一个服务器计算设备204上实现。如图2所示,动态系统200可以包括语音识别组件210、语言理解组件220、对话组件230和后端引擎240。动态系统200可以被配置为处理自然语言表达。在这方面,动态系统200可以区分歧义请求。语音识别组件210、语言理解组件220、对话组件230和后端引擎240可以被配置为类似于以上相对于图1描述的语音识别组件110、语言理解组件120、对话组件130和后端引擎140。在这方面,动态系统200可以包括在以上方面相对于图1的动态系统100描述的所有功能。
如上所述,服务器计算设备204可以通过网络205向以及从客户端计算设备104提供数据。可以通过适于传输数据的任何网络来传送数据。在一些方面,网络205是诸如因特网的计算机网络。在这方面,网络205可以包括局域网(LAN)、广域网(WAN)、因特网、无线和有线传输介质。本领域技术人员将理解,可以与本文中公开的各方面一起使用其他类型的网络。在这方面,可以在客户端计算设备104处接收自然语言表达,并且通过网络205传输用于由统计系统200在服务器计算设备204处处理。应当理解,动态系统(例如,动态系统100和动态系统200)组件(例如,语音识别组件110/210、语言理解组件120/220、对话组件130/230和后端引擎140/240)可以以任意组合位于客户端计算设备104、服务器计算设备204、和/或客户端计算设备104和服务器计算设备204二者处。例如,一方面,在一个配置中,客户端计算设备104可以包括语音识别组件110和语言理解组件120,并且服务器计算设备204可以包括对话组件230和后端引擎240。这仅是示例性的,而不应当被视为限制。可以利用在客户端计算设备104和服务器计算设备204处的动态系统组件的任何合适的组合用于区分歧义请求。
图3示出了根据本公开的一个或多个方面的用于区分歧义请求的对话组件130/230的示例性框图。如上所述,例如,对话组件130可以被配置为为每个自然语言表达创建对话假设集,并且确定针对每个自然语言表达要采取的响应/动作。在这方面,如图3所示,对话组件130/230可以包括假设准备组件310、浅层(shallow)回答组件320、回退查询组件330、领域组件340A-340N、假设和评级选择组件(HRS)350、以及后端引擎360。如上所述,对话组件130可以接收信息的组合用于处理。例如,对话组件130可以接收输入上下文、由动态系统100接收的自然语言表达、以及由语言理解组件120进行的预测(例如,如上所述的上下文信息)。输入上下文可以包括客户端信息(例如,客户端的设备类型)以及上面讨论的上下文信息。在这方面,假设准备组件310、浅层回答组件320、回退查询组件330、领域组件340A-340N、以及假设和评级选择组件(HRS)350可以被配置为接收信息的组合用于处理。
一方面,假设准备组件310被配置为基于所接收的信息来创建假设集。如上所述,对话假设集可以包括基于自然语言表达的至少两个对话假设。在一些情况下,对话假设集可以包括任何数目的对话假设。在一种情况下,可以基于从语言理解组件120接收到的预测来创建对话假设。例如,语言理解组件120可以预测自然语言表达“create a meeting withJason”是与Jason创建会议的请求并且被分类在“Calendar”领域中。因此,假设准备组件310可以创建类似的假设,并且将自然语言表达“create a meeting with Jason”发送到日历领域组件用于处理。在另一种情况下,可以基于从动态系统100中的其他组件接收的信息的组合来创建对话假设。例如,语言理解组件120可以不处理自然语言表达“how did myfootball team do yesterday”。因此,假设准备组件310可以创建类似的假设,并且将自然语言表达“how did my football team do yesterday”发送到web领域组件用于处理。
在语言理解组件120不处理自然语言表达并且将自然语言表达发送到web领域组件用于处理的示例中,web领域组件可以创建要发送到后端引擎360的回退查询。例如,会话的第一轮可以包括会话可以包括的自然语言表达“find restaurants near me(寻找在我附近的餐馆)”。自然语言表达“find restaurants near me”可以由地点领域组件来处理。会话的第二轮可议包括自然语言表达“show the Italian ones only(仅示出意大利的那些)”。自然语言表达“show the Italian ones only”可以由地点领域组件处理。会话的第三轮可以包括自然语言表达“which ones are kids friendly(哪些是对孩子友好的)”。地点领域组件可能无法处理自然语言表达“which ones are kids friendly”。因此,对话组件130/230可以创建要由后端引擎360处理的回退查询。对话组件130/230可以创建支持由后端引擎360生成的改进的搜索结果的查询。例如,对话组件130/230可以通过连结会话的所有先前和当前轮来创建第一查询。使用上述示例,第一查询可以是“find restaurantsnear me show the Italian ones which ones are kids friendly(寻找在我附近的餐馆仅示出意大利的那些哪些是对孩子友好的)”。在另一示例中,对话组件130/230可以通过连结从会话的先前和当前轮执行的停止词删除分析来创建第二查询。使用与上述相同的示例,第二查询可以是“restaurants near me show Italian ones only kids friendly(在我附近的餐馆示出仅对孩子友好的意大利的那些)”。在又一示例中,对话组件130/230可以通过连结从会话的先前和当前轮提取的语义实体来创建第三查询。在一种情况下,语义实体可以是自然语言表达的任何部分、自然语言表达的分类、和/或来自处理被确定为有意义的自然语言表达的结果。使用与上述相同的示例,第三查询可以是“restaurant BellevueWA Italian Food Family(餐馆华盛顿州贝尔维尤意大利食物家庭)”。在这方面,当对话组件130/230使用后端引擎360执行搜索时,除了“按原样的”自然创建语言表达,创建查询以促进更多相关的结果被返回。
一方面,领域组件340A-340N可以包括由数字助理应用处理的领域和web领域。由数字助理应用处理的领域可以包括地点、提醒、日历、天气、通信等。例如,领域组件340A可以是日历领域组件,并且可以处理日历领域假设。在另一示例中,领域组件340B可以是天气领域组件,并且可以处理天气领域假设。在又一示例中,领域组件340N可以是web领域组件,并且可以处理web领域假设。应当理解,领域组件340A-340N可以是任何类型的领域组件,并且对话组件130/230可以包括任何数目的领域组件340A-340N。在领域组件340A是日历领域组件的示例中,当领域组件340A从假设准备组件310接收到日历领域假设时,领域组件340A可以基于该假设安排会议。例如,如果日历领域假设是“schedule a meeting with Jasonfrom 2pm to 4pm tomorrow(从明天下午2点到4点安排与Jason的会议)”,则领域组件340A可以将该会议添加到从明天下午2点到下午4点的用户的日历。
在另一示例中,当假设是web领域假设时,web领域组件340N可以接收web领域假设和来自不同来源的信息的组合。在这方面,web领域组件340N可以使用来自不同来源的信息的组合来区分web领域假设中的歧义信息。在一个示例中,web领域假设可以是“who do theBroncos play at that time(野马队那时与谁比赛)”。代替web领域组件340N使用web领域假设/查询“who do the Broncos play at that time”执行搜索,web领域组件340N可以使用接收到的信息的组合来创建所创建的web领域假设的web领域假设集。在一个示例中,web领域组件340N可以使用来自当前会话的先前轮来创建web领域假设集。例如,当前会话的第一轮可以是“what is the weather like tomorrow(明天天气如何)”。在这方面,web领域组件340N可以使用第一轮和所确定的槽类型“time(时间)=tomorrow(明天)”来创建第一创建的web领域假设,诸如“who do the Broncos play tomorrow(野马队明天与谁比赛)”。如图所示,web领域组件340N用所确定的槽类型“time=tomorrow”来替换歧义短语“atthat time(那时)”。在另一示例中,web领域组件340N可以将当前会话的第一轮与web领域假设组合以创建第二创建的web领域假设“what is the weather like tomorrow who dothe Broncos play tomorrow(明天天气如何野马队那时与谁比赛)”。在又一示例中,web领域组件340N可以仅将来自第一轮和当前web领域假设的语义实体组合以创建第三创建的web领域假设“weather tomorrow Broncos(天气明天野马队)”。
在一些方面,web领域假设集可以被发送到浅层回答组件320。浅层回答组件320可以为web领域假设集中的每个web领域假设提供回答。例如,每个web领域假设可以被发送到浅层回答组件320,以使用web领域假设来执行查询。在一些情况下,针对每个web领域假设的回答可以包括针对频繁接收的查询类型的专门结果。例如,频繁查询类型可以包括有关天气的查询。在该示例中,回答可以包括有关天气的专门结果。这样,当浅层回答组件320使用web领域假设执行查询时,由浅层回答组件320返回的回答可以基于专门的结果。例如,如果web领域假设包括频繁查询的术语/实体,则返回的回答可以包括专门的结果。在另一示例中,如果web领域假设不包括频繁查询的术语/实体,则返回的回答可以不包括专门的结果(例如,返回的结果可能不是有用的)。在这方面,来自浅层回答组件320的回答可以指示web领域假设集中的哪些web领域假设返回最佳/最相关的结果。
在一种情况下,针对每个web领域假设的结果可以由人来审查以确定哪个结果最佳。在这方面,HRS组件350可以学习来自领域假设的哪些特征与最相关的搜索结果相关。例如,为领域假设提取的特征可以包括置信度得分、返回结果(例如,如果有的话)的数目、是否存在专门的结果等。因此,当人确定针对领域假设集中的领域假设的最相关的结果时,HRS组件350可以学习如何使用与产生最相关的结果的领域假设相关联的特征。
在另一种情况下,可以将记录的查询及其对应的搜索结果与每个web领域假设的结果相比较。例如,使用上述示例,会话的第一轮可以是“what is the weather liketomorrow”。会话的第二轮可以是“Who do the Broncos play against at that time(野马队那时与谁比赛)”。对话组件130可能无法处理第二轮“Who do the Broncos playagainst at that time”,并且可以将该查询发送到后端引擎360。后端引擎360可能无法区分歧义“at that time”。在这方面,用户可能不得不重新查询并且说出如“Who do theBroncos play against tomorrow(野马队明天与谁比赛)”的内容。对话组件130可以将该查询发送到后端引擎360并且获得相关的结果。可以记录这些自然语言表达的会话及其对应的查询结果。因此,HRS组件350可以分析记录的数据,以确定会话的两个轮何时非常相似以及会话的轮何时是会话的重新查询。例如,HRS组件350可以标识会话的两个轮之间的词汇相似性。在另一示例中,HRS组件350可以标识第二轮的结果的数目和/或质量优于第一轮。更相关的结果与词汇相似性一起可以指示轮是重新查询。因此,HRS组件350可以确定应该从先前轮延续什么信息/特征到当前轮以获得相关的搜索结果。也就是说,HRS组件350可以学习什么特征产生与为会话的重新查询产生的结果等同的结果。因此,机器学习技术被用于确定从先前轮延续什么信息到当前轮用于提供相关的搜索结果。在一些情况下,机器学习技术可以包括人工神经网络、贝叶斯分类器和/或遗传推导算法,其已经通过使用注释的训练集的训练来开发。
在各方面,HRS组件350可以包括评级技术,诸如“N-best”列表、优先级队列、高斯分布、和/或直方图(例如,标识相应对话假设的假设得分的趋势的直方图)。如上所述,HRS组件350可以从对话假设集中的对话假设中提取特征并且对特征进行评分和评级。在一种情况下,从对话假设中提取的特征可以至少包括针对预测的领域分类的置信度得分、针对预测的意图分类的置信度得分、和针对预测的槽类型的槽计数。在另一种情况下,从对话假设中提取的特征可以包括与对话假设相关联的特征。例如,所提取的特征可以包括返回的web结果的数目、返回的深度链接的数目、触发的回答的数目、和抑制的回答的数目。在又一种情况下,从对话假设中提取的特征可以包括来自自然语言表达的单词计数、来自自然语言表达的文本、以及来自会话中的多个轮的组合文本。应当理解,可以从对话假设中提取本文中描述的特征的任何组合。
在一种情况下,可以使用基于对话假设之间的条件概率分布的区分方法来计算得分并且对得分评级。在另一种情况下,可以使用涉及潜在对话假设的联合概率分布的生成方法来计算得分并且对得分评级。如上所述,HRS组件350可以接收来自领域组件340A-340N的对话假设、来自浅层回答组件320的浅层回答、来自不同来源的信息的组合、以及来自后端引擎360的结果。在这方面,通过分析针对每个对话假设接收到的结果,对从对话假设中提取的特征进行评分和评级。例如,如果确定第一对话假设返回比第二对话假设更相关的结果,则与来自第二对话假设的特征相比,从第一对话假设中提取的特征将被评分并且评级较高。
在一些情况下,HRS组件350可以计算类似的针对两个对话假设的得分。因此,关于哪个对话假设应该被评级最高可能存在歧义。在存在歧义的情况下,可以使用回退查询来区分歧义。例如,回退查询组件330可以包括可以用于区分歧义的一组回退查询。例如,回退查询可以包括诸如“sorry,I didn’t hear you well(抱歉,我没听到你的声音)”、“sorry,I don’t understand what you mean(抱歉,我不明白你的意思)”等查询。在其他情况下,如果关于哪个对话假设应该被评级最高存在歧义,则HRS组件350可以决定选择具有最高得分的对话假设,即使该差异非常小。在其他情况下,当关于哪个对话假设应该被评级最高存在歧义时,HRS组件350可以向客户端计算设备104的用户发送消歧问题,诸如“I’m notsure what you want to do,do you want to look up the opening hours of 5GuysBurger restaurant?(我不确定你想要做什么,你想要查看5Guys Burger餐馆的开放时间?)”。如果用户回答是,则HRS组件350可以将与回答相关联的对话假设评级为最高。在用户回答否时,HRS组件350可以向后端引擎360发送通用web搜索查询。在另一种情况下,当关于哪个对话假设应该被评级最高存在歧义时,HRS组件350可以询问用户以消除两个对话假设之间的歧义。例如,HRS组件350可以向客户端计算设备104的用户发送问题,诸如“pleasetell me what’s closer to what you mean:“weather Broncos tomorrow,”or“who dothe Broncos play at that time tomorrow”(请告诉我什么更接近你的意思:“天气野马队明天”还是“野马队明天那时与谁比赛”)”。
图4示出了根据本公开的一个或多个实施例的用于区分歧义请求的方法。方法400开始于操作402,在操作402接收自然语言表达。例如,自然语言表达可以由动态系统接收用于处理以确定例如数字助理应用的用户的意图和/或最终目标。在一个示例中,自然语言表达可以包括口语输入(例如,用户查询和/或请求)形式的短语、单词和/或术语。在这方面,自然语言表达可能是歧义的和/或缺少信息。例如,自然语言表达“how about tomorrow”在孤立分析时是歧义的。
当在动态系统处接收到自然语言表达之后,流程进行到操作404,在操作404使用上下文信息来创建对话假设集。在一种情况下,上下文信息可以包括从会话中的每个轮提取的信息。例如,所提取的信息可以包括从先前轮(例如,来自当前会话的先前的自然语言表达/请求)预测的领域预测、意图预测和槽类型(例如,结果)。在另一种情况下,上下文信息可以包括由动态系统对先前轮的响应。例如,对先前轮的响应可以包括动态系统如何响应于来自用户的先前请求(例如,动态系统对用户输出/说了什么)、位于客户端计算设备的显示器上的项目、位于客户端计算设备的显示器上的文本等。在另一种情况下,上下文信息可以包括客户端上下文。例如,客户端上下文可以包括客户端计算设备上的联系人列表、客户端计算设备上的日历、GPS信息(例如,客户端计算设备的位置)、当前时间(例如,早晨、晚上、在会议中、在锻炼、驾驶等)等。在另一种情况下,上下文信息可以包括知识内容。例如,知识内容可以包括使用所存储的数据来映射来自自然语言表达的特征的知识数据库。作为示例,“John Howie”可以被映射到知识数据库中的餐馆。在这方面,可以为所接收的自然语言表达生成多个对话假设,使得每个对话假设由包括来自上下文信息的各种特征的不同表达组成。
在使用上下文信息创建对话假设集之后,流程进行到操作406,在操作406为对话假设集生成多个对话响应。例如,对话假设集中的每个对话假设可以具有对应的一组查询结果。在一种情况下,可以通过将对话假设发送到web后端引擎来生成多个对话响应。在另一种情况下,多个对话响应可以由领域特定的组件生成。例如,对话假设可以包括指示天气领域的特征。在这种情况下,可以将对话假设发送到天气领域后端引擎。在另一种情况下,多个对话响应可以由领域特定的组件和web后端引擎生成。在这方面,多个响应可以包括来自领域特定的组件和web后端引擎的结果。
在为对话假设集生成多个对话响应之后,流程进行到操作408,在操作408对对话假设集评级。例如,可以从对话假设集中的对话假设中提取特征。可以计算针对所提取的特征的得分。在这方面,可以基于计算出的得分对所提取的特征评级。进而,可以确定对话假设集中的哪个对话假设返回最相关的结果。在其他情况下,可以确定用于最高评级的对话假设的哪个后端引擎是用于生成结果的最佳后端引擎。在一种情况下,通过分析针对每个对话假设接收到的结果来对从对话假设中提取的特征进行评分和评级。例如,如果确定第一对话假设返回比第二对话假设更相关的结果,则与来自第二对话假设的特征相比,从第一对话假设中提取的特征将被评分和评级较高。
在对话假设集被评级之后,流程进行到操作410,在操作410执行基于评级的动作。在一种情况下,所执行的动作可以包括使用评级最高的对话假设来向web后端引擎查询结果并且将结果发送给客户端计算设备的用户。在一些示例中,客户端计算设备的用户可以标识用于获取搜索结果的查询。这样,用户可以看到用于获取搜索结果的查询与用户的原始自然语言表达/请求不同,并且可以包括从同一会话中的用户的先前请求中提取的特征。在其他情况下,关于哪个对话假设应该被评级最高可能有歧义。在这种情况下,所执行的动作可以包括使用回退查询。例如,回退查询可以包括诸如“sorry,I didn’t hear youwell”、“sorry,I don’t understand what you mean”等查询。在其他情况下,所执行的动作可以包括向后端引擎发送通用(generic)web搜索查询。
图5示出了根据本公开的一个或多个实施例的用于训练对话组件以区分歧义请求的方法。方法500开始于操作502,在操作502使用上下文信息来创建对话假设集。在一种情况下,上下文信息可以包括从会话中的每个轮提取的信息。例如,所提取的信息可以包括从先前轮(例如,来自当前会话的先前的自然语言表达/请求)预测的领域预测、意图预测和槽类型(例如,结果)。在另一种情况下,上下文信息可以包括由动态系统对先前轮的响应。例如,对先前轮的响应可以包括动态系统如何响应于来自用户的先前请求(例如,动态系统对用户输出/说了什么)、位于客户端计算设备的显示器上的项目、位于客户端计算设备的显示器上的文本等。在另一种情况下,上下文信息可以包括客户端上下文。例如,客户端上下文可以包括客户端计算设备上的联系人列表、客户端计算设备上的日历、GPS信息(例如,客户端计算设备的位置)、当前时间(例如,早晨、晚上、在会议中、在锻炼、驾驶等)等。在另一种情况下,上下文信息可以包括知识内容。例如,知识内容可以包括使用所存储的数据来映射来自自然语言表达的特征的知识数据库。作为示例,“John Howie”可以被映射到知识数据库中的餐馆。在这方面,可以为所接收的自然语言表达生成多个对话假设,使得每个对话假设由包括来自上下文信息的各种特征的不同表达组成。
在使用上下文信息创建对话假设集之后,流程进行到操作504,在操作504为对话假设集生成多个对话响应。例如,对话假设集中的每个对话假设可以具有对应的一组查询结果。在一种情况下,可以通过将对话假设发送到web后端引擎来生成多个对话响应。在另一种情况下,多个对话响应可以由领域特定的组件生成。例如,对话假设可以包括指示天气领域的特征。在这种情况下,可以将对话假设发送到天气领域后端引擎。在另一种情况下,多个对话响应可以由领域特定的组件和web后端引擎生成。在这方面,多个响应可以包括来自领域特定的组件和web后端引擎的结果。
在生成多个对话响应之后,流程进行到操作506,在操作506将多个对话响应与多个记录的对话响应相比较。在一种情况下,记录的响应可以包括从自然语言表达生成的响应(而不是从所创建的对话假设生成的响应)。例如,会话的第一轮可以包括自然语言表达“what is the weather like for tomorrow(明天天气如何)”,会话的第二轮可以包括自然语言表达“who do the Broncos play against at that time”。在这种情况下,用户可能需要重新查询以获得相关的结果。这样,会话的第三轮可以包括自然语言表达“who dothe Broncos play against tomorrow”。来自会话的所有数据都可以被记录。例如,可以会记录第一轮、第二轮和第三轮及其对应的响应。这样,在一个示例中,可以将来自用户必须重新查询的第三轮的结果与对话假设的结果相比较,以确定结果之间的相似性。
在操作508,确定多个对话响应中的哪些与记录的对话响应相匹配。当确定对话响应与记录的响应匹配时,流程进行到操作510,在操作510标记与匹配记录的响应的对话响应相对应的对话假设。例如,标记可以向对话组件指示从先前轮延续的用以创建对话假设的特征是要延续的良好特征。也就是说,延续这些功能可以支持生成相关响应。在一个示例中,标记可以是“真实”标记。在一些情况下,可以标记多个对话假设。例如,可以有多个对话响应与记录的响应和/或多个记录的对话响应相匹配。在这种情况下,可以标记与匹配记录的对话响应和/或多个记录的对话响应的对话响应相对应的对话假设。在标记与匹配记录的响应的对话响应相对应的对话假设之后,可以存储对话假设(例如,操作512)。当确定对话响应与记录的响应不匹配时,流程进行到操作512,在操作512存储与不匹配记录的响应的对话响应相对应的对话假设。
图6示出了根据本公开的一个或多个方面的用于区分歧义请求的示例性方法。方法600开始于操作602,在操作602接收自然语言表达。例如,自然语言表达可以由动态系统接收用于处理以确定例如数字助理应用的用户的意图和/或最终目标。在一个示例中,自然语言表达可以包括口语输入(例如,用户查询和/或请求)形式的短语、单词和/或术语。在这方面,自然语言表达可能是歧义的和/或缺少信息。例如,自然语言表达“how abouttomorrow”在孤立分析时是歧义的。
当在动态系统处接收到自然语言表达之后,流程进行到操作604,在操作604使用上下文信息来创建对话假设集。在一种情况下,上下文信息可以包括从会话中的每个轮提取的信息。例如,所提取的信息可以包括从先前轮(例如,来自当前会话的先前的自然语言表达/请求)预测的领域预测、意图预测和槽类型(例如,结果)。在另一种情况下,上下文信息可以包括由动态系统对先前轮的响应。例如,对先前轮的响应可以包括动态系统如何响应于来自用户的先前请求(例如,动态系统对用户输出/说了什么)、位于客户端计算设备的显示器上的项目、位于客户端计算设备的显示器上的文本等。在另一种情况下,上下文信息可以包括客户端上下文。例如,客户端上下文可以包括客户端计算设备上的联系人列表、客户端计算设备上的日历、GPS信息(例如,客户端计算设备的位置)、当前时间(例如,早晨、晚上、在会议中,在锻炼、驾驶等)等。在另一种情况下,上下文信息可以包括知识内容。例如,知识内容可以包括使用所存储的数据来映射来自自然语言表达的特征的知识数据库。作为示例,“John Howie”可以被映射到知识数据库中的餐馆。在这方面,可以为所接收的自然语言表达生成多个对话假设,使得每个对话假设由包括来自上下文信息的各种特征的不同表达组成。
在使用上下文信息创建对话假设集之后,流程进行到操作606,在操作606为对话假设集生成多个对话响应。例如,对话假设集中的每个对话假设可以具有对应的一组查询结果。在一种情况下,可以通过将对话假设发送到web后端引擎来生成多个对话响应。在另一种情况下,多个对话响应可以由领域特定的组件生成。例如,对话假设可以包括指示天气领域的特征。在这种情况下,可以将对话假设发送到天气领域后端引擎。在另一种情况下,多个对话响应可以由领域特定的组件和web后端引擎生成。在这方面,多个响应可以包括来自领域特定的组件和web后端引擎的结果。
在为对话假设集生成多个对话响应之后,流程进行到操作608,在操作608对对话假设集评级。例如,可以从对话假设集中的对话假设中提取特征。可以计算针对所提取的特征的得分。在这方面,可以基于计算出的得分对所提取的特征评级。进而,可以确定对话假设集中的哪个对话假设返回最相关的结果。在其他情况下,可以确定用于最高评级的对话假设的哪个后端引擎是用于生成结果的最佳后端引擎。在一种情况下,通过分析针对每个对话假设接收到的结果来对从对话假设中提取的特征进行评分和评级。例如,如果确定第一对话假设返回比第二对话假设更相关的结果,则与来自第二对话假设的特征相比,从第一对话假设中提取的特征将被评分和评级较高。
在操作610,确定对话假设集的评级是否歧义。例如,两个或更多个对话假设可以具有相似的得分,使得关于具有最高得分的对话假设存在歧义。当确定对话假设集的评级歧义时,流程进行到操作612,在操作612使用回退查询。例如,回退查询可以包括诸如“sorry,I didn’t hear you well”、“sorry,I don’t understand what you mean”等查询。当确定对话假设集的评级不歧义时,流程进行到操作614,在操作614基于评级来执行动作。例如,所执行的动作可以包括使用评级最高的对话假设来向web后端引擎查询结果并且将结果发送给客户端计算设备的用户。在另一示例中,所执行的动作可以包括向后端引擎发送通用web搜索查询。
图7-10和相关联的描述提供了可以在其中实践本公开的各方面的各种操作环境的讨论。然而,关于图7-10示出和讨论的设备和系统用于示例的目的,而不限制可以用于实践本文中描述的本公开的实施例的大量计算设备配置。
图7是示出可以实践本公开的各方面的计算设备700的物理组件(例如,硬件)的框图。下面描述的计算设备组件可以具有用于例如客户端和/或计算机的数字助理应用713的计算机可执行指令、用于例如客户端的上下文语言理解模块711的可执行指令,其可以被执行以使用本文中公开的方法400至600。在基本配置中,计算设备700可以包括至少一个处理单元702和系统存储器704。取决于计算设备的配置和类型,系统存储器704可以包括但不限于易失性存储装置(例如,随机存取存储器)、非易失性存储装置(例如,只读存储器)、闪速存储器、或这样的存储器的任何组合。系统存储器704可以包括操作系统705、以及适于运行软件应用720的一个或多个程序模块706,诸如关于图1-3的区分歧义请求应用以及具体地数字助理应用713或对话模块711。例如,操作系统705可以适用于控制计算设备700的操作。此外,本公开的实施例可以结合图形库、其他操作系统、或任何其他应用程序来实践,并且不限于任何特定的应用或系统。该基本配置在图7中通过虚线708内的这些组件来示出。计算设备700可以具有附加的特征或功能。例如,计算设备700还可以包括附加数据存储设备(可移除和/或不可移除),例如磁盘、光盘或磁带。这样的附加存储装置在图7中通过可移除存储设备709和不可移除存储设备710来示出。
如上所述,可以将多个程序模块和数据文件存储在系统存储器704中。当在处理单元702上执行时,程序模块706(例如,对话模块711或数字助理应用713)可以执行各种过程,包括但不限于如本文中描述的各方面。可以根据本公开的各方面,并且具体地针对上下文语言理解来使用的其他程序模块可以包括单轮模型、多轮模型、组合模型、最终模型、和/或计算机辅助应用程序等。
此外,本公开的实施例可以在包括分立电子元件的电路、包含逻辑门的封装或集成电子芯片、利用微处理器的电路中、或者在包含电子元件或微处理器的单个芯片上实践。例如,可以经由片上系统(SOC)来实践本公开的实施例,其中图7所示的组件中的每个或多个可以集成为单个集成电路。这样的SOC设备可以包括一个或多个处理单元、图形单元、通信单元、系统虚拟化单元和各种应用功能,所有这些都作为单个集成电路集成(或“烧录”)到芯片基板上。当经由SOC操作时,本文中描述的关于客户端切换协议的能力的功能可以经由与单个集成电路(芯片)上的计算设备600的其他组件集成的专用逻辑来操作。本公开的实施例也可以使用能够执行诸如AND(与)、OR(或)和NOT(非)的逻辑运算的其他技术(包括但不限于机械、光学、流体和量子技术)来实践。此外,本公开的实施例可以在通用计算机内或者在任何其它电路或系统中实践。
计算设备700还可以具有一个或多个输入设备712,诸如键盘、鼠标、笔、声音或语音输入设备、触摸或滑动输入设备等。还可以包括一个或多个输出设备714,诸如显示器、扬声器、打印机等。上述设备是示例,并且可以使用其他设备。计算设备700可以包括允许与其他计算设备718的通信的一个或多个通信连接716。合适的通信连接716的示例包括但不限于RF传送器、接收器和/或收发器电路;通用串行总线(USB)、并行和/或串行端口。
本文中使用的术语计算机可读介质可以包括计算机存储介质。计算机存储介质可以包括以用于存储信息(诸如计算机可读指令、数据结构或程序模块)的任何方法或技术实现的易失性和非易失性、可移除和不可移除介质。系统存储器704、可移除存储设备709和不可移除存储设备710都是计算机存储介质示例(例如,存储器存储装置)。计算机存储介质可以包括RAM、ROM、电可擦除只读存储器(EEPROM)、闪速存储器或其他存储器技术、CD-ROM、数字通用盘(DVD)或其他光存储装置、磁带盒、磁带、磁盘存储装置或其他磁存储设备、或者可以用于存储信息并且可以由计算设备700访问的任何其它制品。任何这样的计算机存储介质可以是计算设备700的一部分。计算机存储介质不包括载波或其他传播或调制数据信号。
通信介质可以由计算机可读指令、数据结构、程序模块、或调制数据信号中的其他数据(诸如载波或其他传输机制)来实现,并且包括任何信息传递介质。术语“调制数据信号”可以描述其一个或多个特征以使得能够在信号中对信息进行编码的方式被设置或改变的信号。作为示例而非限制,通信介质可以包括诸如有线网络或直接有线连接的有线介质、以及诸如声学、射频(RF)、红外和其它无线介质的无线介质。
图8A和8B示出了可以实践本公开的实施例的移动计算设备800,例如移动电话、智能电话、可穿戴计算机(诸如智能手表)、平板计算机、膝上型计算机等。在一些方面,客户端可以是移动计算设备。参考图8A,示出了用于实现这些方面的移动计算设备800的一个方面。在基本配置中,移动计算设备800是具有输入元件和输出元件二者的手持式计算机。移动计算设备800通常包括显示器805和允许用户将信息输入到移动计算设备800中的一个或多个输入按钮810。移动计算设备800的显示器805还可以用作输入设备(例如,触摸屏显示)。如果被包括,则可选的附带(side)输入元件815允许进一步的用户输入。附带输入元件815可以是旋转开关、按钮或任何其它类型的手动输入元件。在备选方面,移动计算设备800可以包含更多或更少的输入元件。例如,在一些实施例中,显示器805可以不是触摸屏。在另一备选实施例中,移动计算设备800是便携式电话系统,诸如蜂窝电话。移动计算设备800还可以包括可选的小键盘835。可选的小键盘835可以是理键盘或在触摸屏显示器上生成的物理小键盘或“软件”小键盘。在各种实施例中,输出元件包括用于示出图形用户界面(GUI)的显示器805、视觉指示器820(例如,发光二极管)、和/或音频换能器825(例如,扬声器)。在一些方面,移动计算设备800包括用于向用户提供触觉反馈的振动换能器。在另一方面,移动计算设备800包括输入和/或输出端口,诸如音频输入(例如,麦克风插孔)、音频输出(例如,耳机插孔)和视频输出(例如,HDMI端口),用于向外部设备发送信号或从外部设备接收信号。
图8B是示出移动计算设备的一个方面的架构的框图。也就是说,移动计算设备800可以包括用以实现一些方面的系统(例如,架构)802。在一个实施例中,系统802被实现为能够运行一个或多个应用(例如浏览器、电子邮件、日历、联系人管理器、消息客户端、游戏和媒体客户端/播放器)的“智能电话”。在一些方面,系统802被集成为计算设备,诸如集成的个人数字助理(PDA)和无线电话。
一个或多个应用程序866可以被加载到存储器862中并且在操作系统864上或与操作系统864相关联地运行。应用程序的示例包括电话拨号程序、电子邮件程序、个人信息管理(PIM)程序、文字处理程序、电子表格程序、因特网浏览器程序、消息程序等。系统802还包括在存储器862内的非易失性存储区域868。非易失性存储区域868可以用于存储在系统802断电的情况下不应该丢失的持久信息。应用程序866可以在非易失性存储区域868中使用和存储信息,诸如电子邮件或由电子邮件应用使用的其他消息等。同步应用(未示出)也驻留在系统802上,并且被编程为与驻留在主机计算机上的对应的同步应用交互,以保持存储在非易失性存储区域868中的信息与存储在主计算机中的对应信息同步。应当理解,其他应用可以被加载到存储器862中并且在移动计算设备800上运行,包括创建如本文中描述的日历事件的指令(例如和/或可选地日历事件创建模块711)。
系统802具有电源870,电源870可以被实现为一个或多个电池。电源870还可以包括外部电源,诸如AC适配器或者对电池进行补充或再充电的电源对接支架。
系统802还可以包括执行传输和接收射频通信的功能的无线电装置872。无线电装置872经由通信运营商或服务提供商来支持系统802和“外部世界”之间的无线连接。去往和来自无线电装置872的传输在操作系统864的控制下进行。换言之,由无线电装置872接收的通信可以经由操作系统864传播到应用程序866,反之亦然。
视觉指示器820可以用于提供视觉通知,和/或音频接口874可以用于经由音频换能器825产生可听通知。在所示实施例中,视觉指示器820是发光二极管(LED),并且音频换能器825是扬声器。这些设备可以直接耦合到电源870,使得在被激活时,它们在由通知机制指示的持续时间内保持打开,即使处理器860和其他组件可能关闭用于节省电池电力。LED可以被编程为无限期地(indefinitely)保持打开,直到用户采取动作来指示设备的通电状态。音频接口874用于向用户提供可听信号以及从其接收可听信号。例如,除了耦合到音频换能器825之外,音频接口874还可以耦合到麦克风以接收可听输入,诸如以支持电话交谈。根据本公开的实施例,麦克风还可以用作音频传感器以支持对通知的控制,如下所述。系统802还可以包括使得车载摄像机830能够记录静止图像、视频流等的视频接口876。
实现系统802的移动计算设备800可以具有附加的特征或功能。例如,移动计算设备800还可以包括附加数据存储设备(可移除和/或不可移除),诸如磁盘、光盘或磁带。这样的附加存储装置在图8B中通过非易失性存储区域868来示出。
如上所述,由移动计算设备800生成或捕获并且经由系统802存储的数据/信息可以本地存储在移动计算设备800上,或者数据可以存储在由设备经由无线电装置872或者经由移动计算设备800与和移动计算设备800相关联的单独的计算设备(例如,分布式计算网络(例如因特网)中的服务器计算机)之间的有线连接来访问的任何数目的存储介质上。应当理解,这样的数据/信息可以经由无线电装置872或经由分布式计算网络经由移动计算设备800来访问。类似地,这样的数据/信息可以根据公知的数据/信息传输和存储装置(包括电子邮件和协作的数据/信息共享系统)容易地在计算设备之间传送用于存储和使用。
图9示出了如上所述的用于处理来自远程源的、在诸如计算设备904、平板计算机906或移动设备908的计算系统处接收的数据的系统的架构的一个方面。在服务器设备902处显示的内容可以存储在不同的通信信道或其他存储装置类型中。例如,可以使用目录服务922、门户网站924、邮箱服务926、即时消息储存库928或社交网络站点930来存储各种文档。数字助理应用713可以由与服务器902通信的客户端使用。服务器902可以通过网络915向以及从客户端计算设备(诸如个人计算机904、平板计算设备906和/或移动计算设备908(例如,智能电话))提供数据。作为示例,上面参照图1-3描述的计算机系统可以在个人计算机904、平板计算设备906和/或移动计算设备908(例如,智能电话)中实施。除了接收可用于在图形发起系统预处理或者在接收计算系统处后处理的图形数据,计算设备的这些实施例中的任一个还可以从储存库916获取内容。
图10示出了可以执行本文中公开的一个或多个方面的示例性平板计算设备1000。另外,本文中描述的各方面和功能可以在分布式系统(例如,基于云的计算系统)上运行,其中应用功能、存储器、数据存储和检索以及各种处理功能可以通过分布式计算网络(诸如因特网或内联网)彼此远程地操作。可以经由车载计算设备显示器或经由与一个或多个计算设备相关联的远程显示单元来显示各种类型的用户界面和信息。例如,各种类型的用户界面和信息可以在壁表面上显示和交互,各种类型的用户界面和信息被投影到该壁表面上。与可以实践本发明的实施例的多个计算系统的交互包括:击键输入、触摸屏输入、语音或其他音频输入、手势条目,其中相关联的计算设备配备有用于捕获并且解释用于控制计算设备的功能的用户手势的检测(例如,相机)功能等。
在其他示例中,本公开提供了一种用于区分歧义请求的系统,包括:接收自然语言表达,其中自然语言表达包括文本的单词、术语和短语中的至少一项;通过使用上下文信息从自然语言表达来创建对话假设集,其中对话假设集具有至少两个对话假设;为对话假设集生成多个对话响应;基于对多个对话响应的分析来对对话假设集评级;并且基于对对话假设集评级来执行动作。在另外的示例中,自然语言表达是口语输入和文本输入中的至少一项。在另外的示例中,上下文信息包括从先前接收的自然语言表达中提取的信息、对于先前接收的自然语言表达的响应、客户端上下文和知识内容中的至少一项。在另外的示例中,从先前接收的自然语言表达中提取的信息至少包括领域预测、意图预测和槽类型。在另外的示例中,创建对话假设集包括:从自然语言表达中提取至少一个特征;以及生成至少两个对话假设,其中对话假设集中的每个对话假设包括具有至少一个提取的特征的不同的自然语言表达。在另外的示例中,为对话假设集生成多个对话响应包括为对话假设集中的每个对话假设生成多个响应。在另外的示例中,为对话假设集生成多个对话响应包括以下中的至少一项:向web后端引擎发送对话假设,以及向领域特定的组件发送对话假设。在另外的示例中,基于对多个对话响应的分析来对对话假设集评级包括:从对话假设集中的至少两个对话假设中提取特征;以及计算针对所提取的特征的得分,其中所计算的得分指示对话假设集内的对话假设评级。在另外的示例中,基于对多个对话响应的分析来对对话假设评级包括将多个对话响应与多个记录的对话响应相比较。在另外的示例中,基于对对话假设集评级来执行动作包括:使用评级最高的对话假设来向web后端引擎查询结果;并且将结果发送给客户端计算设备的用户。
本文中公开的其它方面提供了一种示例性系统,包括:用于接收多个自然语言表达的语音识别组件,其中多个自然语言表达包括文本的单词、术语和短语中的至少一项;以及对话组件,其用于:从多个自然语言表达创建第一回退查询,其中创建第一回退查询包括连结多个自然语言表达;以及向后端引擎发送至少一个回退查询用于从至少一个回退查询来生成搜索结果。在另外的示例中,该系统还包括用于从后端引擎接收搜索结果的对话组件。在另外的示例中,该系统还包括用于对多个自然语言表达执行停止词删除分析的对话组件。在另外的示例中,该系统还包括用于从多个自然语言表达创建第二回退查询的对话组件,其中创建第二回退查询包括连结对多个自然语言表达执行的停止词删除分析。在另外的示例中,该系统还包括用于从多个自然语言表达中提取语义实体的对话组件。在另外的示例中,该系统还包括用于从多个自然语言表达创建第三回退查询的对话组件,其中创建第三回退查询包括连结从多个自然语言表达中提取的语义实体。
本文中公开的附加方面提供了用于训练对话组件以区分歧义请求的示例性系统和方法,该方法包括:
通过使用上下文信息从自然语言表达来创建对话假设集,其中对话假设集具有至少两个对话假设;为对话假设集生成多个对话响应;将多个对话响应与多个记录的对话响应相比较;确定多个对话响应中的至少一个是否匹配记录的对话响应中的至少一个;并且当确定多个对话响应中的至少一个匹配记录的对话响应中的至少一个时,标记对话假设集中的两个对话假设中与匹配至少一个记录的对话响应的至少一个对话响应相对应的至少一个对话假设。在另外的示例中,多个记录的对话响应包括从自然语言表达生成的多个响应。在另外的示例中,创建对话假设集包括:从自然语言表达中提取至少一个特征;以及生成至少两个对话假设,其中对话假设集中的每个对话假设包括具有至少一个提取的特征的不同的自然语言表达。在另外的示例中,标记对话假设集中的两个对话假设中与匹配至少一个记录的对话响应的至少一个对话响应相对应的至少一个对话假设指示可以使用具有至少一个提取的特征的自然语言表达来生成相关的响应。
上面参考根据本公开的各方面的方法、系统和计算机程序产品的框图和/或操作说明来描述本公开的各方面。框中记载的功能/动作可以不按照任何流程图所示的顺序发生。例如,取决于所涉及的功能/动作,连续示出的两个框实际上可以基本上同时执行,或者框有时可以以相反的顺序执行。
对在本申请中提供的一个或多个方面的描述和说明不旨在以任何方式限制或约束本公开的范围。在本申请中提供的各方面、示例和细节被认为足以表达所有权,并且使其他人能够制作和使用要求保护的公开的最佳模式。要求保护的公开不应被解释为限于本申请中提供的任何方面、示例或细节。无论组合还是单独示出和描述,不同的特征(结构和方法两者)旨在被选择性地包括或省略以产生具有特定特征集合的实施例。已经提供了本申请的描述和说明,本领域技术人员可以想到落入没有偏离要求保护的公开的更广范围的在本申请中实施的总体发明概念的更广泛方面的精神内的变化、修改和替代方面。

Claims (10)

1.一种系统,包括:
至少一个处理器;以及
编码计算机可执行指令的存储器,所述计算机可执行指令在由至少一个处理器执行时执行用于区分歧义请求的方法,所述方法包括:
接收自然语言表达,其中所述自然语言表达包括文本的单词、术语和短语中的至少一项;
通过使用上下文信息从所述自然语言表达创建对话假设集,其中所述对话假设集具有至少两个对话假设;
针对所述对话假设集生成多个对话响应;
基于对所述多个对话响应的分析来对所述对话假设集评级;以及
基于对所述对话假设集评级来执行动作。
2.根据权利要求1所述的系统,其中所述自然语言表达是口语输入和文本输入中的至少一项。
3.根据权利要求1到2中的任一项所述的系统,其中所述上下文信息包括从先前接收的自然语言表达提取的信息、对于先前接收的自然语言表达的响应、客户端上下文、和知识内容中的至少一项。
4.根据权利要求3所述的系统,其中从所述先前接收的自然语言表达提取的所述信息至少包括领域预测、意图预测和槽类型。
5.根据权利要求1到4中的任一项所述的系统,其中创建所述对话假设集包括:
从所述自然语言表达提取至少一个特征;以及
生成至少两个对话假设,其中所述对话假设集中的每个对话假设包括不同的自然语言表达,所述不同的自然语言表达具有至少一个所提取的特征。
6.根据权利要求1到5中的任一项所述的系统,其中针对所述对话假设集生成多个对话响应包括针对所述对话假设集中的每个对话假设生成多个响应。
7.根据权利要求1到6中的任一项所述的系统,其中针对所述对话假设集生成多个对话响应包括以下中的至少一项:向web后端引擎发送所述对话假设以及向领域特定的组件发送所述对话假设。
8.根据权利要求1到7中的任一项所述的系统,其中基于对所述多个对话响应的分析来对所述对话假设集评级包括:
从所述对话假设集中的所述至少两个对话假设提取特征;以及
计算针对所提取的所述特征的得分,其中所计算的所述得分指示所述对话假设集内的对话假设评级。
9.一种系统,包括:
语音识别组件,用于接收多个自然语言表达,其中所述多个自然语言表达包括文本的单词、术语和短语中的至少一项;以及
对话组件,用于:
从所述多个自然语言表达创建第一回退查询,其中创建所述第一回退查询包括连结所述多个自然语言表达;以及
向后端引擎发送所述至少一个回退查询用于从所述至少一个回退查询生成搜索结果。
10.一种或多种具有计算机可执行指令的计算机可读存储介质,所述计算机可执行指令在由至少一个处理器执行时执行用于训练对话组件以区分歧义请求的方法,所述方法包括:
通过使用上下文信息从自然语言表达创建对话假设集,其中所述对话假设集具有至少两个对话假设;
针对所述对话假设集生成多个对话响应;
将所述多个对话响应与多个记录的对话响应相比较;
确定所述多个对话响应中的至少一个对话响应是否匹配所述记录的对话响应中的至少一个记录的对话响应;以及
当确定所述多个对话响应中的至少一个对话响应匹配所述记录的对话响应中的至少一个记录的对话响应时,标记所述对话假设集中的所述两个对话假设中的至少一个对话假设,所述至少一个对话假设与匹配所述至少一个记录的对话响应的所述至少一个对话响应相对应。
CN201580070449.8A 2014-12-30 2015-12-22 区分歧义表达以增强用户体验 Pending CN107111611A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/586,395 2014-12-30
US14/586,395 US9836452B2 (en) 2014-12-30 2014-12-30 Discriminating ambiguous expressions to enhance user experience
PCT/US2015/067238 WO2016109307A2 (en) 2014-12-30 2015-12-22 Discriminating ambiguous expressions to enhance user experience

Publications (1)

Publication Number Publication Date
CN107111611A true CN107111611A (zh) 2017-08-29

Family

ID=55073177

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201580070449.8A Pending CN107111611A (zh) 2014-12-30 2015-12-22 区分歧义表达以增强用户体验

Country Status (11)

Country Link
US (2) US9836452B2 (zh)
EP (1) EP3241125A2 (zh)
JP (1) JP6701206B2 (zh)
KR (1) KR102602475B1 (zh)
CN (1) CN107111611A (zh)
AU (2) AU2015374382B2 (zh)
BR (1) BR112017010222A2 (zh)
CA (1) CA2968016C (zh)
MX (1) MX367096B (zh)
RU (1) RU2017122991A (zh)
WO (1) WO2016109307A2 (zh)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109325234A (zh) * 2018-10-10 2019-02-12 深圳前海微众银行股份有限公司 语句处理方法、设备及计算机可读存储介质
CN109493850A (zh) * 2017-09-13 2019-03-19 株式会社日立制作所 成长型对话装置
CN109712619A (zh) * 2018-12-24 2019-05-03 出门问问信息科技有限公司 一种解耦对话假设并执行的方法、装置及语音交互系统
CN110019699A (zh) * 2017-09-05 2019-07-16 声音猎手公司 域间通过语法槽的分类
CN111316276A (zh) * 2017-11-03 2020-06-19 谷歌有限责任公司 将分布式状态机与自动助手用于人机对话以保护隐私数据
CN111400434A (zh) * 2019-01-03 2020-07-10 国际商业机器公司 基于对先前响应的引用管理语音响应系统的方法和系统
CN111566727A (zh) * 2018-10-25 2020-08-21 微软技术许可有限责任公司 全双工语音对话中的多阶段响应
CN111985249A (zh) * 2020-09-03 2020-11-24 贝壳技术有限公司 语义分析方法、装置、计算机可读存储介质及电子设备
CN113906433A (zh) * 2019-06-03 2022-01-07 微软技术许可有限责任公司 澄清问题以用于重写有歧义的用户话语

Families Citing this family (56)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9690776B2 (en) * 2014-12-01 2017-06-27 Microsoft Technology Licensing, Llc Contextual language understanding for multi-turn language tasks
US9836452B2 (en) 2014-12-30 2017-12-05 Microsoft Technology Licensing, Llc Discriminating ambiguous expressions to enhance user experience
JP2016189128A (ja) * 2015-03-30 2016-11-04 ファナック株式会社 プログラム中のあいまい検索機能を備えた数値制御装置
US10418032B1 (en) * 2015-04-10 2019-09-17 Soundhound, Inc. System and methods for a virtual assistant to manage and use context in a natural language dialog
US10372755B2 (en) * 2015-09-23 2019-08-06 Motorola Solutions, Inc. Apparatus, system, and method for responding to a user-initiated query with a context-based response
US10262062B2 (en) * 2015-12-21 2019-04-16 Adobe Inc. Natural language system question classifier, semantic representations, and logical form templates
WO2017168246A1 (en) * 2016-03-29 2017-10-05 Maluuba Inc. Hierarchical attention for spoken dialogue state tracking
US9858265B1 (en) * 2016-06-08 2018-01-02 Rovi Guides, Inc. Systems and methods for determining context switching in conversation
US10223067B2 (en) * 2016-07-15 2019-03-05 Microsoft Technology Licensing, Llc Leveraging environmental context for enhanced communication throughput
US10573299B2 (en) * 2016-08-19 2020-02-25 Panasonic Avionics Corporation Digital assistant and associated methods for a transportation vehicle
US10102200B2 (en) 2016-08-25 2018-10-16 International Business Machines Corporation Predicate parses using semantic knowledge
US20180090141A1 (en) * 2016-09-29 2018-03-29 Microsoft Technology Licensing, Llc Conversational interactions using superbots
US10437841B2 (en) * 2016-10-10 2019-10-08 Microsoft Technology Licensing, Llc Digital assistant extension automatic ranking and selection
US10446144B2 (en) 2016-11-21 2019-10-15 Google Llc Providing prompt in an automated dialog session based on selected content of prior automated dialog session
US11238860B2 (en) * 2017-01-20 2022-02-01 Huawei Technologies Co., Ltd. Method and terminal for implementing speech control
US10860628B2 (en) * 2017-02-16 2020-12-08 Google Llc Streaming real-time dialog management
US20180253638A1 (en) * 2017-03-02 2018-09-06 Accenture Global Solutions Limited Artificial Intelligence Digital Agent
US10372824B2 (en) * 2017-05-15 2019-08-06 International Business Machines Corporation Disambiguating concepts in natural language
US10446147B1 (en) * 2017-06-27 2019-10-15 Amazon Technologies, Inc. Contextual voice user interface
US11043205B1 (en) * 2017-06-27 2021-06-22 Amazon Technologies, Inc. Scoring of natural language processing hypotheses
EP3451189B1 (en) * 2017-08-30 2020-12-02 Deutsche Telekom AG A system and method for user query recognition
US11113608B2 (en) 2017-10-30 2021-09-07 Accenture Global Solutions Limited Hybrid bot framework for enterprises
KR101970899B1 (ko) 2017-11-27 2019-04-24 주식회사 머니브레인 문맥 기반으로 음성 인식의 성능을 향상하기 위한 방법, 컴퓨터 장치 및 컴퓨터 판독가능 기록 매체
KR101959292B1 (ko) 2017-12-08 2019-03-18 주식회사 머니브레인 문맥 기반으로 음성 인식의 성능을 향상하기 위한 방법, 컴퓨터 장치 및 컴퓨터 판독가능 기록 매체
JP2019106054A (ja) * 2017-12-13 2019-06-27 株式会社東芝 対話システム
US10430447B2 (en) 2018-01-31 2019-10-01 International Business Machines Corporation Predicting intent of a user from anomalous profile data
US10741176B2 (en) 2018-01-31 2020-08-11 International Business Machines Corporation Customizing responses to users in automated dialogue systems
US10231285B1 (en) * 2018-03-12 2019-03-12 International Business Machines Corporation Cognitive massage dynamic response optimization
US10929601B1 (en) * 2018-03-23 2021-02-23 Amazon Technologies, Inc. Question answering for a multi-modal system
US11568863B1 (en) * 2018-03-23 2023-01-31 Amazon Technologies, Inc. Skill shortlister for natural language processing
US11676220B2 (en) 2018-04-20 2023-06-13 Meta Platforms, Inc. Processing multimodal user input for assistant systems
US10963273B2 (en) 2018-04-20 2021-03-30 Facebook, Inc. Generating personalized content summaries for users
US11886473B2 (en) 2018-04-20 2024-01-30 Meta Platforms, Inc. Intent identification for agent matching by assistant systems
US11715042B1 (en) 2018-04-20 2023-08-01 Meta Platforms Technologies, Llc Interpretability of deep reinforcement learning models in assistant systems
US11307880B2 (en) 2018-04-20 2022-04-19 Meta Platforms, Inc. Assisting users with personalized and contextual communication content
WO2019216876A1 (en) * 2018-05-07 2019-11-14 Google Llc Activation of remote devices in a networked system
US10956462B1 (en) * 2018-06-21 2021-03-23 Amazon Technologies, Inc. System answering of user inputs
US11868728B1 (en) * 2018-09-19 2024-01-09 Amazon Technologies, Inc. Multi-domain skills
KR20200055836A (ko) * 2018-11-12 2020-05-22 삼성전자주식회사 데이터 분류 방법 및 장치, 분류기의 학습 방법 및 장치
CN111552784A (zh) * 2019-02-12 2020-08-18 厦门邑通软件科技有限公司 一种基于abc沟通法则的人机对话方法
US11194796B2 (en) * 2019-02-14 2021-12-07 Microsoft Technology Licensing, Llc Intuitive voice search
CN110188182B (zh) * 2019-05-31 2023-10-27 中国科学院深圳先进技术研究院 模型训练方法、对话生成方法、装置、设备及介质
US11256868B2 (en) * 2019-06-03 2022-02-22 Microsoft Technology Licensing, Llc Architecture for resolving ambiguous user utterance
WO2020261944A1 (ja) * 2019-06-27 2020-12-30 ソニー株式会社 情報処理装置および情報処理方法
US11328711B2 (en) * 2019-07-05 2022-05-10 Korea Electronics Technology Institute User adaptive conversation apparatus and method based on monitoring of emotional and ethical states
US20210064658A1 (en) * 2019-09-04 2021-03-04 International Business Machines Corporation Geofencing queries based on query intent and result semantics
KR20210036169A (ko) * 2019-09-25 2021-04-02 현대자동차주식회사 대화 시스템, 대화 처리 방법, 번역 장치 및 번역 방법
US10841251B1 (en) * 2020-02-11 2020-11-17 Moveworks, Inc. Multi-domain chatbot
US10798031B1 (en) 2020-04-13 2020-10-06 Moveworks, Inc. Generic disambiguation
US11250853B2 (en) 2020-04-30 2022-02-15 Robert Bosch Gmbh Sarcasm-sensitive spoken dialog system
US11508372B1 (en) * 2020-06-18 2022-11-22 Amazon Technologies, Inc. Natural language input routing
US10818293B1 (en) 2020-07-14 2020-10-27 Drift.com, Inc. Selecting a response in a multi-turn interaction between a user and a conversational bot
CN112000787B (zh) * 2020-08-17 2021-05-14 上海小鹏汽车科技有限公司 语音交互方法、服务器和语音交互系统
KR102339794B1 (ko) 2020-12-04 2021-12-16 주식회사 애자일소다 질의 응답 서비스 장치 및 방법
US11977852B2 (en) * 2022-01-12 2024-05-07 Bank Of America Corporation Anaphoric reference resolution using natural language processing and machine learning
US20240161737A1 (en) * 2022-11-15 2024-05-16 Soundhound, Inc. Real-time natural language processing and fulfillment

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0631244A2 (en) * 1993-06-24 1994-12-28 Xerox Corporation A method and system of information retrieval
CN101297355A (zh) * 2005-08-05 2008-10-29 沃伊斯博克斯科技公司 响应自然语言语音口头表达的系统和方法
CN102750311A (zh) * 2011-03-31 2012-10-24 微软公司 扩充的对话理解体系结构
US20140059030A1 (en) * 2012-08-23 2014-02-27 Microsoft Corporation Translating Natural Language Utterances to Keyword Search Queries
US20140163959A1 (en) * 2012-12-12 2014-06-12 Nuance Communications, Inc. Multi-Domain Natural Language Processing Architecture
US20140365502A1 (en) * 2013-06-11 2014-12-11 International Business Machines Corporation Determining Answers in a Question/Answer System when Answer is Not Contained in Corpus

Family Cites Families (42)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6272488B1 (en) 1998-04-01 2001-08-07 International Business Machines Corporation Managing results of federated searches across heterogeneous datastores with a federated collection object
US6266668B1 (en) 1998-08-04 2001-07-24 Dryken Technologies, Inc. System and method for dynamic data-mining and on-line communication of customized information
US6745177B2 (en) 1999-04-09 2004-06-01 Metro One Telecommunications, Inc. Method and system for retrieving data from multiple data sources using a search routing database
US7725307B2 (en) * 1999-11-12 2010-05-25 Phoenix Solutions, Inc. Query engine for processing voice based queries including semantic decoding
US20030214523A1 (en) * 2002-05-16 2003-11-20 Kuansan Wang Method and apparatus for decoding ambiguous input using anti-entities
US7398209B2 (en) * 2002-06-03 2008-07-08 Voicebox Technologies, Inc. Systems and methods for responding to natural language speech utterance
US20050004905A1 (en) 2003-03-03 2005-01-06 Scott Dresden Search engine with neural network weighting based on parametric user data
US8301436B2 (en) 2003-05-29 2012-10-30 Microsoft Corporation Semantic object synchronous understanding for highly interactive interface
WO2005020103A1 (en) 2003-08-18 2005-03-03 Sap Aktiengesellschaft Generic search engine framework
US20050149496A1 (en) 2003-12-22 2005-07-07 Verity, Inc. System and method for dynamic context-sensitive federated search of multiple information repositories
KR100612839B1 (ko) * 2004-02-18 2006-08-18 삼성전자주식회사 도메인 기반 대화 음성인식방법 및 장치
US7921091B2 (en) 2004-12-16 2011-04-05 At&T Intellectual Property Ii, L.P. System and method for providing a natural language interface to a database
US8214310B2 (en) 2005-05-18 2012-07-03 International Business Machines Corporation Cross descriptor learning system, method and program product therefor
US8041570B2 (en) * 2005-05-31 2011-10-18 Robert Bosch Corporation Dialogue management using scripts
US7590541B2 (en) 2005-09-30 2009-09-15 Rockwell Automation Technologies, Inc. HMI presentation layer configuration system
US7783620B1 (en) 2007-06-29 2010-08-24 Emc Corporation Relevancy scoring using query structure and data structure for federated search
US9063975B2 (en) * 2013-03-15 2015-06-23 International Business Machines Corporation Results of question and answer systems
GB0800925D0 (en) * 2008-01-18 2008-02-27 Akuwudike Ugochukwu A web-based natural language communications system and method
US8180754B1 (en) 2008-04-01 2012-05-15 Dranias Development Llc Semantic neural network for aggregating query searches
US10025855B2 (en) 2008-07-28 2018-07-17 Excalibur Ip, Llc Federated community search
US9978365B2 (en) * 2008-10-31 2018-05-22 Nokia Technologies Oy Method and system for providing a voice interface
US8140328B2 (en) 2008-12-01 2012-03-20 At&T Intellectual Property I, L.P. User intention based on N-best list of recognition hypotheses for utterances in a dialog
US8275788B2 (en) * 2009-11-17 2012-09-25 Glace Holding Llc System and methods for accessing web pages using natural language
US9495460B2 (en) 2009-05-27 2016-11-15 Microsoft Technology Licensing, Llc Merging search results
JP5379627B2 (ja) * 2009-09-29 2013-12-25 エヌ・ティ・ティ・コミュニケーションズ株式会社 検索制御装置、検索制御方法、及びプログラム
US8756233B2 (en) * 2010-04-16 2014-06-17 Video Semantics Semantic segmentation and tagging engine
GB201010545D0 (en) * 2010-06-23 2010-08-11 Rolls Royce Plc Entity recognition
US8812321B2 (en) * 2010-09-30 2014-08-19 At&T Intellectual Property I, L.P. System and method for combining speech recognition outputs from a plurality of domain-specific speech recognizers via machine learning
US9842168B2 (en) * 2011-03-31 2017-12-12 Microsoft Technology Licensing, Llc Task driven user intents
US9760566B2 (en) * 2011-03-31 2017-09-12 Microsoft Technology Licensing, Llc Augmented conversational understanding agent to identify conversation context between two humans and taking an agent action thereof
CA2747153A1 (en) 2011-07-19 2013-01-19 Suleman Kaheer Natural language processing dialog system for obtaining goods, services or information
EP2575128A3 (en) * 2011-09-30 2013-08-14 Apple Inc. Using context information to facilitate processing of commands in a virtual assistant
US8645361B2 (en) 2012-01-20 2014-02-04 Microsoft Corporation Using popular queries to decide when to federate queries
US20140006012A1 (en) 2012-07-02 2014-01-02 Microsoft Corporation Learning-Based Processing of Natural Language Questions
US9465833B2 (en) * 2012-07-31 2016-10-11 Veveo, Inc. Disambiguating user intent in conversational interaction system for large corpus information retrieval
US10235358B2 (en) 2013-02-21 2019-03-19 Microsoft Technology Licensing, Llc Exploiting structured content for unsupervised natural language semantic parsing
US9582608B2 (en) * 2013-06-07 2017-02-28 Apple Inc. Unified ranking with entropy-weighted information for phrase-based semantic auto-completion
US10176167B2 (en) 2013-06-09 2019-01-08 Apple Inc. System and method for inferring user intent from speech inputs
JP5734354B2 (ja) * 2013-06-26 2015-06-17 ファナック株式会社 工具クランプ装置
US9275115B2 (en) * 2013-07-16 2016-03-01 International Business Machines Corporation Correlating corpus/corpora value from answered questions
US9524289B2 (en) * 2014-02-24 2016-12-20 Nuance Communications, Inc. Automated text annotation for construction of natural language understanding grammars
US9836452B2 (en) 2014-12-30 2017-12-05 Microsoft Technology Licensing, Llc Discriminating ambiguous expressions to enhance user experience

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0631244A2 (en) * 1993-06-24 1994-12-28 Xerox Corporation A method and system of information retrieval
CN101297355A (zh) * 2005-08-05 2008-10-29 沃伊斯博克斯科技公司 响应自然语言语音口头表达的系统和方法
CN102750311A (zh) * 2011-03-31 2012-10-24 微软公司 扩充的对话理解体系结构
US20140059030A1 (en) * 2012-08-23 2014-02-27 Microsoft Corporation Translating Natural Language Utterances to Keyword Search Queries
US20140163959A1 (en) * 2012-12-12 2014-06-12 Nuance Communications, Inc. Multi-Domain Natural Language Processing Architecture
US20140365502A1 (en) * 2013-06-11 2014-12-11 International Business Machines Corporation Determining Answers in a Question/Answer System when Answer is Not Contained in Corpus

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110019699B (zh) * 2017-09-05 2023-10-20 声音猎手公司 域间通过语法槽的分类
US11935029B2 (en) 2017-09-05 2024-03-19 Soundhound, Inc. Classification by natural language grammar slots across domains
CN110019699A (zh) * 2017-09-05 2019-07-16 声音猎手公司 域间通过语法槽的分类
CN109493850A (zh) * 2017-09-13 2019-03-19 株式会社日立制作所 成长型对话装置
CN111316276A (zh) * 2017-11-03 2020-06-19 谷歌有限责任公司 将分布式状态机与自动助手用于人机对话以保护隐私数据
CN111316276B (zh) * 2017-11-03 2024-02-20 谷歌有限责任公司 将分布式状态机与自动助手用于人机对话以保护隐私数据
CN109325234A (zh) * 2018-10-10 2019-02-12 深圳前海微众银行股份有限公司 语句处理方法、设备及计算机可读存储介质
CN111566727A (zh) * 2018-10-25 2020-08-21 微软技术许可有限责任公司 全双工语音对话中的多阶段响应
CN111566727B (zh) * 2018-10-25 2023-09-01 微软技术许可有限责任公司 全双工语音对话中的多阶段响应
US11979360B2 (en) 2018-10-25 2024-05-07 Microsoft Technology Licensing, Llc Multi-phrase responding in full duplex voice conversation
CN109712619A (zh) * 2018-12-24 2019-05-03 出门问问信息科技有限公司 一种解耦对话假设并执行的方法、装置及语音交互系统
CN111400434A (zh) * 2019-01-03 2020-07-10 国际商业机器公司 基于对先前响应的引用管理语音响应系统的方法和系统
CN111400434B (zh) * 2019-01-03 2024-05-03 国际商业机器公司 基于对先前响应的引用管理语音响应系统的方法和系统
CN113906433A (zh) * 2019-06-03 2022-01-07 微软技术许可有限责任公司 澄清问题以用于重写有歧义的用户话语
CN111985249A (zh) * 2020-09-03 2020-11-24 贝壳技术有限公司 语义分析方法、装置、计算机可读存储介质及电子设备

Also Published As

Publication number Publication date
MX367096B (es) 2019-08-05
AU2015374382A1 (en) 2017-05-25
AU2015374382B2 (en) 2020-08-13
RU2017122991A (ru) 2018-12-29
US11386268B2 (en) 2022-07-12
US9836452B2 (en) 2017-12-05
BR112017010222A2 (pt) 2017-12-26
JP6701206B2 (ja) 2020-05-27
AU2020267218A1 (en) 2020-12-10
US20160188565A1 (en) 2016-06-30
AU2020267218B2 (en) 2021-12-09
CA2968016C (en) 2023-01-24
WO2016109307A3 (en) 2016-10-06
EP3241125A2 (en) 2017-11-08
RU2017122991A3 (zh) 2019-07-17
KR102602475B1 (ko) 2023-11-14
US20180089167A1 (en) 2018-03-29
JP2018506113A (ja) 2018-03-01
MX2017008583A (es) 2017-11-15
CA2968016A1 (en) 2016-07-07
WO2016109307A2 (en) 2016-07-07
KR20170099917A (ko) 2017-09-01

Similar Documents

Publication Publication Date Title
CN107111611A (zh) 区分歧义表达以增强用户体验
US11966986B2 (en) Multimodal entity and coreference resolution for assistant systems
CN105960672B (zh) 用于稳健语音识别的变量组件深度神经网络
US20200410012A1 (en) Memory Grounded Conversational Reasoning and Question Answering for Assistant Systems
CN114930363A (zh) 为助理系统生成主动内容
CN110168575A (zh) 用于信息检索评分的动态张量注意力
CN107924679A (zh) 输入理解处理期间在响应选择中的延迟绑定
CN105531758B (zh) 使用外国单词语法的语音识别
US10853716B2 (en) Systems and methods for a mathematical chat bot
CN106575293A (zh) 孤立话语检测系统和方法
JP2017518588A (ja) 会話理解システムのためのセッションコンテキストモデリング
CN107592926A (zh) 使用任务帧建立多模式协同对话
EP4172843A1 (en) Using a single request for multi-person calling in assistant systems
CN109392309A (zh) 建立与非注册资源的基于音频的网络会话
Sales et al. Semeval-2017 task 11: end-user development using natural language
CN108027825A (zh) 在企业中暴露外部内容
US20230283878A1 (en) Smart Cameras Enabled by Assistant Systems
Ho et al. TouchWear: Context-Dependent and Self-Learning Personal Speech Assistant for Wearable Systems with Deep Neural Networks

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