CN113519000A - 用于对话内的多角度论述的系统 - Google Patents
用于对话内的多角度论述的系统 Download PDFInfo
- Publication number
- CN113519000A CN113519000A CN202080018413.6A CN202080018413A CN113519000A CN 113519000 A CN113519000 A CN 113519000A CN 202080018413 A CN202080018413 A CN 202080018413A CN 113519000 A CN113519000 A CN 113519000A
- Authority
- CN
- China
- Prior art keywords
- dialog
- feature
- response
- machine learning
- learning model
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/279—Recognition of textual entities
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/084—Backpropagation, e.g. using gradient descent
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/004—Artificial life, i.e. computing arrangements simulating life
- G06N3/006—Artificial life, i.e. computing arrangements simulating life based on simulated virtual individual or collective life forms, e.g. social simulations or particle swarm optimisation [PSO]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/044—Recurrent networks, e.g. Hopfield networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N5/00—Computing arrangements using knowledge-based models
- G06N5/04—Inference or reasoning models
- G06N5/043—Distributed expert systems; Blackboards
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Software Systems (AREA)
- Artificial Intelligence (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Biophysics (AREA)
- Biomedical Technology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Medical Informatics (AREA)
- Audiology, Speech & Language Pathology (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
描述了用于训练和/或利用子代理机器学习模型来生成候选对话响应的技术。在各种实现中,面向用户的对话代理(202,302)或代表其的另一组件选择最接近用户定义的全局优先级目标(318)的候选响应之一。全局优先级目标可以包括针对各种对话特征的值(306),对话特征诸如情绪、困惑、客观相关性、个性、详细度等。在各种实现中,每个机器学习模型包括编码器部分和解码器部分。每个编码器部分和解码器部分可以是循环神经网络(RNN)模型,诸如包括至少一个记忆层(诸如长短期记忆(LSTM)层)的RNN模型。
Description
背景技术
计算系统可以利用对话代理以连贯结构与用户交谈。用户界面输入可以以文本、语音、图形、触觉、手势的形式和/或其他交流模式被提供给对话代理。类似地,对话代理可以制定对用户界面输入的响应,并且可以基于响应使用文本、语音、图形、触觉、手势和/或其他交流模式来传送输出。例如,对话代理可以解释和响应用户以自然语言做出的陈述。
发明内容
本文中描述的技术使得自适应的面向用户的对话代理能够生成对用户提供的输入的多个候选响应,并且使用预定全局对话目标从这些候选响应中选择用于呈现给用户的响应。在很多实现中,对话代理可以基于对话特征将对话与用户提供的输入对准,对话特征包括:情绪(emotion)、客观相关性(objective relatedness)、困惑、个性(personality)、详细度(verbosity)和/或附加对话特征。用户可以设置对话代理将引导对话朝向的、与每个对话特征相对应的期望值(例如,用户可以设置针对对话的全局优先级目标的值)。例如,希望与对话代理进行更自然的类人对话的用户可以设置全局优先级值以使得个性具有高值。作为另一示例,希望详细讨论和详细回答的用户可以设置全局优先级目标的值以使得详细度具有高值。另外地或替代地,当设置全局优先级目标的值时,用户可以针对多个对话特征提供值。例如,希望简短且易于理解的响应的用户可以设置全局优先级目标以使得详细度具有低值。在很多实现中,对话代理可以具有跨所有用户的统一全局优先级目标值(例如,该系统管理员和/或具有全局权限的附加用户为参与和对话代理的对话的所有用户设置全局优先级目标的值)。
在很多实现中,面向用户的对话代理可以包括若干子代理或与若干子代理可操作地耦合,每个子代理通过使用与每个子代理相对应的独特的机器学习模型处理用户提供输入来生成候选响应(即,每个子代理与自己的独特的机器学习模型相关联)。除非另有说明,否则本文中使用的“对话代理”是指面向用户的对话代理。在各种实现中,每个子代理(以及每个对应子代理机器学习模型)被训练以生成被定制为针对对话特征之一的响应(并且在某些情况下,每个子代理及其对应机器学习模型被定制为针对独特的对话特征)。
根据很多实现的子代理机器学习模型可以包括编码器部分和解码器部分。子代理机器学习模型的编码器部分可以是循环神经网络(RNN),并且可以包括一个或多个循环层,包括单向循环网络层和/或双向循环网络层的组合。另外地或替代地,子代理机器学习模型的解码器部分可以是RNN,并且可以包括一个或多个循环层,包括单向循环网络层和/或双向循环网络层的组合。循环网络层每个可以包括一个或多个记忆单元,输入可以被顺序应用于这些记忆单元,并且在所应用的输入的每次迭代中,(多个)记忆单元可以用于基于该迭代的输入并且基于当前隐藏状态(可以基于(多个)先前迭代的(多个)输入)来计算新隐藏状态。在一些实现中,记忆单元可以是长短期记忆(LSTM)单元。在一些实现中,可以使用(多个)附加或替代记忆单元,诸如门控循环单元(GRU)。另外地或替代地,子代理机器学习模型可以包括附加网络层,诸如用于执行池化的网络层(例如,随时间池化层)、前馈网络层和/或(多个)附加网络层。
在生成候选响应之后,面向用户的对话代理可以从候选响应中选择响应以呈现给用户。在很多实现中,特征监测器过程可以针对每个候选响应确定针对每个对话特征的值。可以计算针对每个候选响应的针对特征的值与全局优先级目标的值之间的距离。另外地或替代地,该系统可以选择针对每个候选响应的针对对话特征的值与全局优先级目标的值之间的距离最短的响应。
在很多实现中,对话代理可以向子代理中的每个子代理提供所选择的响应,并且可以通过将所选择的响应与由子代理生成的候选响应进行比较来更新与每个子代理相对应的机器学习模型中的一个或多个权重(例如,反向传播)。
提供与多个角度(即,对话特征)对准的多个候选响应使得面向用户的对话代理能够以多种方式对用户提供输入做出反应。例如,如果面向用户的对话代理确定用户感到困惑,则可以选择响应以减少用户的困惑,这另外地或替代地可以减少用户将不得不询问重复问题、附加后续问题等的可能性。换言之,通过以由用户指示的预定义方式(明确地指示或基于用户输入推断)引导对话,信息更有可能以用户理解的方式被解释。重复问题、附加的后续问题等的减少可以减少系统使用的计算资源,包括内存使用、处理器使用、电池使用和/或附加资源。
以上描述被提供作为本文中公开的各种实现的概述。本文中更详细地描述这些各种实现以及附加实现。
在一些实现中,提供了一种由一个或多个处理器实现的方法,该方法包括接收由计算系统在用户与至少部分地在计算系统上执行的面向用户的代理之间的对话期间捕获的用户界面输入。该方法还包括通过使用针对每个子代理的经训练的机器学习模型处理用户界面输入,来使用一组子代理处理用户界面输入以生成一组候选响应,其中每个子代理和每个对应机器学习模型被定制为针对一组对话特征中的不同对话特征。该方法还包括使用一组特征监测过程处理该组候选响应中的每个候选响应,以针对每个候选响应生成与该组对话特征相对应的一组对话特征值。该方法还包括通过将针对每个候选响应的该组对话特征值与针对对话的一组全局优先级目标进行比较,来从该组候选响应中选择对用户界面输入的响应,其中该组全局优先级目标包括针对该组对话特征中的每个特征的预定值。该方法还包括利用所选择的响应更新每个子代理的一个或多个方面。该方法还包括引起计算系统基于所选择的响应绘制从面向用户的代理的输出。
本文中公开的技术的这些和其他实现可以包括以下特征中的一个或多个。
在一些实现中,利用所选择的响应更新每个子代理的一个或多个方面包括通过将所选择的输出与对应于特定子代理的候选输出进行比较来更新与每个子代理相对应的机器学习模型中的一个或多个权重。
在一些实现中,被定制为针对不同对话特征的针对每个子代理的机器学习模型通过以下被训练:应用训练实例的第一部分作为机器学习模型的输入以生成预测输出,其中训练实例使用该组特征监测过程被标记为对应于对话特征。该方法还包括通过将预测输出与训练实例的第二部分进行比较来更新机器学习模型中的一个或多个权重,其中训练实例的第二部分是对训练实例的第一部分的响应。在这些实现的一些版本中,每个经训练的机器学习模型包括编码器循环神经网络和解码器循环神经网络。在这些实现的一些版本中,编码器循环神经网络和解码器循环神经网络包括长短期记忆单元。
在一些实现中,通过将针对每个候选响应的该组对话特征值与针对对话的一组优先级目标进行比较来从该组候选响应中选择对用户界面输入的响应包括:确定每组对话特征值与该组优先级目标中针对每个特征的预定值之间的距离。该方法还包括选择与最短距离相对应的候选响应。在这些实现的一些版本中,确定每组对话特征值与该组优先级目标中针对每个特征的预定值之间的距离包括:确定每组对话特征值与该组优先级目标中针对每个特征的预定值之间的Mahalanobis距离。
在一些实现中,该组对话特征至少包括情绪、困惑、客观相关性、个性和详细度。
此外,一些实现包括一个或多个计算设备的一个或多个处理器(例如,(多个)中央处理单元(CPU)、(多个)图形处理单元(GPU)和/或(多个)张量处理单元(TPU)),其中一个或多个处理器可操作以执行存储在相关联的存储器中的指令,并且其中指令被配置为引起本文中描述的任何方法的执行。一些实现还包括存储由一个或多个处理器可执行以执行本文中描述的任何方法的计算机指令的一种或多种非暂态计算机可读存储介质。
应当理解,上述概念和本文中更详细描述的附加概念的所有组合都被设想为本文中公开的主题的一部分。例如,出现在本公开的末尾的所要求保护的主题的所有组合都被认为是本文中公开的主题的一部分。
附图说明
图1是可以在其中实现本文中公开的实现的示例环境的框图。
图2是可以在其中实现本文中公开的实现的另一示例环境的框图。
图3示出了根据本文中公开的实现的示例对话空间。
图4是示出根据本文中公开的实现的生成对用户界面输入的响应的过程的流程图。
图5是示出根据本文中公开的实现的训练子代理机器学习模型的过程的流程图。
图6示出了计算设备的示例架构。
具体实施方式
图1示出了可以在其中实现本文中公开的实现的示例环境。图1中的示例环境100包括计算系统102、代理响应引擎104、子代理训练引擎108和子代理训练实例引擎112。计算系统102可以是例如台式计算设备、膝上型计算设备、平板计算设备和/或移动电话计算设备。可以提供附加和/或替代计算设备。
代理响应引擎104、子代理训练引擎108和子代理实例训练引擎112是可以在其中实现本文中描述的技术和/或可以与本文中描述的系统、组件和技术接口的示例组件。由图1的一个或多个引擎104、108、112执行的操作可以分布在多个计算系统上。在一些实现中,引擎104、108、112的一个或多个方面可以组合在单个系统中,和/或一个或多个方面可以在计算系统102上实现。例如,在这些实现中的一些实现中,子代理训练引擎108的各方面可以与子代理训练实例引擎112的各方面相结合。根据很多实现的引擎每个可以在例如通过通信网络进行通信的一个或多个计算设备中实现。通信网络可以包括诸如互联网等广域网、诸如Wi-Fi LAN、网状网络等一个或多个局域网(LAN)、和/或一个或多个总线子系统。通信网络可以可选地利用一种或多种标准通信技术、协议和/或进程间通信技术。
在很多实现中,计算系统102可以包括用于促进与用户的对话的各种模块。例如,计算系统102可以包括语音捕获模块(未示出)、语音到文本(STT)模块(未示出)、文本到语音(TTS)模块(未示出)、自然语言处理器(未示出)、和/或用于与用户通信的附加模块。在很多实现中,语音捕获模块、STT模块和/或TTS模块可以与计算系统102分开实现。在很多实现中,语音捕获模块、STT模块和/或TTS模块可以基于来自用户的口头输入生成输出(例如,自然语言数据流)。另外地或替代地,语音捕获模块、STT模块和/或TTS模块可以被配置为执行一个或多个功能:捕获用户的语音,例如,经由麦克风;将所捕获的音频转换为文本(和/或其他表示或嵌入);和/或将文本转换为语音。
在很多实现中,计算系统102(例如,通过代理响应引擎104)可以执行本文中描述的各种技术,诸如训练子代理模型106,引起子代理模型生成对用户输入的多个候选响应,和/或选择最接近预定义全局优先级目标的候选响应(图2中的228,图3中的318)作为用户的所选择的响应。子代理模型106可以被训练以生成被定制针对(多个)特定对话特征的响应内容,包括但不限于:情绪、客观相关性、困惑、个性、详细度和/或附加对话特征。例如,计算系统102可以具有情绪子代理模型、客观相关性子代理模型、困惑子代理模型、个性子代理模型、详细度子代理模型和/或(多个)附加对话特征模型,每个模型对应不同子代理。
在很多实现中,每个子代理模型106可以例如由子代理训练引擎108通过从子代理训练实例110取回训练实例被训练。子代理训练实例可以由子代理训练实例引擎112生成,并且例如可以包括训练用户输入(例如,训练实例的第一部分)、给定训练用户输入的已知输出(例如,训练实例的第二部分)、以及指示训练实例对应的(多个)对话特征的一个或多个标签。在很多实现中,若干对话特征可以被表示在同一训练实例中,并且因此训练实例可以用于训练若干子代理模型(例如,训练实例可以被标记为具有个性和详细度,并且可以用于训练个性子代理模型和/或详细度子代理模型两者)。
子代理训练引擎108应用训练实例的第一部分作为输入以训练特定子代理模型106。在各种实现中,(多个)子代理模型106可以使用有监督学习被训练。例如,子代理训练引擎108可以通过使用子代理模型处理训练用户输入来生成预测输出。另外地或替代地,子代理训练引擎108可以将预测输出与对应于训练用户输入的已知输出进行比较,并且使用该比较来更新对应子代理模型106中的一个或多个权重(例如,在整个子代理模型106上反向传播该差异)。图5的过程500描述了根据本文中公开的很多实现的训练子代理模型的过程。
在很多实现中,每个给定子代理模型106可以包括各种神经网络层,诸如编码器部分和/或解码器部分。在很多实现中,编码器部分和/或解码器部分可以是RNN,并且可以包括各种循环网络层。例如,编码器部分可以包括(多个)双向循环网络层和/或(多个)单向循环网络层的组合。循环网络层每个可以包括一个或多个记忆单元,输入可以被顺序地应用于这些记忆单元,并且在所应用的输入的每次迭代中,(多个)记忆单元可以用于基于该迭代的输入并且基于当前隐藏状态(可以基于(多个)先前迭代的(多个)输入)来计算新隐藏状态。在一些实现中,记忆单元可以是长短期记忆(LSTM)单元。在一些实现中,可以使用(多个)附加或替代记忆单元,诸如门控循环单元(GRU)。另外地或替代地,子代理模型可以包括附加网络层,包括用于执行池化的网络层(例如,随时间池化层)、前馈网络层和/或(多个)附加网络层。
图2示出了可以在其中实现本文中公开的实现的另一示例环境。图2中的示例环境200包括面向用户的对话代理202、用户204、子代理1 206、子代理2 208、子代理3 210、子代理N 212、优先级切换(priority switch)管理器214、情绪监测器216、客观监测器218、困惑监测器220、个性监测器222、反馈监测器224、详细度监测器226和全局优先级目标228。
对话代理202是支持生成对由用户204提供的用户界面输入的自然语言响应的计算系统的面向用户的组件。在一些实现中,响应于接收到用户界面输入,子代理206、208、210、212各自可以针对用户界面输入生成候选响应,并且优先级切换管理器214(和/或对话代理202)可以选择响应以呈现给用户204。应当容易理解,子代理206、208、210、212仅仅是说明性的,并且任何数目的子代理可以为对话代理生成候选响应。例如,系统可以包括三个子代理、四个子代理、五个子代理、六个子代理等。
另外地或替代地,监测过程(诸如情绪监测器216、客观监测器218、困惑监测器220、个性监测器222、反馈监测器224、详细度监测器226)可以确定从用户接收的用户界面输入中(多个)对话特征的存在、以及由子代理206-212和/或对话代理202生成的候选响应中对话特征的存在。在一些实现中,监测过程可以异步地动作并且不直接影响当前对话流。在很多实现中,优先级切换管理器214可以确定多维对话空间(参见图3)中每个候选响应与预定义全局优先级目标228之间的距离,并且选择距离最短的候选响应。换言之,优先级切换管理器214(和/或对话代理202本身)可以像多目标函数一样尝试优化针对每个子代理的所有参数的值,使得它可以选择子代理的响应,该响应使与用户的整个对话更接近全局优先级目标228的值。在很多实现中,多目标函数使用Mahalanobis距离来标识全局优先级目标228的值与对话的当前状态之间的距离。目标是选择使当前状态(例如,多维向量)最接近全局优先级目标228的候选响应。
在很多实现中,优先级切换管理器214的一个或多个功能可以由对话代理202直接实现(例如,不使用优先级切换管理器214)。优先级切换管理器214和/或对话代理202可以将所选择的响应反馈给所有子代理。在很多实现中,与每个子代理相关联的机器学习模型中的一个或多个权重可以通过确定子代理的候选响应与所选择的响应之间的差异来更新(即,反向传播)。在很多实现中,与生成所选择的响应的子代理相对应的机器学习模型将保持不变,因为所选择的响应与在该子代理处生成的响应之间没有差异。
图3示出了根据本文中描述的各种实现的示例对话空间300。对话空间300是包含代理302(其可以对应于202)与用户304(其可以对应于204)之间的对话的多维空间。在很多实现中,特征监测过程(未示出)可以用于确定针对一个或多个对话特征的值306。例如,值306可以包括针对若干对话特征的值,对话特征诸如情绪、困惑、客观、个性、详细度和/或包括单词长度、短语长度、对话时间、单词复杂性等的附加对话特征。另外地或替代地,可以类似地确定候选响应中针对对话特征的值。例如,可以针对由情绪子代理308、客观子代理310、个性子代理312和/或困惑子代理314生成的候选响应确定针对对话特征的值。在各种实现中,优先级切换管理器316(和/或对话代理302)可以使用全局优先级目标318(其可以类似于228)从由子代理308、313、312、314生成的候选响应中选择响应。
图4是示出根据本文中公开的各种实现的使用子代理生成和选择对用户界面输入的响应的示例过程400的流程图。为方便起见,参考执行操作的系统来描述图4的操作。该系统可以包括各种计算机系统的各种组件,诸如计算系统102的一个或多个组件。此外,虽然过程400的操作以特定顺序示出,但这并不表示限制。一个或多个操作可以被重新排序、省略和/或添加。
在框402,该系统在用户与面向用户的对话代理之间的对话期间接收用户界面输入。在很多实现中,对话是基于文本的(例如,用户提供文本输入,并且对话代理为用户生成文本响应)。在很多实现中,对话是口语对话(例如,用户提供口语输入,并且对话代理为用户生成音频响应)。
在框404,该系统通过使用针对每个子代理的经训练的机器学习模型(例如,106)处理用户界面输入,来使用一组子代理(例如,206-212)处理用户界面输入以生成一组候选响应。在很多实现中,每个子代理和对应机器学习模型被定制为针对一组对话特征中的不同对话特征。例如,该系统可以包括与不同对话特征相对应的子代理(和对应子代理机器学习模型)。
在框406,该系统使用一组特征监测过程处理每个候选响应,以针对每个候选响应生成与该组对话特征相对应的一组对话特征值。在很多实现中,该系统可以包括针对每个对话特征的独特的特征监测过程。例如,该系统可以包括情绪特征监测过程,该过程可以测量对话中情绪特征的存在以生成与对话中的情绪量相对应的值。
在框408,该系统通过将针对每个候选响应的该组对话特征值与针对对话的一组全局优先级目标228/318进行比较,来从该组候选响应中选择对用户界面输入的响应。在很多实现中,全局优先级目标包括针对该组对话特征中的每个特征的预定值。
在框410,该系统利用所选择的响应更新每个子代理的一个或多个方面。例如,与特定子代理相对应的机器学习模型中的一个或多个权重可以通过确定所选择的响应与由特定子代理生成的候选响应之间的差异来更新(例如,反向传播)。
在框412,该系统引起计算系统基于所选择的响应绘制来自面向用户的代理的输出。在很多实现中,输出可以是文本、音频和/或附加输出。
图5是示出根据本文中公开的各种实现的训练子代理模型的示例过程500的流程图。为方便起见,参考执行操作的系统来描述图5的操作。该系统可以包括各种计算机系统的各种组件,诸如计算系统102的一个或多个组件。此外,虽然过程500的操作以特定顺序示出,但这并不表示限制。一个或多个操作可以被重新排序、省略和/或添加。
在框502,该系统选择训练实例。在很多实现中,训练实例可以至少包括第一部分(例如,训练用户输入)、第二部分(例如,对第一部分的响应)、以及与训练实例对话中的(多个)对话特征相对应的一个或多个标签。在很多实现中,可以利用一个或多个对话特征监测过程来确定训练实例中(多个)对话特征的存在。在很多实现中,对话可以在句子级别、对话轮次级别(即,来自用户的对话的一部分和对该部分对话的响应,任一部分都可以比句子长)等进行标记。
在框504,该系统应用训练实例的第一部分作为子代理机器学习模型的输入以生成预测输出。在很多实现中,机器学习模型具有编码器部分和解码器部分。在一些这样的实现中,训练实例的第一部分可以应用于子代理机器学习模型的编码器部分以生成编码器输出。另外地或替代地,编码器输出可以作为输入应用于子代理机器学习模型的解码器部分以生成预测输出。
在框506处,该系统基于由训练实例生成的预测输出和训练实例的第二部分来更新机器学习模型。例如,该系统可以基于所生成的输出和训练实例的第二部分来确定误差,并且在机器学习模型上反向传播误差以更新子代理模型的一个或多个权重。
在框508处,该系统确定是否存在一个或多个附加未处理训练实例。如果是,则系统返回到502,选择附加训练实例,然后基于附加未处理训练实例执行框504和506。在一些实现中,在框508,如果一个或多个训练标准已经满足,则该系统可以确定不需要处理任何附加未处理训练实例(例如,已经发生阈值数目的时期,发生了阈值持续时间的训练,和/或所有训练实例已经被处理)。尽管关于非批处理学习技术描述过程500,但是可以另外地和/或替代地利用批处理学习。
图6是可以可选地用于执行本文中描述的技术的一个或多个方面的示例计算设备610的框图。在一些实现中,客户端计算设备和/或(多个)其他组件中的一个或多个可以包括示例计算设备610的一个或多个组件。
计算设备610通常包括经由总线子系统612与多个外围设备通信的至少一个处理器614。这些外围设备可以包括存储子系统624(包括例如存储器子系统625和文件存储子系统626)、用户界面输出设备620、用户界面输入设备622和网络接口子系统616。输入和输出设备允许用户与计算设备610交互。网络接口子系统616提供与外部网络的接口并且耦合到其他计算设备中的对应接口设备。
用户界面输入设备622可以包括键盘、诸如鼠标、轨迹球、触摸板或图形输入板等指示设备、扫描仪、并入显示器中的触摸屏、诸如语音识别系统、麦克风等音频输入设备、和/或其他类型的输入设备。一般而言,术语“输入设备”的使用旨在包括所有可能类型的设备以及将信息输入到计算设备610中或通信网络上的方式。
用户界面输出设备620可以包括显示子系统、打印机、传真机、或诸如音频输出设备等非视觉显示器。显示子系统可以包括阴极射线管(“CRT”)、诸如液晶显示器(“LCD”)等平板设备、投影设备、或用于创建可见图像的某种其他机构。显示子系统还可以提供非视觉显示,诸如经由音频输出设备。一般而言,术语“输出设备”的使用旨在包括所有可能类型的设备以及将信息从计算设备610输出到用户或另一机器或计算设备的方式。
存储子系统624存储提供本文中描述的模块中的一些或所有模块的功能的编程和数据结构。例如,存储子系统624可以包括用于执行图4-5的过程中的一个或多个过程的所选择的方面、以及用于实现图1中描绘的各种组件的逻辑。
这些软件模块通常由处理器614单独或与其他处理器相结合来执行。存储子系统624中使用的存储器625可以包括多个存储器,包括用于在程序执行期间存储指令和数据的主随机存取存储器(“RAM”)630和其中存储有固定指令的只读存储器(“ROM”)632。文件存储子系统626可以为程序和数据文件提供持久存储,并且可以包括硬盘驱动器、软盘驱动器、以及相关联的可移动介质、CD-ROM驱动器、光驱或可移动介质盒。实现某些实现的功能的模块可以由文件存储子系统626存储在存储子系统624中,或者存储在(多个)处理器614可访问的其他机器中。
总线子系统612提供了一种用于计算设备610的各种组件和子系统根据预期彼此通信的机制。尽管总线子系统612被示意性地示出为单个总线,但是总线子系统的替代实现可以使用多个总线。
计算设备610可以是各种类型,包括工作站、服务器、计算集群、刀片服务器、服务器群、或者任何其他数据处理系统或计算设备。由于计算机和网络的不断变化的性质,图6中描绘的计算设备610的描述仅旨在作为用于说明一些实现的目的的特定示例。计算设备610的很多其他配置可以具有比图6中描绘的计算设备更多或更少的组件。
虽然本文中已经描述和示出了若干实现,但是可以利用用于执行功能和/或获取结果和/或本文中描述的一个或多个优点的各种其他手段和/或结构,并且每个这样的变化和/或修改被认为在本文中描述的实现的范围内。更一般地,本文中描述的所有参数、尺寸、材料和配置意在是示例性的,并且实际参数、尺寸、材料和/或配置将取决于使用教导的一个或多个特定应用。本领域技术人员将认识到或能够仅使用常规实验来确定本文中描述的特定实现的很多等价物。因此,应当理解,前述实现仅通过示例的方式呈现,并且在所附权利要求及其等效物的范围内,可以以不同于具体描述和要求保护的方式来实践实现。本公开的实现涉及本文中描述的每个个体特征、系统、物品、材料、套件和/或方法。此外,两个或更多个这样的特征、系统、物品、材料、套件和/或方法的任何组合被包括在本公开的范围(如果这样的特征、系统、物品、材料、套件和/或方法不相互矛盾)。
Claims (20)
1.一种由一个或多个处理器实现的方法,所述方法包括:
接收(402)由计算系统(102)在用户与面向用户的代理(202,302)之间的对话期间捕获的用户界面输入,所述面向用户的代理(202,302)至少部分地在所述计算系统上执行;
通过使用针对每个子代理的经训练的机器学习模型处理所述用户界面输入,来使用一组子代理(206-212,308-314)处理(404)所述用户界面输入,以生成一组候选响应,其中每个子代理和每个对应机器学习模型被定制为针对一组对话特征中的不同对话特征;
使用一组特征监测过程处理(406)所述一组候选响应中的每个候选响应,以针对每个候选响应生成与所述一组对话特征相对应的一组对话特征值;
通过将针对每个候选响应的所述一组对话特征值(306)与针对所述对话的一组全局优先级目标(318)进行比较,来从所述一组候选响应中选择(408)对所述用户界面输入的响应,其中所述一组全局优先级目标包括针对所述一组对话特征中的每个特征的预定值;
利用所选择的所述响应更新(410)每个子代理的一个或多个方面;以及
引起(412)所述计算系统基于所选择的所述响应绘制从所述面向用户的代理的输出。
2.根据权利要求1所述的方法,其中利用所选择的所述响应更新每个子代理的一个或多个方面包括:
通过将所选择的输出与对应于每个子代理的所述候选输出进行比较,来更新与该特定子代理相对应的所述机器学习模型中的一个或多个权重。
3.根据权利要求1所述的方法,其中被定制为针对不同对话特征的针对每个子代理的所述机器学习模型通过以下被训练:
应用(504)训练实例的第一部分作为所述机器学习模型的输入以生成预测输出,其中所述训练实例使用所述一组特征监测过程被标记为对应于所述对话特征;以及
通过将所述预测输出与所述训练实例的第二部分进行比较来更新(506)所述机器学习模型中的一个或多个权重,其中所述训练实例的所述第二部分是对所述训练实例的所述第一部分的响应。
4.根据权利要求3所述的方法,其中每个经训练的机器学习模型包括编码器循环神经网络和解码器循环神经网络。
5.根据权利要求4所述的方法,其中所述编码器循环神经网络和所述解码器循环神经网络包括长短期记忆单元。
6.根据权利要求1所述的方法,其中通过将针对每个候选响应的所述一组对话特征值与针对所述对话的一组优先级目标进行比较来从所述一组候选响应中选择对所述用户界面输入的响应包括:
确定每组对话特征值与所述一组优先级目标中针对每个特征的所述预定值之间的距离;以及
选择与最短距离相对应的所述候选响应。
7.根据权利要求6所述的方法,其中确定每组对话特征值与所述一组优先级目标中针对每个特征的所述预定值之间的距离包括:
确定每组对话特征值与所述一组优先级目标中针对每个特征的所述预定值之间的Mahalanobis距离。
8.根据权利要求1所述的方法,其中所述一组对话特征至少包括情绪、困惑、客观相关性、个性和详细度。
9.至少一种非暂态计算机可读介质,包括指令,所述指令响应于一个或多个处理器对所述指令的执行而引起一个或多个处理器执行以下操作:
接收(402)由计算系统(102)在用户与面向用户的代理(202,302)之间的对话期间捕获的用户界面输入,所述面向用户的代理(202,302)至少部分地在所述计算系统上执行;
通过使用针对每个子代理的经训练的机器学习模型处理所述用户界面输入,来使用一组子代理(206-212,308-314)处理(404)所述用户界面输入,以生成一组候选响应,其中每个子代理和每个对应机器学习模型被定制为针对一组对话特征中的不同对话特征;
使用一组特征监测过程处理(406)所述一组候选响应中的每个候选响应,以针对每个候选响应生成与所述一组对话特征相对应的一组对话特征值;
通过将针对每个候选响应的所述一组对话特征值(306)与针对所述对话的一组全局优先级目标(318)进行比较,来从所述一组候选响应中选择(408)对所述用户界面输入的响应,其中所述一组全局优先级目标包括针对所述一组对话特征中的每个特征的预定值;
利用所选择的所述响应更新(410)每个子代理的一个或多个方面;以及
引起(412)所述计算系统基于所选择的所述响应绘制从所述面向用户的代理的输出。
10.根据权利要求9所述的至少一种非暂态计算机可读介质,其中利用所选择的所述响应更新每个子代理的一个或多个方面包括:
通过将所选择的输出与对应于每个子代理的所述候选输出进行比较,来更新与该特定子代理相对应的所述机器学习模型中的一个或多个权重。
11.根据权利要求9所述的至少一种非暂态计算机可读介质,其中被定制为针对不同对话特征的针对每个子代理的所述机器学习模型通过以下被训练:
应用(504)训练实例的第一部分作为所述机器学习模型的输入以生成预测输出,其中所述训练实例使用所述一组特征监测过程被标记为对应于所述对话特征;以及
通过将所述预测输出与所述训练实例的第二部分进行比较来更新(506)所述机器学习模型中的一个或多个权重,其中所述训练实例的所述第二部分是对所述训练实例的所述第一部分的响应。
12.根据权利要求11所述的至少一种非暂态计算机可读介质,其中每个经训练的机器学习模型包括编码器循环神经网络和解码器循环神经网络。
13.根据权利要求12所述的至少一种非暂态计算机可读介质,其中所述编码器循环神经网络和所述解码器循环神经网络包括长短期记忆单元。
14.根据权利要求9所述的至少一种非暂态计算机可读介质,其中通过将针对每个候选响应的所述一组对话特征值与针对所述对话的一组优先级目标进行比较来从所述一组候选响应中选择对所述用户界面输入的响应包括:
确定每组对话特征值与所述一组优先级目标中针对每个特征的所述预定值之间的距离;以及
选择与最短距离相对应的所述候选响应。
15.根据权利要求14所述的至少一种非暂态计算机可读介质,其中确定每组对话特征值与所述一组优先级目标中针对每个特征的所述预定值之间的距离包括:
确定每组对话特征值与所述一组优先级目标中针对每个特征的所述预定值之间的Mahalanobis距离。
16.根据权利要求9所述的至少一种非暂态计算机可读介质,其中所述一组对话特征至少包括情绪、困惑、客观相关性、个性和详细度。
17.一种系统,包括一个或多个处理器和与所述一个或多个处理器可操作地耦合的存储器,其中所述存储器存储指令,所述指令响应于一个或多个处理器对所述指令的执行而引起所述一个或多个处理器执行以下操作:
接收(402)由计算系统(102)在用户与面向用户的代理(202,302)之间的对话期间捕获的用户界面输入,所述面向用户的代理(202,302)至少部分地在所述计算系统上执行;
通过使用针对每个子代理的经训练的机器学习模型处理所述用户界面输入,来使用一组子代理(206-212,308-314)处理(404)所述用户界面输入以生成一组候选响应,其中每个子代理和每个对应机器学习模型被定制为针对一组对话特征中的不同对话特征;
使用一组特征监测过程处理(406)所述一组候选响应中的每个候选响应,以针对每个候选响应生成与所述一组对话特征相对应的一组对话特征值;
通过将针对每个候选响应的所述一组对话特征值(306)与针对所述对话的一组全局优先级目标(318)进行比较,来从所述一组候选响应中选择(408)对所述用户界面输入的响应,其中所述一组全局优先级目标包括针对所述一组对话特征中的每个特征的预定值;
利用所选择的所述响应更新(410)每个子代理的一个或多个方面;以及
引起(412)所述计算系统基于所选择的所述响应绘制来自所述面向用户的代理的输出。
18.根据权利要求17所述的系统,其中利用所选择的所述响应更新每个子代理的一个或多个方面包括:
通过将所选择的输出与对应于每个子代理的所述候选输出进行比较,来更新与该特定子代理相对应的所述机器学习模型中的一个或多个权重。
19.根据权利要求17所述的系统,其中被定制为针对不同对话特征的针对每个子代理的所述机器学习模型通过以下被训练:
应用(504)训练实例的第一部分作为所述机器学习模型的输入以生成预测输出,其中所述训练实例使用所述一组特征监测过程被标记为对应于所述对话特征;以及
通过将所述预测输出与所述训练实例的第二部分进行比较来更新(506)所述机器学习模型中的一个或多个权重,其中所述训练实例的所述第二部分是对所述训练实例的所述第一部分的响应。
20.根据权利要求19所述的系统,其中每个经训练的机器学习模型包括编码器循环神经网络和解码器循环神经网络。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201962793611P | 2019-01-17 | 2019-01-17 | |
US62/793,611 | 2019-01-17 | ||
PCT/EP2020/050954 WO2020148355A1 (en) | 2019-01-17 | 2020-01-16 | A system for multi-perspective discourse within a dialog |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113519000A true CN113519000A (zh) | 2021-10-19 |
Family
ID=69187755
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202080018413.6A Pending CN113519000A (zh) | 2019-01-17 | 2020-01-16 | 用于对话内的多角度论述的系统 |
Country Status (4)
Country | Link |
---|---|
US (2) | US11868720B2 (zh) |
EP (1) | EP3912098A1 (zh) |
CN (1) | CN113519000A (zh) |
WO (1) | WO2020148355A1 (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020148355A1 (en) * | 2019-01-17 | 2020-07-23 | Koninklijke Philips N.V. | A system for multi-perspective discourse within a dialog |
US20220222437A1 (en) * | 2021-01-08 | 2022-07-14 | Nice Ltd. | Systems and methods for structured phrase embedding and use thereof |
CN113486166B (zh) * | 2021-07-26 | 2023-09-05 | 平安科技(深圳)有限公司 | 智能客服机器人的构建方法、装置、设备以及存储介质 |
US20230259693A1 (en) * | 2022-02-17 | 2023-08-17 | Disney Enterprises, Inc. | Automated Generation Of Commentator-Specific Scripts |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6044347A (en) | 1997-08-05 | 2000-03-28 | Lucent Technologies Inc. | Methods and apparatus object-oriented rule-based dialogue management |
US6946715B2 (en) * | 2003-02-19 | 2005-09-20 | Micron Technology, Inc. | CMOS image sensor and method of fabrication |
US9177318B2 (en) | 2013-04-22 | 2015-11-03 | Palo Alto Research Center Incorporated | Method and apparatus for customizing conversation agents based on user characteristics using a relevance score for automatic statements, and a response prediction function |
CN114357128A (zh) * | 2016-04-18 | 2022-04-15 | 谷歌有限责任公司 | 适当的代理的自动化助理调用 |
US20180054523A1 (en) * | 2016-08-16 | 2018-02-22 | Rulai, Inc. | Method and system for context sensitive intelligent virtual agents |
US20180054464A1 (en) * | 2016-08-16 | 2018-02-22 | Rulai, Inc. | Method and system for collaborative intelligent virtual agents |
US20180053119A1 (en) * | 2016-08-16 | 2018-02-22 | Rulai, Inc. | Method and system for semi-supervised learning in generating knowledge for intelligent virtual agents |
US10403273B2 (en) * | 2016-09-09 | 2019-09-03 | Oath Inc. | Method and system for facilitating a guided dialog between a user and a conversational agent |
US20180090141A1 (en) | 2016-09-29 | 2018-03-29 | Microsoft Technology Licensing, Llc | Conversational interactions using superbots |
US9812151B1 (en) | 2016-11-18 | 2017-11-07 | IPsoft Incorporated | Generating communicative behaviors for anthropomorphic virtual agents based on user's affect |
US20180329884A1 (en) * | 2017-05-12 | 2018-11-15 | Rsvp Technologies Inc. | Neural contextual conversation learning |
WO2020148355A1 (en) * | 2019-01-17 | 2020-07-23 | Koninklijke Philips N.V. | A system for multi-perspective discourse within a dialog |
KR20210066651A (ko) * | 2019-11-28 | 2021-06-07 | 삼성전자주식회사 | 전자 장치 및 이의 제어 방법 |
US20220100756A1 (en) * | 2020-09-30 | 2022-03-31 | Microsoft Technology Licensing, Llc | Navigation agent for a search interface |
US20220199079A1 (en) * | 2020-12-22 | 2022-06-23 | Meta Platforms, Inc. | Systems and Methods for Providing User Experiences on Smart Assistant Systems |
US20220415320A1 (en) * | 2021-06-23 | 2022-12-29 | Meta Platforms, Inc. | Systems and Methods for Implementing Smart Assistant Systems |
-
2020
- 2020-01-16 WO PCT/EP2020/050954 patent/WO2020148355A1/en unknown
- 2020-01-16 CN CN202080018413.6A patent/CN113519000A/zh active Pending
- 2020-01-16 US US17/420,750 patent/US11868720B2/en active Active
- 2020-01-16 EP EP20701546.2A patent/EP3912098A1/en active Pending
-
2024
- 2024-01-04 US US18/404,357 patent/US20240143921A1/en active Pending
Also Published As
Publication number | Publication date |
---|---|
US11868720B2 (en) | 2024-01-09 |
EP3912098A1 (en) | 2021-11-24 |
US20220108068A1 (en) | 2022-04-07 |
WO2020148355A1 (en) | 2020-07-23 |
US20240143921A1 (en) | 2024-05-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11868720B2 (en) | System for multi-perspective discourse within a dialog | |
GB2555217A (en) | Task initiation using long-tail voice commands | |
JP6839333B2 (ja) | 呼び出しフレーズの検出における雑音低減技術の選択的適応および利用 | |
US11960837B2 (en) | Fulfillment of actionable requests ahead of a user selecting a particular autocomplete suggestion for completing a current user input | |
US11609806B2 (en) | Determining whether and/or when to provide notifications, based on application content, to mitigate computationally wasteful application-launching behavior | |
US20210089959A1 (en) | System and method for assisting customer support agents using a contextual bandit based decision support system | |
US20220309389A1 (en) | Evaluating on-device machine learning model(s) based on performance measures of client device(s) and/or the on-device machine learning model(s) | |
US20210312907A1 (en) | Speaker awareness using speaker dependent speech model(s) | |
KR20200124298A (ko) | 원격으로 생성된 자동화된 어시스턴트 콘텐츠를 렌더링할 때 클라이언트 디바이스 지연 완화 | |
WO2022081574A1 (en) | Suggesting an alternative interface when environmental interference is expected to inhibit certain automated assistant interactions | |
CN114981772A (zh) | 在不需要自动助理的基于语音的调用的情况下基于检测到的环境状况来选择性地调用自动助理 | |
US20220147775A1 (en) | Generating a selectable suggestion using a provisional machine learning model when use of a default suggestion model is inconsequential | |
CN116841506B (zh) | 程序代码生成方法及装置、模型训练方法及装置 | |
US20240038246A1 (en) | Non-wake word invocation of an automated assistant from certain utterances related to display content | |
US20240087564A1 (en) | Restricting third party application access to audio data content | |
US11915682B2 (en) | Speech synthesis utilizing audio waveform difference signal(s) | |
US20240070193A1 (en) | Reducing metadata transmitted with automated assistant requests | |
US20240161729A1 (en) | Speech synthesis utilizing audio waveform difference signal(s) | |
JP2024519265A (ja) | フィードフォワード空間変換ユニットを備えたニューラルネットワーク | |
WO2024049459A1 (en) | Reducing metadata transmitted with automated assistant requests |
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 |