CN108369596B - 个性化自然语言理解系统 - Google Patents

个性化自然语言理解系统 Download PDF

Info

Publication number
CN108369596B
CN108369596B CN201680072630.7A CN201680072630A CN108369596B CN 108369596 B CN108369596 B CN 108369596B CN 201680072630 A CN201680072630 A CN 201680072630A CN 108369596 B CN108369596 B CN 108369596B
Authority
CN
China
Prior art keywords
user
data
domain
personal data
query
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.)
Active
Application number
CN201680072630.7A
Other languages
English (en)
Other versions
CN108369596A (zh
Inventor
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 CN108369596A publication Critical patent/CN108369596A/zh
Application granted granted Critical
Publication of CN108369596B publication Critical patent/CN108369596B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/40Processing or translation of natural language
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/242Query formulation
    • G06F16/243Natural language query formulation
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9535Search customisation based on user profiles and personalisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/205Parsing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/083Network architectures or network communication protocols for network security for authentication of entities using passwords

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Mathematical Physics (AREA)
  • Data Mining & Analysis (AREA)
  • Artificial Intelligence (AREA)
  • Computational Linguistics (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Medical Informatics (AREA)
  • Evolutionary Computation (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Human Computer Interaction (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本公开内容的示例描述了对自然语言系统进行个性化的系统和方法。在各方面中,个人数据可以被上传到个性化服务器。在接收到数据请求时,服务器设备可以使用用户的登录信息来查询个性化服务器。登录数据和相关联的个人数据可以被配对并且提供给个性化服务器。配对的数据然后可以被提供给语言理解模型以生成对数据请求的响应。响应中的数据可以被用于训练语言理解模型。

Description

个性化自然语言理解系统
背景技术
自然语言理解(NLU)是计算机程序理解人类言语和提取口头或打字输入的含义的能力。NLU系统已经与各种领域(例如,地点、天气、通信、提醒)结合而被使用。通常,NLU系统匿名地对待个人用户(例如,系统对所有用户表现相同)。因此,在查询处理期间,会向用户提供降级的用户体验,其中用户特定的行为和动作被忽略。
已经就这些和其他一般考虑而言做出了在本文中公开的各方面。而且,虽然可以讨论相对具体的问题,但是应当理解,这些示例不应当被限于解决在背景技术或本公开内容中的其他部分中标识的具体问题。
发明内容
提供这一发明内容是为了以简化的形式介绍将在以下具体实施方式部分中被进一步描述对概念的选择。这一“发明内容”并非旨在标识要求保护的主题内容的关键特征或基本特征,也并非旨在被用作确定要求保护的主题内容的范围时的辅助。
本公开内容的示例描述了对自然语言系统进行个性化的系统和方法。在各方面中,个人数据可以被上传到个性化服务器。在接收到数据请求时,服务器设备可以使用标识数据(例如,用户的登录信息)来查询个性化服务器。标识数据和相关联的个人数据可以被配对并且提供给个性化服务器。配对的数据然后可以被提供给语言理解模型以生成对数据请求的响应。响应中的数据可以被用于进一步训练语言理解模型。
提供这一发明内容是为了以简化的形式介绍将在以下具体实施方式部分中被进一步描述对概念的选择。这一“发明内容”并非旨在标识要求保护的主题内容的关键特征或基本特征,也并非旨在被用于限制要求保护的主题内容的范围。示例的附加方面、特征和/或优点将部分地在下面的描述中被阐述,并且部分地将从描述变得很清楚,或者可以通过对本公开内容的实践而被了解。
附图说明
参考以下附图来描述非限制性和非穷举性示例。
图1示出了如本文中描述的用于实现自然语言个性化技术的示例系统的概述。
图2示出了如本文中描述的客户端设备、个性化服务器和语言理解服务器之间的示例性相互作用。
图3示出了如本文中描述的对自然语言理解系统进行个性化的示例方法。
图4示出了如本文中描述的从客户端设备的角度来对自然语言理解系统进行个性化的示例方法。
图5示出了如本文中描述的从个性化设备的角度来对自然语言理解系统进行个性化的示例方法。
图6示出了如本文中描述的从语言理解设备的角度来对自然语言理解系统进行个性化的示例方法。
图7是示出了可以用以实践本公开内容的各方面的计算设备的示例物理组件的框图。
图8A和图8B是可以用以实践本公开内容的各方面的移动计算设备的简化框图。
图9是其中可以实践本公开内容的各方面的分布式计算系统的简化框图。
图10示出了用于执行本公开内容的一个或多个方面的平板计算设备。
具体实施方式
以下参考附图更全面地描述本公开内容的各个方面,附图构成本公开内容的一部分并且示出了具体的示例性方面。然而,本公开内容的不同方面可以按照很多不同的形式而被实现,并且不应当被解释为限于在本公开中被阐述的各方面;相反,提供这些方面使得本公开内容将是彻底和完整的,并且将向本领域技术人员充分传达这些方面的范围。各方面可以被实践为方法、系统或设备。因此,各方面可以采取硬件实现方式、完全软件实现方式或者结合软件和硬件方面的实现方式的形式。因此,下面的详细描述不应当被认为是限制性的。
本公开内容提供了对自然语言系统进行个性化的系统和方法。在示例中,客户端设备可以将个人数据上传到个性化服务器。如本文中使用的个人数据可以指代用户简档和/或用户特定的信号中的信息。本文中使用的用户信号(也被称为信号数据)可以指代个人联系人、用户文件和文档、用户位置、用户应用、用户社交媒体信息、用户兴趣、用户日历信息、用户事件数据、用户和/或客户端标识信息等。如本文中使用的个性化服务器可以指代存储用于一个或多个用户的个人数据的设备。本领域技术人员将认识到,任何类型的处理设备可以与本公开内容的示例一起被使用。
在一些示例中,在个人数据已经被上传之后,客户端设备可以向自然语言理解(NLU)服务器发送数据请求。如本文中使用的数据请求可以指代包括用以用户和/或客户端设备的查询和/或标识信息的数据的集合。本领域技术人员将认识到,本公开内容的示例可以被应用于任何输入理解处理,包括以诸如语音/话语、文本、手写输入和触摸以及其他示例的形式被处理的输入等。如本文中使用的NLU服务器可以指代用于从输入提取和/或处理语义内容以便表示输入的(多个)域、(多个)意图和/或(多个)槽(slot)的设备。如本文中使用的域可以指代隔离或定义应用、软件功能或数据的集合的容器和/或边界。例如,“事件”域可以被用于搜索和购买事件相关项目;而“地点”域可以被用于搜索地点和到地点的路线。如本文中使用的意图可以指代用户的话语或其他录入的输入的目标或意向。例如,可以向查询“What new movies are playing?”指派意图“show_movies”。如本文中使用的槽可以指代用户的话语或其他录入的输入内的可动作内容。例如,可以向用于查询“I want tosee The Avengers tonight”的槽“movie_name”指派实体“The Avengers”。
在各方面中,NLU服务器可以处理接收的查询并且向个性化服务器发送标识信息的至少一部分。个性化服务器可以将标识信息HE与用户相关联的个人数据匹配,并且将个人数据提供给NLU服务器。NLU服务器可以将个人数据作为输入提供给一个或多个语言理解(LU)模型。如本文中使用的LU模型可以指代可以被用于确定一个或多个单词序列的概率分布的统计语言模型。在示例中,模型可以是基于规则的模型、机器学习的回归器、机器学习的分类器等。(多个)LU模型可以输出用以数据请求的结果集并且将结果集发送给客户端设备。
在一些示例中,可以使用结果集数据来训练或重新训练(多个)LU模型。如本文中使用的训练模型可以指代使用数据的集合来拟合例如可以被用于根据一个或多个预测子(predictor)来预测响应值的统计机器学习模型。诸如单词N-gram、字典、个性化等各种技术可以被用于训练或重新训练模型。训练(或重新训练)的(多个)LU模型可以为用户提供更准确、个性化和/或有效的结果集。在其他示例中,可以使用训练数据来训练(多个)LU模型。如本文中使用的训练数据可以指代具有随机生成的个人信息的假(例如,伪)用户简档。尽管使用训练数据而被训练的LU模型在初始时可能没有针对用户被个性化,但是可以训练(多个)LU模型以预期和/或识别输入的特征以及向特征和/或预期的特征指派统计权重和/或概率。
因此,本公开内容提供了多种技术益处,包括但不限于:对自然语言模型和系统进行个性化;改善检测、意图检测和槽加标记;对解析加标记的实体的改进(例如,将在查询中被使用的名称映射到联系人列表中的唯一ID);改进运行时特征提取;提高查询处理速度;减少训练语言理解模型所需要的训练数据的量;减少对域进行注释所需要的时间和资源成本;提高查询结果的质量和准确度(从而减少“后续”查询的量),减少系统内的设备的带宽和功耗,以及利用本公开内容的示例来提高应用/服务的效率和质量等。
图1示出了如本文中描述的用于实现用以自然语言系统的个性化技术的示例系统的概述。呈现的示例性系统100是交互以形成用于对自然语言系统进行个性化的整体的相互关联的组件的组合。系统的组件可以是在系统的硬件组件上被实现和/或由其执行的硬件组件或软件。在示例中,系统100可以包括任何硬件组件(例如,被用于执行/运行操作系统(OS))和在硬件上运行的软件组件(例如,应用、应用编程接口(API)、模块、虚拟机、运行时库等)。在一个示例中,示例性系统100可以提供用于软件组件运行的环境,服从为操作设置的约束,并且利用系统100的资源或设施,其中组件可以是在一个或多个处理设备上运行的软件(例如,应用、程序、模块等)。例如,软件(例如,应用、操作指令、模块等)可以在诸如计算机、移动设备(例如,智能手机/电话、平板计算机)和/或任何其他电子设备的处理设备上被运行。作为处理设备操作环境的示例,参考图5至图7中描绘的示例性操作环境。在其他示例中,本文中公开的系统的组件可以跨多个设备而被分布。例如,可以在客户端设备上录入输入,并且可以从诸如一个或多个服务器设备的网络中的其他设备处理或访问信息。
作为示例,系统100包括客户端设备102A、客户端设备102B、客户端设备102C、分布式网络104、包括诸如服务器设备106A、服务器设备106B和服务器设备106C的一个或多个服务器的分布式服务器环境以及个性化服务器设备108。本领域技术人员将领会到,诸如系统100的系统的规模可以变化并且可以包括比图1中描述的更多或更少的组件。在一些示例中,系统100的组件之间的对接可以远程地发生,例如,在系统100的组件可以跨分布式网络的一个或多个设备而被分布的情况中。
客户端设备102A例如可以被配置为经由用户接口组件或其他输入装置来接收用户输入信号(例如,来自用户的输入或与用户的个人数据相关的信息)。输入的示例可以包括语音、视觉、触摸和文本输入。客户端设备102A还可以被配置为经由分布式网络104来向诸如个性化服务器设备108的个性化服务器传输输入信号。在一些示例中,客户端设备102A可以周期性地或者根据定义的时间表来向个性化服务器设备108传输输入信号。此外,当客户端设备102A和个性化服务器设备108中的一个或多个离线(例如,当前未接收来自例如用户的查询)时,输入信号可以稍后被传输。
客户端设备102B可以是与客户端设备102A不同的设备类型,但是可以类似于客户端设备102A而被配置。例如,用户可以在客户端设备102A(例如,计算机)和客户端设备102B(例如,移动电话)上具有用户账户。客户端设备102A可以向个性化服务器设备108上传与浏览的网站和访问的文档相关的用户输入信号,并且客户端设备102B可以上传与联系人列表和GPS信号相关的用户输入信号。在各方面中,个性化服务器设备108可以被配置为根据用户的标识(例如,账户ID、用户名、客户端ID、生物计量等)来从客户端设备102A和/或客户端设备102B接收、聚合、加密和/或存储数据。例如,个性化服务器设备108可以将来自多个用户设备的数据分割并且存储在关系数据库的一个或多个表格中,从而使得这些表格通过用户的标识被相关。在特定示例中,可以使用任何已知的加密技术来加密存储的数据。
客户端设备102A还可以被配置为提供查询生成接口,诸如数字个人助理、搜索引擎网页等。查询生成接口可以被用于从例如用户接收数据请求。在各方面中,客户端设备102A可以向诸如服务器设备106A的语言理解服务器发送用于处理的数据。服务器设备106A可以被配置为接收和处理来自客户端设备的数据请求。在各方面中,处理数据请求可以包括剖析(parse)数据请求以标识例如与用户相关联的查询和/或标识信息,并且向个性化服务器设备108传输至少个人数据。个性化服务器设备108还可以被配置为接收标识信息并且利用标识信息来认证用户。在各方面中,在认证用户之后,个性化服务器设备108可以使用标识信息来标识与标识信息相关联的用户是否已经在个性化服务器设备108上存储了个人数据。如果用于用户的存储的个人数据被标识,则个性化服务器设备108可以允许访问对应的个人数据或者向服务器设备106A传输包括个人数据的至少一部分的数据结构。在备选方面中,在剖析个人数据之后,代替或除个性化服务器设备108之外,可以将个人数据传输给客户端设备,诸如客户端设备102A和102B。在这样的方面中,客户端设备还可以被配置为标识并且允许服务器设备106A访问被存储在客户端设备上的个人数据。
服务器设备106A还可以被配置为处理来自个性化服务器设备108的个人数据。例如,服务器设备106A可以包括或者可以访问一个或多个语言理解(LU)模型。在各方面中,服务器设备106A可以接收并且解密数据结构内的个人数据和/或数据请求,并且将这一数据的至少一部分作为输入提供给(多个)LU模型。(多个)LU模型可以使用输入来例如标识用于与数据请求相关联的一个或多个域、意图和/或槽的特征。然后可以为对应的域、意图和/或槽指定(例如,标记)标识的特征。在一些方面中,(多个)LU模型可以使用输入来确定和/或向特征中的一个或多个特征指派权重(例如,得分的概率);从而在相同或相关域中训练用于数据请求的(多个)LU模型。在其他方面中,(多个)LU模型可以附加地或备选地使用训练数据来确定和/或向特征指派权重。在特定示例中,可以在(多个)LU模型先前未被训练(例如,在模型的新安装期间或者在先前未将个人信息应用于模型的情况中)或者正在被重新训练(例如,在模型的重新安装期间)时使用训练数据。至少部分基于输入,(多个)LU模型可以确定要与数据请求一起被使用的临时响应。在一个示例中,临时响应可以采用查询的形式,该查询包括已经使用输入而被填充的特征。
在一些方面中,服务器设备106A可以访问客户端设备102A和102B和/或个性化服务器设备108中的一个或多个上的个人数据,以便解析(例如,验证)个人数据内是否存在临时响应中的一个或多个确定的和/或加标记的特征。在示例中,这一解析可以使用例如查找机制(例如,查找表、散列查找等)或者更精细的机器学习的模型而被执行。在示例中,当在个人数据中找到加标记的特征时,临时响应可以被确定为最终响应。在示例中,最终响应可以采用包括已经使用个人数据而被验证的特征的查询的形式。服务器设备106A可以将最终响应发送给诸如搜索引擎的搜索组件以生成结果集。结果集可以被传输给客户端设备102A的查询生成接口以用于呈现。
图2示出了如本文中描述的客户端设备210、个性化服务器220和语言理解服务器240之间的示例性相互作用的概述。由客户端设备210、个性化服务器220和/或语言理解服务器240实现的自然语言个性化技术可以包括在图1中被描绘的自然语言个性化技术和输入。在备选示例中,单个系统(包括一个或多个组件,诸如处理器和/或存储器)可以分别执行在系统100和200中被描述的处理。此外,如图1的描述中所描述的,客户端设备210、个性化服务器220和/或语言理解服务器240可以包括用户接口组件。
示例性客户端设备210可以包括用户接口(UI)组件212、数据存储库、数据上传引擎214和查询API 216,各自具有一个或多个附加组件。UI组件212可以被配置为从客户端设备接收信号。如本文中使用的信号可以指代用户输入(例如,按键、屏幕划动、暂停等)、个人联系人、文件和文档、位置数据、应用、应用数据、社交媒体信息、用户兴趣和行为数据、用户搜索数据、日历数据等。在特定示例中,UI组件212可以被配置为将接收的信号存储在位于客户端设备210上或者由客户端设备210可访问的数据存储库中。数据上传引擎214可以被配置为访问存储的信号并且将存储的信号传输给诸如个性化服务器220的个性化服务器。在特定示例中,数据上传引擎214可以可操作以确定上次执行上传的时间,并且仅传输数据存储库中在该时间之后已经被添加或修改的数据。在单独的示例中,数据上传引擎214可以可操作以传输当前被存储在数据存储库中的所有信号。在各方面中,数据上传引擎214可以将信号上传到“离线的”个性化服务器(例如,当客户端设备210没有主动传送数据去往或来自LU服务器时)。例如,数据上传引擎214可以根据定义的时间表或者在确定足够的连接性时自动地上传信号,或者数据上传引擎214可以仅根据手动指令来上传信号。
查询API 216可以被配置为接收数据请求。在各方面中,查询可以从单独的设备或直接从用户被接收。数据请求可以与一个或多个域相关联,并且可以包括查询、语句、单词串、一个或多个标签、与一个或多个意图和/或槽相关联的数据和/或标识信息。如本文中使用的意图可以指代发声或其他录入的输入的目标或意向。如本文中使用的槽可以指代话语或其他录入的输入内的可动作的内容。如本文中使用的标识信息可以指代标识用户的信息(例如,用户ID、账户ID、用户名等)和/或标识客户端设备的信息(例如,客户端ID、IP地址、MAC地址等)。查询API 216还可以被配置为将数据请求的一个或多个部分传输给诸如NLU服务器240的LU服务器。在一个示例中,查询API 216可以将查询和用户ID传输给LU服务器。
示例性个性化服务器220可以包括摄取引擎222、数据存储库224和请求处理引擎226,各自具有一个或多个附加组件。摄取引擎222可以被配置为接收和/或处理被存储在客户端设备(诸如客户端设备210)上或者客户端设备210可访问的信号。例如,在接收到信号之后,摄取引擎222可以被配置为将查询数据剖析为一个或更多域、意图和/或槽。可以标识和/或建立域、意图和/或槽内的关联,从而使得多个槽可以与意图相关联,并且多个意图可以与域相关联。摄取引擎222可以使用任何已知的加密方法来加密剖析的数据,并且将剖析的数据存储在诸如数据存储库224的数据存储库内。在示例中,加密数据可以防止未经授权的用户查看和/或访问数据。在特定示例中,加密可以防止被授权查看第一用户的数据的第一用户查看第二用户的数据。数据存储库224可以被配置为根据与剖析的数据相关联的用户标识来存储剖析的和/或加密的数据。例如,数据存储库224可以根据剖析的数据中的用户ID来将剖析的数据存储在数据库的一个或多个表格中。
请求处理引擎226可以被配置为接收和处理来自计算设备(诸如NLU服务器240和客户端设备210)的查找请求。在各方面中,查找请求可以包括查询、用户标识信息和/或客户标识信息的至少一部分。在接收到查找请求之后,请求处理引擎226可以尝试对由标识信息标识的用户进行认证。认证可以使用任何已知的认证技术而被执行。当用户已经被认证时,请求处理引擎226可以访问数据存储库224。在一些示例中,请求处理引擎226可以使用标识信息来标识数据存储库中的对应个人数据。在特定示例中,用户ID可以被用于标识多个数据库行,包括与标识的用户和/或域对应的个人数据。标识的个人数据可以与标识信息的至少一部分配对或以其他方式与之关联。请求处理引擎226然后可以将配对的信息传输给NLU服务器。在另一示例中,可以使用用户ID和槽值(例如,实体名称)来匹配与用户ID和/或槽值对应的个人数据。然后请求处理引擎226可以向NLU服务器传输验证或类似的确认。
示例性NLU服务器240可以包括查询处理引擎242、(多个)NLU模型244和训练引擎246,各自具有一个或多个附加组件。查询处理引擎242可以被配置为从客户端设备(诸如客户端设备210)接收和/或处理数据请求。在各方面中,查询处理引擎242可以将数据请求剖析为标识信息、一个或多个域、意图和/或槽。如上面关于摄取引擎222所描述的,可以标识和/或建立剖析的数据内的关联。在一些方面中,查询处理引擎242可以包括排名组件。排名组件可以是机器学习的分类器、统计排名模型等。排名组件可以从系统100和200中的一个或多个设备接收信号数据和其他信息(例如,个人数据、用户行为数据、应用数据等)。在特定方面中,排名组件可以在一个或多个LU模型(诸如(多个)NLU模型244)之间仲裁,和/或确定用于剖析的数据的至少一部分的排名。例如,排名可以确定对于数据请求(以及最终的查询)的最准确和/或最可能的理解、域、意图和/或槽的最准确的解析等。在示例中,剖析的数据的部分可以被传输给个性化服务器(诸如个性化服务器220)以标识与用户对应的个人数据。在一些方面中,NLU服务器240可以从个性化服务器接收个人数据、标识信息和/或标识的个人数据的验证。如上所述,NLU服务器240还可以被配置为剖析接收的个人数据。例如,查询处理引擎242可以标识接收的个人数据中的一个或多个域、意图和/或槽。
(多个)NLU模型244可以被配置为接收数据(诸如个人数据和/或训练数据)作为输入。在各方面中,(多个)NLU模型244可以使用数据作为用于域分类(例如,地点、天气、旅行、电影等)、用于意图检测(例如,查找地点、查找路线、查看天气、查找电影时间等)和/或用于槽加标记(例如,地名、应用、用户名、电影名称等)的特征。使用输入,(多个)NLU模型244可以例如输出针对由标识信息标识的用户而被个性化的临时查询。在一些示例中,NLU服务器240可以尝试确定(例如,解析)个人数据中是否存在临时查询的加标记的特征。在这样的示例中,这一确定(例如,解析)过程可以包括使用一个或多个查找操作或机器学习的模型。在特定示例中,确定过程可以包括使用精确匹配、部分匹配、n-gram匹配、匹配的数目、非零实体匹配(例如,在个人数据中是否找到非零实体)等来匹配加标记的特征与个人数据。在这样的示例中,与不匹配的加标记的特征相比,任何匹配的加标记的特征可以被赋予更多的权重或更高的重要性。
在各方面中,当解析完成时(例如,零个或多个加标记的特征已经与个人数据中的条目匹配),临时查询可以被确定为最终查询。在特定示例中,最终查询可以包括匹配的加标记的特征,但是可以排除不匹配的加标记的特征。在另一示例中,最终查询可以包括匹配和不匹配的加标记的特征两者,但是可以将不匹配的加标记的特征确定为可选的或者对于最终查询不那么重要。在一些示例中,(多个)NLU模型244可以将最终查询传输给查询处理引擎242以用于处理。在其他示例中,(多个)NLU模型244可以将最终查询传输给查询搜索组件,诸如搜索引擎。(多个)NLU模型244可以将由查询搜索组件提供的搜索结果传输给查询处理引擎242或客户端设备210。
(多个)NLU模型244也可以被配置为使用一个或多个数据集针对特定的域和/或意图而被训练。在各方面中,作为输入而被接收的个人数据也可以由(多个)NLU模型244使用以向个人数据中的一个或多个特征指派统计权重和/或概率。可以在算法中使用指派的值来确定例如特定加标记的槽值(例如,“John”)与特定实体类型(例如,联系人姓名)对应的可能性,或者确定特征的最相关的集合。算法可以附加地或备选地使用与上述解析过程相关联的信息来进行确定。在其他方面中,可以使用训练数据(而不是“真实的”用户的个人数据)来训练(多个)NLU模型244。例如,包括随机生成的信号的训练简档可以被用作对(多个)NLU模型244的输入。在这样的示例中,如上所述,(多个)NLU模型244可以能够向训练数据中的一个或多个特征指派统计权重和/或概率。然而,由于(多个)NLU模型244可能不具有解析过程的益处,所以指派的统计权重和/或概率以及被用于进行指派的特征可能与个人数据的那些的不同。在这样的方面中,(多个)NLU模型244可以基于定义的时间表或者在特定标准的确定时被训练(例如,NLU服务器240当前未被客户端设备查询或者低于指定级别的处理活动等)。
图3至图6示出了如本文中描述的对自然语言理解系统进行个性化的示例方法。在各方面中,方法300至方法600可以由诸如图1的系统100的示例性系统执行。在示例中,方法300至方法600可以在包括被配置为存储和执行操作、程序或指令的至少一个处理器的设备上被执行。然而,方法300至方法600不限于这样的示例。在其他示例中,可以对用于提供查询解析的应用或服务执行方法300至方法600。在至少一个示例中,方法300至方法600可以由分布式网络的一个或多个组件(例如,web服务/分布式网络服务(例如,云服务))执行(例如,计算机实现的操作),以利用用于语言理解系统的自然语言个性化技术。
示例性方法300开始于操作302,在操作302,可以将数据上传到个性化服务器。在各方面中,例如,数据可以从客户端设备或者一个或多个客户端设备可访问的数据存储库被上传。响应于来自示例性系统100内的设备的手动指令,数据可以被上传到个性化服务器。备选地,数据可以根据定义的上传时间表或者在特定标准的确定时被自动上传到个性化服务器。在特定示例中,数据可以一天三次被上传到个性化服务器,只要发起上传的客户端设备当前没有正在经由自然语言理解接口接收查询。在另一示例中,数据可以在来自客户端设备的手动指令时被上传到个性化服务器,只要在上传设备与个性化服务器之间存在足够的连接。在一些方面中,上传的数据可以包括来自一个或多个客户端设备的输入信号、使用和/或行为信息等。例如,具有用于用户的输入信号的第一集合(例如,浏览的网站和访问的文档)的第一客户端设备和具有用于用户的输入信号的第二集合(例如,联系人列表和GPS信号)的第二客户端设备可以将他们各自的输入信号和/或用户标识信息上传到个性化服务器。在各方面中,个性化服务器可以将接收的输入信号组织并且存储在数据存储库中。例如,个性化服务器可以根据用户、域、应用、创建/修改日期等中的一种或多种来将输入信号剖析和分组,并且可以按照用户ID(或类似的用户标识符)将分组的数据存储在数据库的一个或多个表中。在一些示例中,个性化服务器可以加密输入信号和/或分组的数据。
在操作304,可以在语言理解服务器处接收数据请求。在各方面中,数据请求可以由在操作302中描述的客户端设备中的一个或多个来发起。例如,客户端设备可以使用查询UI或API(例如,个人数字助理、搜索引擎等)来向语言理解服务器提交查询“Get May,please”。在这样的示例中,客户端设备可以传输标识发起查询的用户和/或客户端设备的信息作为数据请求的一部分。在一些方面中,语言理解服务器可以通过提取用于表示查询的域、意图和/或槽的语义帧来处理接收的查询。例如,使用上述查询,语言理解服务器可以确定“May”可以指代“联系人”域(例如,联系人姓名“May Lee”)、“日历”域(例如,月份“May”)或“音乐”域(例如,音乐歌曲“May Pleas”)。基于这一确定,语言理解服务器可以临时指派(例如,标记)对应的域(例如,域=“联系人”或域=“日历”等),并且进一步确定查询的意图和/或槽。例如,如果语言理解服务器确定“May”最有可能是指“联系人”域,则“Get”可以被临时指派意图“地点呼叫(place call)”,并且May”可以被临时指派槽“联系人姓名”。在另一方面,如果语言理解服务器确定“May”最有可能是指“音乐域”,则“Get”可以被临时指派意图“播放歌曲”,并且“May Pleas”可以被临时指派槽“歌曲名称”。
在一些方面中,可以由语言理解服务器使用一个或多个语言理解假设来为提取的语义帧中一个或多个提取的语义帧生成多个临时值(例如,排名、得分等)。如本文中使用的语言理解假设可以指代提出的、用于自然语言表达或其一方面的解决方案。例如,使用上述查询,可以使用第一语言理解规则集(或语言理解模型)来确定“May”是指“联系人”域;可以使用第二语言理解规则集来确定“May”是指“音乐”域;并且可以使用第三语言理解规则集来确定“May”是指“日历”域。在特定示例中,基于域值的数目,可以为每个确定的域值(例如,联系人、音乐和日历)临时指派得分(诸如0.33)。在另一示例中,可以基于对应的语言理解规则集中的一个或多个规则来向确定的域值临时指派得分。在这样的示例中,虽然可以为各个域值指派得分,但是可以不向域指派(临时或以其他方式)特定域值。在其他示例中,可以不为确定的域值(例如,联系人、音乐和日历)指派得分。相反,确定的域值可以被存储以用于进一步处理。
在一些方面中,语言理解服务器可以使用数据请求的至少一部分来获取凭证,以促进访问个性化服务器以获取与发起数据请求的用户相关联的输入信号(例如,个人数据)。例如,语言理解服务器可以使用用户标识信息来生成(或以其他方式获取)表示用户的加密的身份的用户令牌。在一些示例中,用户令牌还可以包括指派的值的至少一部分(例如,加标记的域、意图和/或槽)。在特定示例中,语言理解服务器可以包括或有权访问令牌发行机构,该令牌发行机构生成并且向语言理解服务器发出用户令牌。令牌发行机构可以可操作以在指定的时间段之后使用户令牌过期和/或基于指定的标准来撤销用户令牌。
在操作306,语言理解服务器可以访问个性化服务器。在各方面中,语言理解服务器可以使用在操作304中描述的用户令牌来访问个性化服务器上的个人数据。例如,个性化服务器可以使用接收的用户令牌来认证与用户令牌对应的用户。如果用户已经被成功认证,则个性化服务器可以使该用户的个人数据的至少一部分可以被语言理解服务器访问。在特定示例中,使个人数据可访问可以包括在数据存储库中搜索一个或多个域(例如,“联系人”、“日历”和/或“音乐”域)和/或字符串(例如,“May”),解密在搜索到的数据中找到的个人数据,以及将解密的数据的(例如,物理和/或逻辑)位置提供给语言理解服务器。在另一示例中,使个人数据可访问可以附加地或备选地包括将搜索到的个人数据提取到数据结构(例如,散列、阵列等),解密数据结构中的个人数据,以及将数据结构提供给语言理解服务器。在这样的示例中,搜索数据存储库可以包括将用户令牌(或由用户令牌表示的信息)与数据存储库中的标识信息(例如,用户名、用户ID等)和相关联的个人数据进行匹配。
在操作308,语言理解服务器可以处理在个性化服务器上被访问的个人数据。在各方面中,语言理解服务器可以搜索访问的个人数据以解析(例如,验证)访问的个人数据内是否存在一个或多个标记值。例如,当语言理解服务器确定“May”最有可能涉及“联系人”域时,则语言理解服务器可以搜索访问的个人数据以确定字符串“May”是否出现在与一个或多个域相关联的数据中。在特定示例中,语言理解服务器可以确定只有“联系人”域包括与字符串“May”对应的条目或值(例如,contact_name=“May Lee”)。作为结果,语言理解服务器可以将临时指派(例如,域=“联系人”,意图=“地点呼叫”,槽=“May Lee”)修改为最终指派。在另一示例中,语言理解服务器可以确定只有“音乐”域包括与字符串“May”对应的条目或值(例如,song_name=“May Pleas”)。作为结果,语言理解服务器可以修改临时指派(例如,域=“联系人”,意图=“地点呼叫”,槽=“May”),从而使得域被指派“音乐”,意图被指派“播放歌曲“,并且槽被指派“May Pleas”。修改的临时指派可以被视为最终指派。在又一示例中,语言理解服务器可以确定“联系人”、“日历”和“音乐”域包括与字符串“May”对应的条目或值(例如,contact_name=“May Lee”,month=“May”并且song_name=“MayPleas”)。作为结果,语言理解服务器可能无法对临时指派做出确定性判断,并且临时指派可能需要被进一步处理(例如,使用LU模型)。
在其他方面中,语言理解服务器可以搜索访问的个人数据以对数据请求中的特征的一个或多个潜在值进行分析和/或排名。例如,语言理解服务器可以确定数据请求的域可以对应于多个值中的一个(例如,联系人、电影、日历)。作为结果,语言理解服务器可以使用个人数据来解析在访问的个人数据内是否存在多个值中的一个或多个值。这一解析过程的输出可以被提供给排名组件以对数据请求的一个或多个特征进行确定和/或排名。在示例中,排名组件可以使用信号数据、用户信息和/或设备信息来确定排名。在特定示例中,排名组件可以使用个人数据来在多个值之间进行仲裁。仲裁可以包括标识个人数据中的条目以及将一个或多个规则和/或规则集应用于标识的条目。例如,排名组件可以使用通信域中的应用数据(例如,电子邮件数据、电话呼叫数据、消息收发数据等)来确定在过去三个月中联系人“May Lee”尚未被联系;使用通知域中的应用数据(例如,日历数据、警报数据、通知数据等)来确定该月当前是十二月,并且当前针对五月份没有安排事件;以及使用多媒体域中的应用数据(例如,视频数据、图像数据、音乐数据、消息收发数据等)来确定歌曲“MayPleas”已经在上周使用客户端设备上的音乐应用被播放了20次并且对应的音乐视频已经在过去两周内使用客户端设备上的视频流应用被播放了两次。因此,排名组件可以将“音乐”排名为最可能的域,将“联系人”排名为第二最可能的域,将“日历”排名为最不可能的域。在至少一个示例中,语言理解服务器的排名组件或另一组件然后可以向域指派“音乐”。
在操作310,语言理解服务器可以生成最终查询。在各方面中,语言理解服务器可以将临时指派、最终指派和/或数据请求信息作为输入提供给语言理解服务器可访问的一个或多个LU模型。在示例中,LU模型可以使用输入作为用于域分类、意图检测和/或槽标记的特征。例如,如果针对“联系人”域的一组最终指派(例如,域=“联系人”,意图=“打电话”,槽=“May Lee”)被输入到LU模型中,则LU模型可以使用“联系人”作为域的特征,使用“打电话”作为意图的特征,并且使用“May Lee”作为槽的特征。在一些方面中,作为结果,LU模型可以输出最终查询,包括必要特征、格式化和/或用来执行最终查询的指令。最终查询可以由客户端设备、语言理解服务器的组件或者由语言理解服务器或客户端设备可访问的查询处理组件执行。在一个示例中,最终查询可以包括使得客户端设备能够播放所请求的歌曲的指令(例如,打开音乐应用,播放歌曲等)和/或信息(例如,song_name=“MayPleas”)。在另一示例中,最终查询可以包括信息(例如,电话号码=555-555-5555)、数据请求的元素(例如,“Get May”)和/或最终查询的元素(例如,呼叫May Lee)。在其他方面中,作为结果,LU模型可以使用指派的特征来执行确定的意图。在特定示例中,输入可以包括作为域的特征的“电影”、作为意图的特征的“查找电影”、以及作为槽的特征的“新版本”。LU模型可以使用输入来查询搜索引擎或数据储存库以获取包括最近发行的电影标题的结果集,并且可以将结果集传输给发出请求的客户端设备。在另一示例中,输入可以包括作为域的特征的“日历”、作为意图的特征的“显示事件”以及作为槽的特征的“May”。LU模型可以使用输入来查询日历应用或数据存储库以获取结果集,包括五月份的约会和/或会议。如在操作304中描述的,结果集可以被传输给客户端设备并且显示在查询UI或API上。
在可选操作312中,可以使用输入信号来训练LU模型。在一些方面中,可以使用临时指派、最终指派、排名信息和/或最终查询来训练LU模型。例如,LU模型可以使用最终指派来标识和/或确定针对特定查询、查询类型、域等而被预期的输入。在特定示例中,LU模型可以确定“地点呼叫”意图在从用户接收的95%的查询中与“联系人”域相关联。因此,LU模型可以向“联系人”域指派权重或得分(例如,1.00中的0.95),并且向所有其他域指派权重或得分(例如,1.00中的0.05)。这一指派的权重或得分可以指示与包括“地点呼叫”意图的查询对应的标记的槽值将位于用户的个人数据的“联系人”域中的较高概率。因此,LU可以建立或修改语言理解服务器的搜索策略,以在接收到这样的查询时在其他域之前搜索“联系人”域。
在另一示例中,LU模型可以接收存在于一个或多个域的多个条目中的输入(例如,“Call May”)(例如,“联系人”域,联系人姓名=“May Lee”,“May Winters”,“Aunt May”和“May”(指代“Michael May”))。LU模型可以使用行为信息、来自其他域的数据等来向每个联系人姓名指派概率得分。在特定示例中,LU模型可以搜索最近的呼叫历史、最近的消息文件夹和旅行日志。搜索可以揭示,在过去一个月中,用户已经与May Winters联系了二十次(例如,经由电话、即时消息、电子邮件等),访问了May Winters的住所三次,联系了May Lee两次,并且未联系或拜访Aunt May和Michael May。因此,LU模型可以向每个联系人指派得分,从而使得May Winters联系人的得分高于May Lee联系人的得分,May Lee联系人的得分高于Aunt May和Michael May联系人的得分。因此,当LU接收到包括“地点呼叫”意图和字符串“May”的临时指派时,LU可以根据指派的得分(其可以由LU模型存储)来修改临时指派,或者生成并且向客户端设备提供可能的指派(例如,联系人)的有序列表。
在又一示例中,LU模型可以接收与多于一个域对应的和/或具有多于一个槽的输入。在特定示例中,可以由语言理解服务器处理查询“今晚呼叫May”,从而使得域被临时指派“联系人”,意图被临时指派“地点呼叫”,第一槽被临时指派“May”并且第二槽被临时指派“今晚”。例如,LU模型可以对使用和/或行为信息、先前的查询和/或结果集等进行确定临时指派的槽中的一个与指派的意图而不是另一临时指派的槽更加相关。例如,LU模型可以确定槽特征(例如,今晚)比实体槽特征(例如,May)更清楚地指示用户意图。这一确定可以包括标识请求要在“今晚”(或稍后)被执行的动作的查询更有可能对应于“设置提醒”或“设置警报”意图而不是“地点呼叫”意图。作为结果,LU模型可以向相关联的域、意图和/或槽指派得分以指示这种可能性。作为示例,当检测到槽特征时,LU模型可以向“设置提醒”意图指派1.00中的0.75得分(指示75%的概率),向“设置警报”意图指示1.00中的0.50得分(指示50%的概率),并且向“地点呼叫”意图指派1.00中的0.05得分(指示5%的概率)。因此,LU模型可以使用得分来确定要被用于输出最终查询或产生结果集的特征。
在其他方面中,可以使用训练数据来训练LU模型。例如,LU模型可以使用训练数据来标识和/或确定针对特定查询、查询类型、域等而被预期的输入。训练数据可以包括随机生成的个人信息,并且可以被用于训练LU模型而不使用用户的个人数据。在示例中,LU模型可以接收最终查询作为输入,最终查询包括在域被指派“联系人”,意图被指派“地点呼叫”,并且槽被指派“Tom”的情况中进行训练。尽管字符串“Tom”可能不存在于用户的联系人列表中,但是LU模型可以确定“Tom”存在于训练数据的“联系人”域中。作为结果,LU模型可以将“地点呼叫”意图与“联系人”域相关联,从而使得包括“地点呼叫”意图的查询的标记槽是用户的联系人列表中的联系人的概率很高(例如,90%的可能性)。此外,LU模型可以根据概率来向域和/或槽指派得分。因此,LU可以建立或修改语言理解服务器的搜索策略,以在接收到这样的查询时在其他域之前搜索“联系人”域。
在各方面中,上述指派的权重和/或得分可以被用于确定一个或多个域、意图和槽值之间的可能相关性。在示例中,这一确定可以包括使用一个或多个算法。例如,得分可以被输入到语言理解服务器可访问的算法。该算法可以被用于确定最相关的最终查询、与特定域、意图和/或槽值相关联的最可能的值等。在特定示例中,这一算法可以被用于通过从具有最高得分的域、意图和/或槽选择值来确定一个或多个输入特征的最可能值。在另一示例中,这一算法可以向一个或多个特征指派加权值以确定最可能的结果。作为示例,对于查询“今晚呼叫May”,“日历”域可以被指派概率得分1.00中的0.75,“音乐”域可以被指派概率得分1.00中的0.15,“设置提醒”意图可以被指派概率得分1.00中的0.75,“场所呼叫”意图可以被指派概率得分1.00中的0.25,“播放歌曲”意图可以被指派概率得分1.00中的0.10中,“May Lee”槽可以被指派概率得分0.40,并且“Aunt May”槽可以被指派概率得分0.10。该算法可以基于最高总分(1.90)来向“日历”域(0.75)、“设置提醒”意图(0.75)和“MayLee”槽(0.40)的组合指派权重3.0中的3.0,从而使得加权得分为5.70(例如,3.0*1.90)。该算法可基于总分(3.0)来向“日历”域(0.75)、“设置提醒”意图(0.75)和“Aunt May”槽(1.60)的组合指派权重3.0中的2.5,从而使得加权得分为4.0(例如,1.6*2.5)。该算法还可以基于总分(0.45)来向“音乐”域(0.15)、“播放歌曲”意图(0.10)和“Aunt May”槽(0.10)的组合指派权重3.0中的1.0,从而使得加权得分为0.45(例如,0.45*1.0)。基于这些加权得分(例如,5.70、4.0和0.45),该算法可以计算和/或确定特定查询的特征的可能值(例如,“今晚呼叫May”)是用于域的“日历”、用于意图的“设置提醒”以及用于槽的“May Lee”。
图4示出了如本文中描述的从客户端设备的角度来对自然语言理解系统进行个性化的示例方法。示例性方法400开始于操作402,在操作402,可以经由客户端设备的用户接口(诸如用户接口212)接收用户信号数据和相关联的信息。在各方面中,客户端设备可以处理信号数据并且将其存储在客户端设备可访问的数据存储库中。处理信号数据可以包括剖析信号数据和/或按照用户标识、应用、域、时间段等来对信号数据进行分组。例如,客户端设备的用户可以从客户端设备的用户接口访问文字处理应用和社交媒体应用。客户端设备可以将新的和/或修改的文档存储在被配置为存储文字处理应用的数据存储库中,并且可以将联系信息、事件数据和/或行为数据存储在被配置为存储来自各种应用的数据的数据存储库中。
在操作404,可以将信号数据上传到个性化服务器。在各方面中,客户端设备可以使用诸如数据上传引擎214的上传组件来将信号数据上传到个性化服务器。在一些示例中,上传组件可以访问一个或多个客户端设备可访问的一个或多个数据存储库以检索用户的信号数据。上传组件可以检索特定用户的全部数据或者仅检索在指定时间段内(例如,自从上次信号数据被上传以来)已经被修改的数据。在其他示例中,上传组件可以在一个或多个客户端设备上访问和/或接收多个用户的信号数据。上传组件还可以访问标识(多个)用户和/或(多个)客户端设备的客户端设备上的信息。在特定示例中,上传组件可以将检索到的信号数据与标识信息配对或以其他方式相关联,并且可以将配对的数据传输给个性化服务器。在一些方面中,上传组件可以根据定义的时间表周期性地或者在接收到手动指令时执行上传。
在操作406,可以由客户端设备接收查询。在各方面中,用户可以经由诸如查询API216的查询UI或API向在客户端设备上执行的应用(例如,个人数字助理、网页浏览器等)提交查询。查询API可以剖析接收的查询以标识查询的类别、主题和/或域。查询API可以使用用户的标识(例如,用户ID、用户名等)将查询和/或查询的标识的部分与标识相关联。查询API然后可以将接收的查询和相关联的信息传输给语言理解服务器以用于处理和解析。
在操作408,可以由客户端设备接收结果集。在各方面中,查询API可以从语言理解服务器或从语言理解服务器可访问的服务或设备接收查询结果。在一些示例中,查询结果可以包括与解析查询的数据对应的数据集。例如,查询结果可以包括若干移动时间和剧院位置。在其他示例中,查询结果可以包括允许客户端设备满足查询的指令。例如,查询结果可以包括用于客户端设备执行查询的必要特征、格式和/或指令。在一些方面中,查询API将查询结果或使用查询结果生成的数据呈现给用户。
图5示出了如本文中描述的从个性化设备的角度来对自然语言理解系统进行个性化的示例方法。示例性方法500开始于操作502,在操作502,由个性化服务器接收个性化数据。在各方面中,个人数据可以从一个或多个客户端设备和/或对客户端设备可访问的数据存储库被接收。个人数据可以包括一个或多个用户的信号数据和/或标识信息。在一些示例中,诸如摄取引擎222的数据摄取组件可以接收个人数据。
在操作504,可以处理个人数据。在一些方面中,数据摄取组件可以处理接收的个人数据。处理个人数据可以包括按照用户、查询主题、查询域等来解析个人数据。在示例中,数据摄取组件可以将剖析的数据存储到诸如数据存储库224的数据存储库中。剖析的数据可以根据在解析期间被标识的一个或多个类别(例如,用户、查询主题、查询域等)来被分组和存储。例如,包括来自文字处理应用和社交媒体应用的数据的个人数据可以被插入到个性化服务器可访问的数据库中。数据库可以包括用于文字处理应用数据的一个或多个表格以及用于社交媒体应用数据的一个或多个表格。可以使用例如与特定用户相关联的主键、日期或其某种组合来关联每个表中的数据。在一些方面中,当数据摄取组件接收到个人数据时,可以对个人数据加密,从而使得个人数据在被存储在数据存储库中之前被加密。在其他方面中,可以在存储在数据存储库中之后,通过与数据存储库相关联的加密组件来加密个人数据。
在操作506,个性化服务器可以接收针对个人数据的数据请求。在各方面中,个性化服务器可以从例如客户端设备或语言理解服务器接收针对个人数据的数据请求。数据请求可以包括查询、一个或多个标记的术语和/或用户和/或客户端设备的标识信息。在一些示例中,诸如请求处理引擎226等请求处理组件可以剖析数据请求以标识所包括的数据。例如,请求处理组件可以标识数据请求内的用户令牌。在一些方面中,个性化服务器可以使用用户令牌来尝试认证生成数据请求的用户。在这样的示例中,如果用户令牌不能被认证,则请求设备(例如,客户端设备或语言理解服务器)被拒绝访问个人数据。如果用户令牌可以被认证,则请求设备可以被提供个人数据。
在操作508,可以访问个人数据。在各方面中,剖析的数据请求数据可以被用于搜索包括一个或多个数据存储库以获取用户的个人数据。例如,请求处理组件可以使用标识信息(例如,用户ID)和/或标识的查询域(例如,联系人)来标识与用户的个人数据的至少一部分对应的表格。在各方面中,在数据存储库中被标识的个人数据可以被请求设备访问。在特定示例中,请求处理组件可以解密(或导致解密)个人数据,作为使请求设备可访问个人数据的一部分。在一些方面中,可以将标识的数据临时标记为发出请求的用户可读,从而使得请求设备可以自由地提交关于用户的个人数据的查询。在其他方面中,可以使用在数据存储库中被标识的个人数据来填充可以被传输给请求设备的数据结构(例如,数组、散列等)。在这样的方面中,个性化服务器的数据存储库可以不被配置为由请求设备直接查询。在又一些方面中,个性化服务器可以向请求设备传输已经在数据存储中标识了搜索到的数据的确认。
图6示出了如本文中描述的从语言理解设备的角度来对自然语言理解系统进行个性化的示例方法。示例性方法600开始于操作602,在操作602,由语言理解设备接收数据请求。在各方面中,数据请求可以由诸如查询处理引擎242的查询处理组件接收。查询处理组件可以是一个或多个客户端设备和/或个性化服务器可访问的。在一些示例中,数据请求可以包括用户和/或一个或多个客户端设备的查询和/或标识信息。
在操作604,语言理解设备可以处理数据请求。在各方面中,语言理解设备可以使用诸如查询处理组件的组件来将数据请求剖析为用于一个或多个域、意图和/或槽的用户和/或客户端标识信息和值。在一些示例中,可以使用剖析的数据来确定值与对应的域、意图和/或槽之间的可能的关联。例如,剖析的数据可以被用作用于向个人数据中的一个或多个特征指派统计权重和/或概率的算法的输入或与该算法结合而被使用。在一些方面中,然后可以向对应的特征临时(例如,暂时)指派(例如,加标记)可能的值。然后可以将标识信息和临时指派的值的一部分传输给个性化服务器。
在操作606,语言理解设备可以访问个人数据。在各方面中,查询处理组件可以使用访问的个人数据来确定在操作604处被指派的临时值的准确性。例如,语言理解设备可以确定在访问的个人数据中是否存在一个或多个临时指派的值。如果确定该值存在,则语言理解设备可以将临时值转换为最终值或非临时值,从而验证指派的准确性。如果确定该值不存在,则语言理解设备可以对临时值执行附加处理。例如,语言理解设备可以使用在操作604处描述的数据请求数据和/或算法来向个人数据中的一个或多个对应的特征重新指派一个或多个临时值。
在操作608,可以将指派的值提供给语言理解(LU)模型。在各方面中,诸如(多个)NLU模型244的LU模型可以使用指派的值作为用于域分类、意图检测和/或槽标记的输入特征。在一些示例中,LU模型可以使用输入来查询搜索引擎或数据储存库以获取结果集以满足搜索查询。例如,LU模型可以使用输入来查询搜索引擎、内容提供者等。在其他示例中,LU模型可以使用输入来生成最终查询,包括必要特征、格式化和/或用来执行最终查询的指令。在这样的示例中,最终查询可以被定制为在请求设备上被执行。
在操作610,语言理解设备可以向请求设备提供输出。在各方面中,LU模型可以向语言理解设备的组件(诸如查询处理引擎242)提供结果集、最终查询等。输出可以被传输给客户端设备并且由能够执行最终查询和/或将结果集呈现给用户的组件接收。
在可选操作612,可以训练LU模型。在各方面中,LU模型可以由训练组件(诸如训练引擎246)使用临时指派、最终指派和/或最终查询训练。在一些示例中,LU模型可以使用最终指派来标识和/或确定针对特定查询、查询类型、域等而被预期的输入,和/或确定一个或多个指派值的可能准确性。在其他示例中,可以使用训练数据来训练LU模型。训练数据可以包括随机生成的个人信息,并且可以不包括来自请求用户的信号数据。在一些方面中,可以根据手动指令、周期性地或根据定义的时间表来训练LU模型。例如,可以在语言理解设备没有主动处理接收的用户请求的任何时间训练LU模型。作为另一示例,当语言理解设备处于低使用或维护模式时,可以训练LU模型。
图7至图10和相关联的描述提供了其中可以实践本公开内容的各方面的各种操作环境的讨论。然而,关于图7至图10示出和讨论的设备和系统是出于示例和说明的目的,并且不限制可以被用于实践本文中描述的本公开内容的各方面的大量计算设备配置。
图7是示出了可以用以实践本公开内容的各方面的计算设备700的物理组件(例如,硬件)的框图。下面描述的计算设备组件可以具有用于在服务器计算设备106(或服务器计算设备308)上实现统一消息收发应用的计算机可执行指令,包括可以被执行以采用本文中公开的方法的统一消息收发应用720的计算机可执行指令。在基本配置中,计算设备700可以包括至少一个处理单元702和系统存储器704。取决于计算设备的配置和类型,系统存储器704可以包括但不限于易失性存储器(例如,随机存取存储器)、非易失性存储器(例如,只读存储器)、闪存或这样的存储器的任何组合。系统存储器704可以包括操作系统705和适合于运行统一消息收发应用720的一个或多个程序模块706,诸如关于图3的一个或多个组件,并且特别是上下文组件711、提取组件713、变换组件715或呈现组件717。操作系统705例如可以适合于控制计算设备700的操作。此外,本公开内容的实施例可以结合图形库、其他操作系统或任何其他应用而被实践,并且不限于任何特定应用或系统。这一基本配置在图7中通过虚线708内的那些组件而被示出。计算设备700可以具有附加的特征或功能。例如,计算设备700还可以包括附加数据存储设备(可移除和/或不可移除),诸如例如磁盘、光盘或磁带。这样的附加存储装置在图7中通过可移除存储设备709和不可移除存储设备710而被示出。
如上所述,多个程序模块和数据文件可以被存储在系统存储器704中。当在处理单元702上被执行时,程序模块706(例如,统一消息收发应用720)可以执行各种过程,包括但不限于本文中所描述的各方面。根据本公开内容的各方面可以被使用的并且特别地用于提供统一消息收发平台的其他程序模块可以包括上下文组件711、提取组件713、变换组件715或呈现组件717等。
此外,本公开内容的实施例可以在包括分立电子元件的电路、包含逻辑门的封装或集成电子芯片中、利用微处理器的电路、或者包含电子元件或微处理器的单个芯片上被实践。例如,可以经由片上系统(SOC)来实践本公开内容的实施例,其中图7中所示的每个或多个组件可以被集成到单个集成电路上。这样的SOC器件可以包括一个或多个处理单元、图形单元、通信单元、系统虚拟化单元和各种应用功能,所有这些都作为单个集成电路被集成(或“烧”)到芯片基底上。当经由SOC进行操作时,本文中描述的关于客户端切换协议的能力的功能可以经由与计算设备700的其他组件集成在单个集成电路(芯片)上的应用专用逻辑而被操作。本公开内容的实施例还可以使用能够执行逻辑操作的其他技术而被实践,诸如例如AND、OR和NOT,包括但不限于机械、光学、流体和量子技术。另外,本公开内容的实施例可以在通用计算机内或在任何其他电路或系统内被实践。
计算设备700还可以具有一个或多个输入设备712,诸如键盘、鼠标、笔、声音或语音输入设备、触摸或滑动输入设备等。也可以包括(多个)输出设备714,诸如显示器、扬声器、打印机等。上述设备是示例,并且可以使用其他设备。计算设备700可以包括一个或多个通信连接716以允许与其他计算设备750通信。合适的通信连接716的示例包括但不限于射频(RF)发射器、接收器和/或收发器电路;通用串行总线(USB)、并行和/或串行端口。
如本文中使用的术语计算机可读介质可以包括计算机存储介质。计算机存储介质可以包括以用于存储信息(诸如计算机可读指令、数据结构或程序模块)的任何方法或技术而被实现的易失性和非易失性可移除和不可移除介质。系统存储器704、可移除存储设备709和不可移除存储设备710都是计算机存储介质示例(例如,存储器存储)。计算机存储介质可以包括RAM、ROM、电可擦除只读存储器(EEPROM)、闪存或其他存储器技术、CD-ROM、数字多功能盘(DVD)或其他光存储器、盒式磁带、磁带、磁盘存储或其他磁性存储设备、或者可以被用于存储信息并且可以由计算设备700访问的任何其他制品。任何这样的计算机存储介质可以是计算设备700的一部分。计算机存储介质不包括载波或其他传播或调制的数据信号。
通信介质可以通过计算机可读指令、数据结构、程序模块或者诸如载波或其他传输机制等调制的数据信号中的其他数据而被实施,并且包括任何信息传递介质。术语“调制的数据信号”可以描述具有以使得能够在信号中对信息进行编码的方式而被设置或改变一个或多个特性的信号。作为示例而非限制,通信介质可以包括诸如有线网络或直接有线连接等有线介质、以及诸如声学、射频(RF)、红外线和其他无线介质等无线介质。
图8A和图8B示出了可以用以实践本公开内容的实施例的移动计算设备800,例如移动电话、智能电话、可穿戴计算机(诸如智能手表)、平板计算机、膝上型计算机等。在一些方面中,客户端可以是移动计算设备。参考图8A,示出了用于实现这些方面的移动计算设备800的一个方面。在基本配置中,移动计算设备800是具有输入元件和输出元件的手持式计算机。移动计算设备800通常包括允许用户向移动计算设备800中输入信息的显示器805和一个或多个输入按钮810。移动计算设备800的显示器805还可以用作输入设备(例如,触摸屏显示器)。如果包括,则可选的侧面输入元件815允许另外的用户输入。侧输入元件815可以是旋转开关、按钮或任何其他类型的手动输入元件。在备选方面中,移动计算设备800可以并入更多或更少的输入元件。例如,在一些实施例中,显示器805可能不是触摸屏。在又一备选实施例中,移动计算设备800是便携式电话系统,诸如蜂窝电话。移动计算设备800还可以包括可选的小键盘835。可选的小键盘835可以是物理小键盘或在触摸屏显示器上生成的“软”小键盘。在各种实施例中,输出元件包括用于示出图形用户界面(GUI)、视觉指示符820(例如,发光二极管)和/或音频换能器825(例如,扬声器)的显示器805。在一些方面中,移动计算设备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上运行,包括用于提供如本文中描述的统一消息收发平台(例如,搜索引擎、提取器模块、相关性排名模块、答案评分模块等)的指令。
系统802具有电源870,电源870可以被实现为一个或多个电池。电源870还可以包括外部电源,诸如补充电池或对电池再充电的AC适配器或电动对接支架。
系统802还可以包括执行传输和接收射频通信的功能的无线电接口层872。无线电接口层872经由通信运营商或服务提供商促进系统802与“外部世界”之间的无线连接。去往和来自无线电接口层872的传输在操作系统864的控制下进行。换言之,无线电接口层872接收的通信可以经由操作系统864被传播到应用866,反之亦然。
视觉指示符820可以被用于提供视觉通知,和/或音频接口874可以被用于经由音频换能器825产生可听通知。在所示实施例中,视觉指示符820是发光二极管(LED),并且音频换能器825是扬声器。这些设备可以被直接耦合到电源870,从而使得当被激活时,它们保持开启持续由通知机制规定的持续时间,即使处理器860和其他组件可能关闭以保存电池电力。LED可以被编程为无限期地保持开启,直到用户采取措施指示设备的开机状态。音频接口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、web门户924、邮箱服务926、即时消息收发存储库928或社交联网930来存储各种文档。统一消息收发应用920可以由与服务器设备902通信的客户端采用,和/或统一消息收发应用920可以由服务器设备902采用。服务器设备902可以通过网络915以提供数据去往和来自客户端计算设备,诸如个人计算机904、平板计算设备906和/或移动计算设备908(例如,智能电话)。举例来说,以上关于图1至图6描述的计算机系统可以在个人计算机904、平板计算设备906和/或移动计算设备908(例如,智能电话)中实施。除了接收可用于在图形发起系统处预处理或在接收计算系统处后处理的图形数据,计算设备的这些实施例中的任何一个可以从存储库916获取内容。
图10示出了可以执行本文中公开的一个或多个方面的示例性平板计算设备1000。此外,本文中描述的各方面和功能可以在分布式系统(例如,基于云的计算系统)上操作,其中应用功能、存储器、数据存储和检索以及各种处理功能可以通过分布式计算网络(诸如互联网或内联网)彼此远离地操作。用户界面和各种类型的信息可以经由板载计算设备显示器或者经由与一个或多个计算设备相关联的远程显示单元而被显示。例如,用户界面和各种类型的信息可以在用户界面和各种类型的信息被投影到的墙面上被显示和交互。与可以实践本发明的实施例的多种计算系统的交互包括键击输入、触摸屏输入、语音或其他音频输入、手势输入(其中相关联的计算设备配备有用于捕获和解释用于控制计算设备的功能的用户手势的检测(例如,相机)功能)等。
上面参考根据本公开内容的各方面的方法、系统和计算机程序产品的框图和/或操作说明来描述本公开内容的各方面。在任何流程图中所示的框中记录的功能/动作可以不按顺序发生。例如,取决于所涉及的功能/动作,连续示出的两个框实际上可以基本上同时执行,或者框有时可以按照相反的顺序而被执行。
本申请中提供的一个或多个方面的描述和说明并非旨在以任何方式限制或约束本公开内容的范围。本申请中提供的方面、示例和细节被认为足以传达拥有权并且使得其他人能够制作和使用所要求保护的公开内容的最佳模式。所要求保护的公开内容不应当被解释为限于本申请中提供的任何方面、示例或细节。无论是否组合地或单独地被示出和描述,旨在有选择地包括或省略各种特征(结构和方法两者)以产生具有特定特征组的实施例。被提供本申请的描述和说明的本领域技术人员可以想到落入在本申请中被实施的总体发明构思的更宽泛方面的精神内的变化、修改和备选方面,这些方面没有偏离所要求保护的公开内容的更宽范围。

Claims (19)

1.一种用于执行个性化自然语言理解的系统,所述系统包括:
至少一个处理器;以及
被耦合到所述至少一个处理器的存储器,所述存储器包括计算机可执行指令,所述计算机可执行指令在由所述至少一个处理器执行时,使得所述至少一个处理器执行过程,所述过程包括:
在一个或多个设备处接收请求,所述请求至少包括初始查询和用户标识符ID;
剖析所述初始查询以标识与域、意图或槽中的至少一项相关联的多个值;
由所述一个或多个设备基于所述多个值中的第一值来向所述初始查询指派第一临时域,并且基于所述多个值中的第二值来向所述初始查询指派第二临时域;
基于所述用户ID来评估存储所述用户的个人数据的个性化服务器,其中所述个人数据包括与所述用户相关联的、包括用户简档数据或用户信号数据中的至少一项的信息;
使用所述个人数据来解析用于所述多个值的一个或多个槽;
对所述多个值排名,其中所述排名包括使用解析的所述一个或多个槽来确定最可能的值;
基于排名的所述多个值,向所述第一临时域指派第一得分,并且向所述第二临时域指派第二得分,其中所述第一得分高于所述第二得分;
基于所述第一得分高于所述第二得分,将所述第一临时域选择为最终域;
基于所述最终域来从所述初始查询生成最终查询;
向语言理解模型提供所述最终查询以生成响应;以及
向所述用户提供所述响应。
2.根据权利要求1所述的系统,还包括:从客户端设备向所述个性化服务器上传所述个人数据,其中所述个人数据包括以下中的至少一项:个人联系人、用户文件和文档、用户位置、用户应用、用户社交媒体信息、用户兴趣、用户日历信息、用户事件数据以及用户或客户端标识信息。
3.根据权利要求1所述的系统,还包括:
向相应的域、意图或槽临时指派所述多个值中的一个或多个值。
4.根据权利要求3所述的系统,其中访问所述个人数据包括:
在所述个人数据中搜索与临时指派的所述值中的一个或多个值的匹配;
标识一个或多个匹配;以及
使与所述一个或多个匹配相关联的所述数据对于所述语言理解模型设备可访问。
5.根据权利要求4所述的系统,还包括,对于与所述个性化服务器上的所述个人数据匹配的每个临时指派的值,将临时指派的所述值转换为最终值。
6.根据权利要求1所述的系统,其中所述用户ID被用来生成令牌,所述令牌表示所述用户的加密的身份,并且其中所述令牌被传输给所述个性化服务器。
7.根据权利要求1所述的系统,其中评估所述个性化服务器包括使用令牌来认证所述个性化服务器上的所述用户。
8.根据权利要求1所述的系统,其中使用所述个人数据包括使用所述语言理解模型来确定并且指派所述个人数据的一个或多个特征,所述一个或多个特征对应于域、意图或槽中的至少一项。
9.根据权利要求8所述的系统,其中确定所述个人数据的一个或多个特征包括使用以下各项中的至少一项:精确匹配、部分匹配、n-gram匹配、匹配的数目或非零实体匹配。
10.根据权利要求1所述的系统,其中生成对所述最终查询的所述响应包括从搜索引擎取回结果集,所述结果集包括满足所述最终查询的数据。
11.根据权利要求1所述的系统,其中所述响应包括可操作以支持客户端设备满足所述请求的指令的集合。
12.根据权利要求1所述的系统,还包括:
使用所述个人数据来训练所述语言理解模型。
13.根据权利要求12所述的系统,其中所述训练包括由所述语言理解模型生成与所述个人数据中的一个或多个值对应于用于所述查询的域、意图或槽中的至少一项的概率对应的一个或多个得分。
14.根据权利要求11所述的系统,还包括:
使用训练数据来训练所述语言理解模型,所述训练数据包括假用户信息;
其中所述语言理解模型当来自所述用户的所述请求未被处理时被训练。
15.一种用于执行个性化自然语言理解的方法,所述方法包括:
在一个或多个设备处接收请求,所述请求至少包括初始查询和用于用户的标识信息;
剖析所述初始查询以标识与域、意图或槽中的至少一项相关联的多个值;
由所述一个或多个设备基于所述多个值中的第一值来向所述初始查询指派第一临时域,并且基于所述多个值中的第二值来向所述初始查询指派第二临时域;
基于所述标识信息来评估存储所述用户的个人数据的个性化服务器,其中所述个人数据包括与所述用户有关的、包括用户简档数据或用户信号数据中的至少一项的信息;
使用所述个人数据来解析用于所述多个值的一个或多个槽;
对所述多个值排名,其中所述排名包括使用解析的所述一个或多个槽来确定最可能的值;
基于排名的所述多个值,向所述第一临时域指派第一得分,并且向所述第二临时域指派第二得分,其中所述第一得分高于所述第二得分;
基于所述第一得分高于所述第二得分,将所述第一临时域选择为最终域;
基于所述最终域来生成最终查询;
由语言理解模型使用所述最终查询以生成响应;以及
向所述用户提供所述响应。
16.根据权利要求15所述的方法,还包括:
向相应的域、意图或槽临时指派所述多个值中的一个或多个值。
17.根据权利要求16所述的方法,其中访问所述个人数据包括:
在所述个人数据中搜索与临时指派的所述值中的一个或多个值的匹配,
标识一个或多个匹配;以及
使与所述一个或多个匹配相关联的数据对于所述个性化服务器可访问。
18.根据权利要求15所述的方法,其中使用所述个人数据包括使用所述语言理解模型来确定并且指派所述个人数据的一个或多个特征,所述一个或多个特征对应于域、意图或槽中的至少一项。
19.一种计算机可读存储介质,在其上存储有计算机可执行指令,所述计算机可执行指令在由处理器执行时,使得计算机系统:
接收请求,所述请求至少包括初始查询和用户标识符ID;
剖析所述初始查询以标识与域、意图或槽中的至少一项相关联的多个值;
基于所述多个值中的第一值来向所述初始查询指派第一临时域,并且基于所述多个值中的第二值来向所述初始查询指派第二临时域;
基于所述用户ID来评估存储所述用户的个人数据的个性化服务器,其中所述个人数据包括与所述用户相关联的、包括用户简档数据或用户信号数据中的至少一项的信息;
使用所述个人数据来解析用于所述多个值的一个或多个槽;
对所述多个值排名,其中所述排名包括使用解析的所述一个或多个槽来确定最可能的值;
基于排名的所述多个值,向所述第一临时域指派第一得分,并且向所述第二临时域指派第二得分,其中所述第一得分高于所述第二得分;
基于所述第一得分高于所述第二得分,将所述第一临时域选择为最终域;
基于所述最终域来从所述初始查询生成最终查询;
向语言理解模型提供所述最终查询以生成响应;以及
向所述用户提供所述响应。
CN201680072630.7A 2015-12-11 2016-11-28 个性化自然语言理解系统 Active CN108369596B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/966,031 2015-12-11
US14/966,031 US11250218B2 (en) 2015-12-11 2015-12-11 Personalizing natural language understanding systems
PCT/US2016/063802 WO2017100023A1 (en) 2015-12-11 2016-11-28 Personalizing natural language understanding systems

Publications (2)

Publication Number Publication Date
CN108369596A CN108369596A (zh) 2018-08-03
CN108369596B true CN108369596B (zh) 2022-05-06

Family

ID=57539645

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201680072630.7A Active CN108369596B (zh) 2015-12-11 2016-11-28 个性化自然语言理解系统

Country Status (4)

Country Link
US (1) US11250218B2 (zh)
EP (1) EP3387555A1 (zh)
CN (1) CN108369596B (zh)
WO (1) WO2017100023A1 (zh)

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10223453B2 (en) * 2015-02-18 2019-03-05 Ubunifu, LLC Dynamic search set creation in a search engine
US10163436B1 (en) * 2016-09-28 2018-12-25 Amazon Technologies, Inc. Training a speech processing system using spoken utterances
US10565989B1 (en) * 2016-12-16 2020-02-18 Amazon Technogies Inc. Ingesting device specific content
US11074280B2 (en) * 2017-05-18 2021-07-27 Aiqudo, Inc Cluster based search and recommendation method to rapidly on-board commands in personal assistants
US10699706B1 (en) * 2017-09-26 2020-06-30 Amazon Technologies, Inc. Systems and methods for device communications
WO2019071607A1 (zh) * 2017-10-09 2019-04-18 华为技术有限公司 一种语音信息处理方法、装置及终端
US10453454B2 (en) * 2017-10-26 2019-10-22 Hitachi, Ltd. Dialog system with self-learning natural language understanding
US20190327330A1 (en) 2018-04-20 2019-10-24 Facebook, Inc. Building Customized User Profiles Based on Conversational Data
US11715042B1 (en) 2018-04-20 2023-08-01 Meta Platforms Technologies, Llc Interpretability of deep reinforcement learning models in assistant systems
US11676220B2 (en) 2018-04-20 2023-06-13 Meta Platforms, Inc. Processing multimodal user input for assistant systems
US11886473B2 (en) 2018-04-20 2024-01-30 Meta Platforms, Inc. Intent identification for agent matching by assistant systems
US10978056B1 (en) * 2018-04-20 2021-04-13 Facebook, Inc. Grammaticality classification for natural language generation in assistant systems
CN108563790B (zh) * 2018-04-28 2021-10-08 科大讯飞股份有限公司 一种语义理解方法及装置、设备、计算机可读介质
US11019083B2 (en) * 2018-06-20 2021-05-25 Cisco Technology, Inc. System for coordinating distributed website analysis
US11094317B2 (en) * 2018-07-31 2021-08-17 Samsung Electronics Co., Ltd. System and method for personalized natural language understanding
CN109241524B (zh) * 2018-08-13 2022-12-20 腾讯科技(深圳)有限公司 语义解析方法及装置、计算机可读存储介质、电子设备
CN113168336A (zh) * 2018-08-27 2021-07-23 谷歌有限责任公司 基于实验参数适配功能电话的客户端应用
JP6577692B1 (ja) * 2018-09-28 2019-09-18 楽天株式会社 学習システム、学習方法、及びプログラム
CN109597993B (zh) * 2018-11-30 2021-11-05 深圳前海微众银行股份有限公司 语句分析处理方法、装置、设备以及计算机可读存储介质
CN112434129A (zh) * 2020-11-20 2021-03-02 内蒙古电力(集团)有限责任公司电力调度控制分公司 一种电网调度领域专业语料库生成方法及系统
CN113257407A (zh) * 2021-05-31 2021-08-13 康键信息技术(深圳)有限公司 医疗公众号消息的处理方法、装置、设备及存储介质
US11893996B1 (en) * 2021-06-29 2024-02-06 Amazon Technologies, Inc. Supplemental content output

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103870505A (zh) * 2012-12-17 2014-06-18 阿里巴巴集团控股有限公司 一种查询词推荐方法和查询词推荐系统
CN104699676A (zh) * 2013-12-04 2015-06-10 中国电信股份有限公司 基于语音识别的信息搜索方法和系统
CN104850539A (zh) * 2015-05-28 2015-08-19 宁波薄言信息技术有限公司 一种自然语言理解方法及基于该方法的旅游问答系统

Family Cites Families (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5857188A (en) 1996-04-29 1999-01-05 Ncr Corporation Management of client requests in a client-server environment
JP3549725B2 (ja) * 1998-04-13 2004-08-04 シャープ株式会社 画像処理装置
US7725307B2 (en) * 1999-11-12 2010-05-25 Phoenix Solutions, Inc. Query engine for processing voice based queries including semantic decoding
US7548847B2 (en) * 2002-05-10 2009-06-16 Microsoft Corporation System for automatically annotating training data for a natural language understanding system
US7398209B2 (en) * 2002-06-03 2008-07-08 Voicebox Technologies, Inc. Systems and methods for responding to natural language speech utterance
US7295981B1 (en) 2004-01-09 2007-11-13 At&T Corp. Method for building a natural language understanding model for a spoken dialog system
US8335753B2 (en) * 2004-11-03 2012-12-18 Microsoft Corporation Domain knowledge-assisted information processing
US8433558B2 (en) 2005-07-25 2013-04-30 At&T Intellectual Property Ii, L.P. Methods and systems for natural language understanding using human knowledge and collected data
CN1952928A (zh) * 2005-10-20 2007-04-25 梁威 建立自然语言知识库及其自动问答检索的计算机系统
US7822699B2 (en) * 2005-11-30 2010-10-26 Microsoft Corporation Adaptive semantic reasoning engine
US8166026B1 (en) * 2006-12-26 2012-04-24 uAffect.org LLC User-centric, user-weighted method and apparatus for improving relevance and analysis of information sharing and searching
US20090282027A1 (en) * 2008-09-23 2009-11-12 Michael Subotin Distributional Similarity Based Method and System for Determining Topical Relatedness of Domain Names
US20120089581A1 (en) * 2010-10-07 2012-04-12 Microsoft Corporation Informing Search Results Based on Commercial Transaction Publications
US8595857B2 (en) * 2010-12-28 2013-11-26 Verizon Patent And Licensing Inc. Persona-based identity management system
US9064006B2 (en) * 2012-08-23 2015-06-23 Microsoft Technology Licensing, Llc Translating natural language utterances to keyword search queries
US9082402B2 (en) 2011-12-08 2015-07-14 Sri International Generic virtual personal assistant platform
US9171066B2 (en) 2012-11-12 2015-10-27 Nuance Communications, Inc. Distributed natural language understanding and processing using local data sources
US9130900B2 (en) 2013-03-15 2015-09-08 Bao Tran Assistive agent
US20140350933A1 (en) * 2013-05-24 2014-11-27 Samsung Electronics Co., Ltd. Voice recognition apparatus and control method thereof
US9311298B2 (en) 2013-06-21 2016-04-12 Microsoft Technology Licensing, Llc Building conversational understanding systems using a toolset
US10339216B2 (en) 2013-07-26 2019-07-02 Nuance Communications, Inc. Method and apparatus for selecting among competing models in a tool for building natural language understanding models
US20150120199A1 (en) * 2013-10-31 2015-04-30 Matthew S. Casey Multiple Domain Processing For Combining Reservoir Models and Seismic Data
US10191999B2 (en) * 2014-04-30 2019-01-29 Microsoft Technology Licensing, Llc Transferring information across language understanding model domains
US9965766B2 (en) * 2015-01-06 2018-05-08 Adobe Systems Incorporated Method to expand seed keywords into a relevant social query

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103870505A (zh) * 2012-12-17 2014-06-18 阿里巴巴集团控股有限公司 一种查询词推荐方法和查询词推荐系统
CN104699676A (zh) * 2013-12-04 2015-06-10 中国电信股份有限公司 基于语音识别的信息搜索方法和系统
CN104850539A (zh) * 2015-05-28 2015-08-19 宁波薄言信息技术有限公司 一种自然语言理解方法及基于该方法的旅游问答系统

Also Published As

Publication number Publication date
US11250218B2 (en) 2022-02-15
CN108369596A (zh) 2018-08-03
WO2017100023A1 (en) 2017-06-15
US20170169013A1 (en) 2017-06-15
EP3387555A1 (en) 2018-10-17

Similar Documents

Publication Publication Date Title
CN108369596B (zh) 个性化自然语言理解系统
JP6994559B2 (ja) 関連コンテンツを先見的に特定し、タッチ感知デバイス上に表面化させるためのシステム及び方法
US10255273B2 (en) Method and system for ranking and summarizing natural language passages
CN107851092B (zh) 个人实体建模
EP3465469B1 (en) Intelligent capture, storage, and retrieval of information for task completion
US20210126911A1 (en) Delegated authorization for isolated collections
US9064006B2 (en) Translating natural language utterances to keyword search queries
US11294911B2 (en) Methods and systems for client side search ranking improvements
US11606362B2 (en) Privacy-preserving composite views of computer resources in communication groups
US11423090B2 (en) People relevance platform
US10514854B2 (en) Conditional authorization for isolated collections
EP3374879A1 (en) Provide interactive content generation for document
US20220108691A1 (en) Dynamic Expansion of Acronyms in Audio Content

Legal Events

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