首页 / 专利库 / 人工智能 / 对话代理 / 用于在通信会话内生成个性化响应的虚拟助手

用于在通信会话内生成个性化响应的虚拟助手

阅读:320发布:2020-05-08

专利汇可以提供用于在通信会话内生成个性化响应的虚拟助手专利检索,专利查询,专利分析的服务。并且公开了用于自动生成对通信会话(CS)内的内容的响应的智能代理(IA)。IA被训练为以对用户的响应以及用户在CS内的上下文为目标。IA接收包括编码用户的对话的自然语言表达的CS内容,并且基于自然语言模型来确定内容特征。所述内容特征指示所述表达的预期语义。IA识别与目标用户可能相关的内容以生成对其的响应。识别这样的内容包括基于内容特征、CS的上下文、用户-兴趣模型、以及内容-相关性模型来确定内容的相关性。识别要响应的可能相关的内容是基于内容的所确定的相关性以及相关性 阈值 的。对内容的所识别的部分的各种响应被自动生成,并且基于以该用户为目标的自然语言响应-生成模型而被提供。,下面是用于在通信会话内生成个性化响应的虚拟助手专利的具体信息内容。

1.一种计算机化的系统,包括:
一个或多个处理器;以及
具有存储在其上的计算机可执行指令的计算机存储存储器,所述计算机可执行指令当由所述一个或多个处理器执行时实现一种方法,所述方法包括:
接收在通信会话(CS)内交换的内容,其中,所述内容包括一个或多个自然语言表达,所述一个或多个自然语言表达对由参与所述CS的多个用户实行的对话的一部分进行编码;
基于所述多个用户中的第一用户的用户-兴趣模型和所述第一用户的内容-相关性模型来确定所述内容的相关性;
基于所述内容的所述相关性和一个或多个相关性阈值来识别所述内容的一个或多个可能相关的部分,其中,所述内容的所识别的一个或多个可能相关的部分与所述第一用户可能相关;以及
基于所述第一用户的响应-生成模型来生成对所述内容的所述一个或多个可能相关的部分的响应。
2.根据权利要求1所述的系统,其中,所述方法还包括:
基于所述内容和一个或多个自然语言模型来确定一个或多个内容特征,其中,所述一个或多个内容特征指示所述一个或多个自然语言表达的预期语义;
还基于所述内容特征来确定所述内容的所述相关性;以及
还基于所述一个或多个内容特征来生成对一个或多个可能相关的部分的所述响应。
3.根据权利要求1或2所述的系统,其中,所述方法还包括:
接收与所述CS相关联的元数据;
基于所接收的元数据和CS上下文模型来确定所述CS的一个或多个上下文特征,其中,所述一个或多个上下文特征指示所述第一用户的所述对话的上下文;以及还基于所述CS的所述一个或多个上下文特征来生成对所述内容的所述一个或多个可能相关的部分的所述响应。
4.根据权利要求1、2或3所述的系统,其中,所述方法还包括:
基于对所述内容的所述一个或多个可能相关的部分的所述响应来接收用户反馈;以及基于所述用户反馈来更新所述响应-生成模型。
5.根据权利要求4所述的系统,其中,所述方法还包括:
基于所述内容和在所述一个或多个自然语言模型中包括的内容-实质模型来确定一个或多个内容-实质特征,其中,所述一个或多个内容-实质特征指示在所述对话中讨论的一个或多个主题;以及
基于所述内容和在所述一个或多个自然语言模型中包括的内容-格模型来确定一个或多个内容-风格特征,其中,所述一个或多个内容-风格特征指示所述多个用户中的至少一个用户的情绪;以及
还基于所述内容的所述一个或多个内容-实质特征和所述一个或多个内容-风格特征来生成对所述内容的所述一个或多个可能相关的部分的所述响应。
6.根据权利要求1、2或3所述的系统,其中,所述方法还包括:
基于在所述内容的所述可能相关的部分中编码的其他内容-实质特征来确定要在所述响应中编码的一个或多个内容-实质特征;
基于在所述内容的所述可能相关的部分中编码的其他内容-风格特征来确定要在所述响应中编码的一个或多个内容-风格特征;以及
生成对所述内容的所述一个或多个可能相关的部分的所述响应,以使得所述响应对所述一个或多个内容-实质特征和所述一个或多个内容-风格特征进行编码。
7.根据权利要求1-6中的任一项所述的系统,其中,所述方法还包括:
当所述系统在半自动模式下操作时,向所述第一用户提供对所述内容的所述一个或多个可能相关的部分的所述响应;以及
当所述系统在自动模式下操作时,向所述CS提供对所述内容的所述一个或多个可能相关的部分的所述响应。
8.一种方法,包括:
接收在通信会话(CS)内交换的内容,其中,所述内容包括一个或多个自然语言表达,所述一个或多个自然语言表达对由参与所述CS的多个用户实行的对话的一部分进行编码;
基于所述多个用户中的第一用户的用户-兴趣模型和所述第一用户的内容-相关性模型来确定所述内容的相关性;
基于所述内容的所述相关性和一个或多个相关性阈值来识别所述内容的一个或多个可能相关的部分,其中,所述内容的所识别的一个或多个可能相关的部分与所述第一用户可能相关;以及
基于所述第一用户的响应-生成模型来生成对所述内容的所述一个或多个可能相关的部分的响应。
9.根据权利要求8所述的方法,还包括:
基于所述内容和一个或多个自然语言模型来确定一个或多个内容特征,其中,所述一个或多个内容特征指示所述一个或多个自然语言表达的预期语义;
还基于所述内容特征来确定所述内容的所述相关性;以及
还基于所述一个或多个内容特征来生成对一个或多个可能相关的部分的响应。
10.根据权利要求8或9所述的方法,还包括:
接收与所述CS相关联的元数据;
基于所接收的元数据和CS上下文模型来确定所述CS的一个或多个上下文特征,其中,所述一个或多个上下文特征指示所述第一用户的所述对话的上下文;以及还基于所述CS的所述一个或多个上下文特征来生成对所述内容的所述一个或多个可能相关的部分的所述响应。
11.根据权利要求8、9或10所述的方法,还包括:
基于所述内容的所述相关性和另外的相关性阈值来识别所述内容的所述一个或多个可能相关的部分的子部分,其中,所述内容的所述一个或多个部分的所识别的子部分与所述第一用户高度相关;
基于所述第一用户的所述响应-生成模型来生成对高度相关的内容的响应;以及向所述第一用户提供对所识别的高度相关的内容和对所述高度相关的内容的所述响应的实时通知。
12.根据权利要求8-11中的任何一项所述的方法,还包括:
基于所述内容和在所述一个或多个自然语言模型中包括的内容-实质模型来确定一个或多个内容-实质特征,其中,所述一个或多个内容-实质特征指示在所述对话中讨论的一个或多个主题;以及
基于所述内容和在所述一个或多个自然语言模型中包括的内容-风格模型来确定一个或多个内容-风格特征,其中,所述一个或多个内容-风格特征指示所述多个用户中的至少一个用户的情绪;以及
还基于所述内容的所述一个或多个内容-实质特征和所述一个或多个内容-风格特征来生成对所述内容的所述一个或多个可能相关的部分的所述响应。
13.根据权利要求8-12中的任何一项所述的方法,还包括:
基于对所述内容的所述一个或多个可能相关的部分的所述响应来接收用户反馈;以及基于所述用户反馈来更新以下中的至少一个:所述响应-生成模型、所述内容-实质模型、或者所述内容-风格模型。
14.根据权利要求8-13中的任何一项所述的方法,还包括:
当在半自动模式下操作时,向所述第一用户提供对所述内容的所述一个或多个可能相关的部分的所述响应;以及
当在自动模式下操作时,向所述CS提供对所述内容的所述一个或多个可能相关的部分的所述响应。
15.根据权利要求8-11中的任何一项所述的方法,还包括:
基于在所述内容的所述可能相关的部分中编码的其他内容-实质特征来确定要在所述响应中编码的一个或多个内容-实质特征;
基于在所述内容的所述可能相关的部分中编码的其他内容-风格特征来确定要在所述响应中编码的一个或多个内容-风格特征;以及
生成对所述内容的所述一个或多个可能相关的部分的所述响应,以使得所述响应对所述一个或多个内容-实质特征和所述一个或多个内容-风格特征进行编码。

说明书全文

用于在通信会话内生成个性化响应的虚拟助手

背景技术

[0001] 人们越来越频繁地发现自己在跨多个计算界面、应用、平台、显示器、和设备分布的多个工作之间进行多任务。例如,由于网络化计算的日益普及,用户现在可以同时参加一个或多个通信会话,例如聊天或即时消息传送(IM)会话,而同时在线购物、生成工作相关的文档、安排车辆保养、或者其他多个任务。
[0002] 对通信会话的活跃参与常常需要对通信会话内的对话的阅读(或者以其他方式消费)、处理、和响应。因此,即使计算设备使得用户能够同时参与独立和不同的任务,但用户仍然可能在对与每个任务相关联的各种功能的实时执行时经历困难。例如,对用户而言,活跃地对对话进行监视、追踪、且表现出响应性,同时在电子交易网站上比较产品、起草有关工作的备忘录、或者针对将其汽车送到服务站的可用性来查阅日历是具有挑战性的。
[0003] 因为当用户的注意转移到其他任务时对通信会话的活跃参与是具有挑战性的,用户可能会有失去在对话中的重要时刻做出响应的机会的险。由此,尝试进行多任务的用户可能对其他用户表现出无反应和/或脱离的。此外,用户可能失去向对话提供其独特视的机会。更加简洁地说,当用户试图将其注意力跨多个任务分配时,实时通信会话的效用和用户体验可能会降低。发明内容
[0004] 提供了该发明内容以用简化的形式引入对在以下的具体实施方式中进一步描述的概念的选择。应当理解的是,该发明内容不旨在标识所要求保护主题的关键特征或必要特征,也不旨在单独用于帮助确定所要求保护的主题的范围。
[0005] 本公开中所描述的实施例旨在向参与一个或多个通信会话(CS)的用户提供增强的服务。在一些实施例中,可以经由增强的虚拟助手(VA)、增强的智能代理(IA)、增强的“聊天机器人”、或者作为用于促进通信的计算机程序或服务的一部分来提供这样的CS服务的至少一部分。增强的服务可以包括分析CS,识别CS的可能相关内容,生成对可能相关内容的响应、以及提供对所识别的可能相关内容的响应。可以通过一种或多种方法来启用各种增强的服务。一种这样的方法可以通过接收在CS中交换的内容来实现。所述内容包括自然语言表达或话语,它们对由参与CS的多个用户实行的对话进行编码。该方法可以通过基于内容和自然语言模型来确定所述内容的内容特征来实现。内容特征指示自然语言表达的预期语义。可以通过确定内容的相关性并识别内容中与用户可能相关的部分来进一步实现该方法。确定内容的相关性可以是基于内容特征、用户的用户-兴趣模型、用户的上下文、和用户的内容-相关性模型的。识别可能相关的内容是基于内容的相关性和各种相关性阈值的。可以基于响应-生成模型来生成对所识别的内容的可能相关的部分的响应。可以将所述响应提供给用户和CS。
[0006] 在各种实施例中,该方法还可以包括监视该用户的用户活动,以及基于所监视的用户活动来识别和/或推断用户-活动模式。另外地,可以从其他数据源(例如,包括用户简档信息的用户历史)推断出用户-活动-模式。可以基于推断的用户-活动模式来生成、更新、和/或训练用户兴趣和/或内容-相关性模型。该方法还可以包括监视用户参与的各种CS,以及识别和/或推断所监视的CS的内容中的模式。例如,可以推断用户提供的内容内的内容-实质和内容-风格特征的各种模式。可以基于所推断的内容-实质和内容-风格模式来生成、更新、和/或训练内容-实质模型、内容-风格模型、和响应-通用模型。当用户脱离了例程,作为用于计算关联性等级的另外的输入时,该方法可以包括CS之外的当前用户上下文的各种特征。
[0007] 该方法还可以包括接收与CS相关联的另外的数据,例如但不限于与CS相关联的元数据。可以基于所接收的另外的数据和CS上下文模型来确定CS的上下文特征。上下文特征可以指示对话的上下文。在一些实施例中,上下文特征特定用户的CS的上下文。内容的相关性还可以基于CS的上下文特征而被确定。生成对内容的可能相关的部分的响应还可以是基于CS的上下文特征的。
[0008] 可以通过识别与用户高度相关的内容的可能相关部分的子部分来进一步实现该方法。识别内容的高度相关的部分可以基于内容的相关性和另外的相关性阈值。另外的相关性阈值可以大于用于识别内容的可能相关部分的相关性阈值。例如,另外的阈值可以是高度相关的阈值或紧急度阈值。对高度相关内容的响应可以是基于响应-生成模型而生成的。可以将高度相关的内容的实时或接近实时的通知以及对高度相关的内容的响应提供给第一用户。
[0009] 在一个实施例中,该方法通过确定内容-实质特征和内容-风格特征而被实现。内容-实质特征和内容-风格特征是基于在自然语言模型中包括的内容实质和内容-风格模型的。内容-实质特征可以指示在对话中所讨论的主题。内容-风格特征可以包括除了内容的实质特征以外的特征。例如,内容-风格特征可以指示参与CS的用户中的一个或多个用户的情绪、情感、语调、音量、节奏、音调、或其他与风格有关的特征,或者与风格有关的特征中的一个或多个的变型或改变。所确定的内容的相关性还可以是基于内容-实质特征和内容-风格特征的。生成对可能相关的内容的响应还可以是基于可能相关内容的内容-实质特征和内容-风格特征的。
[0010] 还可以通过生成内容的可能相关部分中的至少一些的经摘要的版本来实现该方法。可以使用一个或多个自然语言模型来生成经摘要的版本。还可以基于内容的可能相关的部分的经摘要的版本来生成对可能相关的内容的响应。该方法可以将可能相关的内容的经摘要的版本提供给用户。
[0011] 该方法还可以包括确定要在响应中编码的内容-实质特征。确定要在响应中编码的内容-实质特性可以是基于在内容的可能相关的部分中编码的其他内容-实质特征和/或内容-风格特征。在一些实施例中,采用响应-生成模型和/或内容-实质模型来确定要在响应中编码的内容-实质特征。可以确定要在响应中编码的内容-风格特征。确定要在响应中编码的内容-风格特征可以是基于在内容的相关部分中编码的其他内容-实质特征和/或内容-风格特征的。在一些实施例中,采用响应-生成模型和/或内容-风格模型来确定要在响应中编码的内容-实质特征。当方法以半自动模式操作时,首先向用户提供对内容中可能相关的部分的响应。当方法以自动模式操作时,将对内容中可能相关的部分的响应提供至CS。
[0012] 在各种实施例中,用户可以向系统提供关于响应的准确性和/或效用的反馈。各种实施例可以采用该反馈来进一步训练和/或更新各种模型,例如但不限于内容-相关性模型、用户-兴趣模型、用户上下文模型、内容-实质模型、内容-风格模型、或者响应-生成模型。例如,可以向用户提供用户界面(UI),该用户界面(UI)使得用户能够提供关于自动生成的响应的反馈。这样的UI可以包括一个或多个按钮、滑、控制杆、刻度尺等,它们使得用户能够对响应进行评分和/或注释。例如,用户可以用“5中的4”星或某一其他标度来对响应进行评分。评分标度可以是二进制标度,例如“拇指朝上”或“拇指朝下”标度。用户可以注释和/或纠正响应。在一个实施例中,可以针对响应的每个部分向用户提供提示,其中用户可以指示每个部分的效用。提示可以在用户浏览和评价摘要的各个部分时个体地突出显示响应的每个部分。接着,可以基于采用这样的反馈的训练来细化和/或更新各种模型。
[0013] 在其他实施例中,可以经由其他机制来提供用户反馈。例如,该方法可以包括接收对可能相关的部分的至少一个其他响应。该其他响应可以是自动生成的响应的手动组织(curate)或编辑的版本。在另一实施例中,该其他响应可以由用户手动地生成。该其他响应可以用作训练目的的用户反馈。可以生成响应与该其他响应的比较。可以基于该响应与该其他响应的比较来更新包括内容-相关性模型和响应-生成模型在内的模型。也就是说,CS的其他响应可以用作训练内容-相关性模型和响应-生成模型的“真实数据(ground-truth)”或“基线”响应。以该方式,本公开的实施例提供了参与一个或多个CS的增强的效用和用户体验。附图说明
[0014] 下文参考附图详细地描述了本公开的各方面,其中:
[0015] 图1是适合于本公开的实现的示例操作环境的框图
[0016] 图2是描绘了适合于实现本公开的各方面的示例计算架构的图;
[0017] 图3描绘了根据本公开的实施例的用于提供增强的通信会话服务的方法的流程图
[0018] 图4描绘了根据本公开的实施例的用于识别图3的通信会话中与针对其提供响应可能相关的内容的方法的流程图;
[0019] 图5描绘了根据本公开的实施例的用于生成和提供对图3的通信会话内容的响应的方法的流程图;以及
[0020] 图6是适合用于实现本公开的实施例的示例性计算环境的框图。

具体实施方式

[0021] 在本文中具体描述了本公开内容的方面的主题,以满足法定要求。然而,说明书本身不旨在限制该专利的范围。相反,发明人已经构想到,所要求保护的主题还可以结合其他当前或未来技术以其他方式被实施,以包括与本文档中所描述的步骤不同的步骤或步骤的组合。此外,尽管本文中可以使用术语“步骤”和/或“框”来表示所采用的方法的不同元素,但是除非并且除了当明确地描述了各个步骤的顺序时,否则这些术语不应解释为暗示本文所公开的各个步骤之中或之间的任何特定顺序。
[0022] 本公开的各方面涉及向参与一个或多个通信会话(CS)的用户提供各种增强的服务。如在本文通篇中讨论的,所提供的服务可以增强参与一个或多个CS的用户的效用和用户体验。特别地,本文的实施例经由各种自然语言处理(NLP)和其他机器学习(ML)方法来主动地监视和分析一个或多个CS的内容和上下文。基于对CS的内容和上下文的分析,实施例自动地生成响应,所述响应是用户可能在CS中正在进行的对话中手动地提供的。NLP和其他ML方法用于生成用户的可能的响应。也就是说,实施例采用ML方法来“学习”用户原本基于对话的内容和上下文在对话中手动地提供的可能的响应。因此,实施例提供为用户定制的智能代理(IA),其中,所述IA自动地提供可以有助于在一个或多个CS内进行的对话的输入内容(即,响应)。对可能的响应的自动生成可以的响应释放用户的注意力以关注其他活动。因此,用户可以在同时地关注其他任务时,在正在进行的对话中表现出专注。
[0023] 采用各种数据模型(例如但不限于机器学习(ML)数据模型)以实时或接近实时地监视和分析与CS相关的数据,包括CS的内容、元数据以及与CS相关联的其他数据。即,采用数据模型来确定CS的上下文以及基于所确定的上下文和在内容中编码的特征来确定内容的各个部分的相关性。识别基于用户的活动和兴趣而可能与用户相关的内容部分。还可以确定内容中所识别的相关部分的上下文。基于所确定的上下文以及相关部分的实质和风格,各种实施例生成针对CS的另外的内容(例如,响应),其中,响应的实质和风格是以CS的用户和关于该用户的上下文为目标的。也就是说,实施例自动地为CS生成响应,其中,所生成的响应是以用户和用户在CS内的上下文为目标的。
[0024] 更具体地,实施例基于所分析的内容和内容实质数据模型来生成逻辑响应。逻辑响应可以包括响应的语义或实质。例如,如果响应包括对在可能相关的内容中向用户提出的问题的回答,则逻辑响应可能包括对该问题的回答。对逻辑响应进行更新,以基于内容-风格数据模型来生成以用户的对话风格为目标的风格化响应。该风格化响应是一种个性化响应,其包括响应的实质以及模拟用户的对话风格的风格化特征两者。在上文的示例中,风格化响应可以包括对该问题的回答,但是是以模拟或模仿用户在回答问题时的对话风格的方式来措辞的。
[0025] 实施例可以以“半自动模式”操作,其中,风格化响应和/或逻辑响应提供给用户,以使得用户可以在向CS提供响应之前手动地编辑和/或更新风格化响应和/或逻辑响应。可替代地,实施例可以以“自动模式”操作,其中,风格化响应在没有用户的干预的情况下被自动地提供给CS。
[0026] 在任何一种操作模式下,都可以向CS提供指示符或通知以及响应,其中,指示器或通知向参与CS的其他用户指示,至少一部分响应是经由IA自动生成的。在其他实施例中,没有提供这样的指示符,并且因此由于风格化响应模拟了用户的对话风格,所以其他用户不会意识到响应是代表用户经由IA自动生成的。因此,实施例提供了这样的IA,其使能代表用户经由一个或多个CS自动或半自动地参与对话。此外,IA可以秘密地操作,以使得参与该对话的其他用户可能没有意识到IA正在代表用户参与对话。因此,实施例可以为一个或多个CS自动地生成和/或提供内容,其中,自动生成的内容在风格和实质两者上与用户原本可能手动提供的内容相同或类似。
[0027] 如上所述,经由对用户原本可能提供的内容的生成和提供,IA可以自动地或半自动地代表用户行事。因此,与参与一个或多个CS相关的用户的人工负担会显著减少,并且用户的注意力可以转移到其他任务上。另外,因为对可能相关的内容的响应的生成是自动化的,所以实施例使得该用户能够同时参与多个CS,这使得参与任何给定的CS的其他用户可能没有意识到该用户的注意力至少暂时地转移到其他任务,例如消费和提供对其他CS的响应。
[0028] 自动生成的响应可以以文本或可听见的格式被提供给CS或用户。在一些实施例中,响应的文本在托管CS的窗口中被提供。在其他实施例中,响应的文本在另一个窗口中被提供,以使得用户可以编辑该文本并且将该文本复制和粘贴到托管CS的窗口中。在一些实施例中,采用文本到音频服务来自动地生成响应的话音版本。在一些实施例中,采用ML方法自动地生成模拟该用户的语音的响应的话音版本。也就是说,可以生成响应的可听见的版本,其听起来类似于好像该用户说出所述响应一样。当以自动模式操作时,响应的这样可听见的版本可以被直接提供至CS,这使得参与CS的其他用户可以有该用户说出了这样的自动生成的响应的印象
[0029] 如在本文通篇中所讨论的,可以采用各种ML方法来分析CS的内容和上下文,以及确定内容的相关性并且为用户自动地生成逻辑的和风格化响应。更加特别地,采用ML方法来生成和/或训练各种ML数据模型,以确定内容的实质和风格中的每一个,以及与一个或多个特定用户的相关性。另外地,生成和/或训练以用户为目标的ML数据模型以识别用户的相关内容并为用户生成逻辑的和风格化响应。即,在本文中所讨论的数据模型中的每个可以是对特定用户定制的。
[0030] 因为数据模型是对每个用户定制的,所以对相关内容的识别以及对逻辑的和风格化响应的生成是以每个特定用户为目标的。即,可以为特定用户生成例如但不限于用户-兴趣、内容-相关性、内容-实质、以及内容风格数据模型的数据模型。可以基于监视的用户活动和推断的用户-活动模式以及特定用户的用户简档信息来训练用户-兴趣模型和内容-相关性模型。可以基于监视用户生成以及提供至各种CS的内容以及参与CS的其他用户生成的内容来训练内容-实质模型和内容-风格模型。
[0031] 可以采用用户-兴趣模型和内容相关性模型以及CS的上下文来确定特定于用户和CS上下文的内容的相关性。可以采用内容-实质模型以响应于被确定为与用户相关的内容来生成逻辑响应。采用内容-风格模型来更新逻辑响应和/或生成风格化响应。在一个实施例中,各种实施例向用户提供实时通知,以指示与用户可能相关的内容以及对该可能相关的内容所生成的逻辑的和风格化响应。也就是说,当内容被识别为可能相关时,实施例可以提供对可能相关内容的实时的可听见和/或视觉指示,以及自动生成的逻辑的和风格化响应。
[0032] 分析CS的内容以及生成对可能相关内容的逻辑的和风格化响应可以包括采用各种ML方法(例如,经训练的NLP模型)以确定和/或识别内容的各种内容特征,例如但不限于内容实质和内容-风格特征。内容-实质特征指示在经由CS实行的对话中嵌入的自然语言话语和/或表达的语义或含义。即,内容-实质特征可以指示正在交谈的主题,以及说话者表达的意图语义含义和上下文。相反,内容-风格特征指示嵌入在对话中的自然语言话语和/或表达的各种风格特征。即,内容-风格特征指示讲话者的说话风格。
[0033] 分析CS的上下文可以包括经由ML方法、统计分析、和其他数据分析技术来确定各种上下文特征。上下文特征指示经由CS实行的对话的上下文。上下文特征可以是特定于用户的,例如用户是否可用于对对话进行响应、是否用户分心(例如,没有托管CS的窗口是否在其显示设备的前台)、或者用户是否同时参与多于一个CS。所确定和/或所识别的内容相关性可以基于所确定的内容特征和上下文特征以及所监视的用户活动、推断的用户-活动模式、和/或所生成的用户-兴趣模型。可以采用人类代理来分析CS的上下文。例如,用户可以手动地提供CS的上下文。
[0034] 可以经由各种ML方法来生成逻辑的和风格化响应,该ML方法接收所分析的内容和上下文(例如,内容和上下文特征)以及内容的相关性作为输入。可以在针对CS的用户和上下文生成对可能相关内容的逻辑的和风格化响应时采用一种或多种ML方法。
[0035] 因此,各种实施例针对提供增强的CS服务的增强的虚拟助手(VA)。这样的增强的CS服务包括但不限于:自动地识别CS内与用户可能相关的对话的部分以及自动地生成特定于用户的、对对话的可能相关的部分的响应。所述响应可以是风格化的以模拟用户的谈话风格。在自动模式下,响应被自动地提供至CS。相比之下,在半自动模式下,响应被提供给用户,以使得用户可以决定是将该响应继续传递至CS,还是在将该响应提供至CS之前向该响应提供另外的编辑或风格化。
[0036] 更加特别地,基于用户的兴趣、用户的历史和/或当前用户活动、CS的上下文、和/或该用户与参与CS的其他用户之间的关系、以及在本文中所讨论的各种其他因素,内容的相关性的确定可以以用户为目标。在各种实施例中,监视用户的活动并且推断和/或学习用户-活动模式。用户活动信息(例如,推断的用户-活动模式)用于生成各种用户-兴趣数据模型。即,实施例采用各种ML方法来学习用户感兴趣的主题。用户可以经由提供用户简档信息和/或手动组织所生成的用户-兴趣模型来协助生成和/或更新用户-兴趣模型。实施例基于各种ML方法来学习经由生成用户-兴趣模型和其他数据模型以识别相关内容。
[0037] 基于内容的用户目标相关性和CS的上下文、以及用户对响应的风格和实质特征的偏好,自动生成的逻辑的和风格化响应可以以用户为目标。也就是说,各种实施例可以学习另外的数据模型,其指示用户偏好的实质和风格特征以编码在自动生成的响应中。用户可以经由手动组织对可能相关内容的识别以及手动组织自动生成的逻辑的和风格化响应来协助生成和更新各种数据模型,所述各种数据模型使能够分析CS、识别CS的相关内容、并且生成对CS的可能相关内容的有用响应。例如,实施例可以基于用户在半自动模式下编辑所生成的逻辑的和/或风格化响应以及在CS内提供手动生成的响应来更新各种ML数据模型。自动生成的逻辑的和风格化响应可以以文本格式和/或经由可听见的话音被提供给用户,所述可听见的语音是经由VA支持的文本到语音服务而被自动生成的。
[0038] 例如,可以例如经由托管CS的聊天窗口来提供风格化响应,例如在Skype会议的Skype聊天窗口内。特别地,在一个示例中,在返回到用户没有活跃参与的CS时,VA或其他服务可以在聊天窗口内提供一个或多个响应。在一些实施例中,所述响应可以在与该聊天窗口分开的另一窗口中被提供给用户,这使得该用户可以手动地编辑所述响应并且将所述响应复制和粘贴到聊天窗口中。此外,所述响应可以被存储、索引、和/或归档以用于在记录保存、查询、和/或训练各种ML数据模型时使用。
[0039] 对于被识别为与用户高度相关的内容,各种实施例可以提供实时和/或接近实时的、可听见的和/或视觉的通知或提示,以引起用户对内容的注意。例如,如在本文中所讨论的,所确定的相关性可以包括所确定的内容的重要性和时间紧急性。当用户同时参与框多个窗口或用户界面分布的多个CS时,各种实施例可以在用户的显示设备的前台中突出显示或定位包括所识别的高度紧急或高度重要的内容以及自动生成的响应的用户界面。用户的注意力还可以指向高度紧急的内容和自动生成的响应,其中在现在在显示设备前台中的用户界面内具有另外的选择性突出显示。用户可以经由选择(例如,单击选择)来提供对CS的自动生成的响应。例如,在CS期间请求用户输入的情况下,或者在CS的成员在进行决策并且需要用户的输入或用户通常希望加入的情况下,这样高度紧急的内容和所生成的响应可以向用户突出显示。
[0040] 因此,除了自动地生成对可能相关内容的逻辑的和/或风格化响应之外,各种实施例所提供的增强的CS服务包括识别和突出显示与用户高度相关的CS内容,以及对高度相关内容的响应的突出显示。对高度相关的内容的识别以及对逻辑的和风格化响应的识别是以特定用户为目标的。在一个实施例中,可以经由自动生成的语音来提供用于突出显示高度相关的内容和响应的通知。基于语音的通知可以包括高度相关的内容、高度相关的内容的经摘要的版本,以及所生成的响应。在其他实施例中,所述通知可以仅包括将用户的注意力引向特定用户界面的语音或以其他方式可听见的指示,所述特定用户界面包括高度相关的内容(或者其摘要)以及所生成的响应。
[0041] 在一些实例中,可以经由增强的“VA”或至少增强的“聊天机器人”(或简称为增强的“机器人”)来提供由在本文中所描述的各种实施例中的一些支持的增强的CS服务的至少一部分,其支持也在本文中讨论的智能代理(IA)的实施例。尽管常规的VA和常规的聊天机器人先前已经可用,但是这些常规的VA和聊天机器人无法自动识别可能相关的内容,其中,对可能相关的内容的识别是以用户为目标的,其基于用户的兴趣和CS上下文,经由基于用户的活动训练的用户-兴趣模型和内容-相关性模型。此外,常规的VA和聊天机器人不生成逻辑的和风格化响应,其基于根据用户对其他CS的参与而训练的内容实质和内容风格数据模型。
[0042] 相反,常规的VA和聊天机器人可以自动生成对CS的用户提出的问题的响应。即,常规的VA和聊天机器人正在尝试使代理能够通过基本形式的“图灵测试”。相比之下,本文的各种实施例采用诸如NLP之类的各种ML方法的技术实现来识别由用户生成的相关内容,并且基于经训练的NLP数据模型来生成被标识为对可能相关的内容的响应,所述NLP数据模型被训练为模拟用户的对话风格。
[0043] 与常规的VA和聊天机器人进一步对比,本文的实施例实现例如但不限于主题建模和关键词分析的ML方法,以识别以特定用户的用户-兴趣、用户-活动模式、和内容实质和风格偏好为目标的可能相关的内容。此外,内容的相关性可以基于CS的上下文。传统的VA和聊天机器人通常对相同的问题提供相同的响应,而与提出问题的用户以及在其中提出问题的上下文无关。也就是说,由常规VA或聊天机器人生成的内容是通用的,而不取决于被提供内容的用户和/或CS的上下文,所述上下文例如但不限于CS的其他成员、有关CS的其他信息、用户当前所在的位置、用户正在使用哪种类型的用户设备访问CS、用户正在参与的其他正在进行的CS、用户的日程安排、和/或用户可能在CS期间参与其中的其他活动。然而,通过采用用户特定的数据来生成和更新数据模型,本文的各种实施例的目标是对可能与用户相关的内容的识别以及对所识别的可能相关的内容的响应的生成。内容的相关性是经由用户-兴趣和内容-相关性数据模型来确定的,所述数据模型基于用户特定的兴趣、活动、和CS的上下文,而所述响应是经由内容-实质和内容-风格数据模型生成的,所述数据模型基于各种NLP方法以及用户的对话风格。
[0044] 用户可以同时参与多个CS,其中,各种实施例可以基于每个CS的分别的上下文来提供对CS中的每个CS的可能相关的内容的响应。例如,用户可能同时参与第一CS,其中,该上下文与职业有关,以及第二CS,其中,该上下文与家庭有关。第一CS的风格化响应可以是适合于工作相关的对话的对话风格,而第二CS的风格化响应可以是适合于家庭相关的对话的对话风格。类似地,实施例可以为参与一个或多个CS的多个用户实时或接近实时地生成响应。也就是说,各种实施例可以包括多组数据模型,其中每组数据模型与一个特定用户相对应。例如,实施例可以为参与CS的第一用户提供第一响应,为参与CS的第二用户提供第二响应。第一响应以与第一用户相关联的对话风格被风格化,而第二响应以与第二用户相关联的对话风格被风格化。也就是说,每个响应都基于与响应相对应的用户的内容-相关性、内容-实质、和内容-风格数据模型,以及对应的用户的CS上下文。
[0045] 如在本文所使用的,术语“通信会话”和“CS”可以互换地使用,以宽泛地指代采用两个或更多个计算设备在两个或更多个用户之间交换信息和/或数据的任何会话。在CS中交换的信息和/或数据在本文中可以被称为“CS内容”,或简称为“内容”。例如,CS可以包括一个或多个电子邮件消息(即,email)在两个或多个用户之间的交换,其中电子邮件包括文本和/或非文本内容。在一些实施例中,CS可以是实时CS,例如但不限于“聊天”或“即时消息传送”(IM)会话。CS可以包括文本、可听见的、和/或视觉内容的交换。视觉内容可以包括图像、图形、和/或视频内容。因此,内容可以包括多媒体内容。因此,两个或更多个用户可以经由CS实现的内容交换来实行“对话”。
[0046] 一些CS可以包括文本内容的实时交换(例如,IM或文本聊天会话),而其他CS可以包括视频和/或音频内容的实时交换(例如,视频聊天会话)。在一个实施例中,CS可以包括仅音频内容的实时交换。例如,可以经由互联网语音协议(VOIP)来启用CS。CS可以是电话和/或视频通话。对于涉及口头对话的实施例,即,自然语言话语和/或表达是可听见的,可以使用语音到文本服务来生成文本内容以用于对内容和上下文进行分析。
[0047] 尽管在本文中列举了CS的各种实时示例(即,能够进行实时对话的那些CS),但是应当理解,CS可以不需要是实时CS。用户可以但不一定同时参与一个以上的CS。因此,各种实施例可以实时或接近实时地同时监视、分析用户当前正在参与的多个CS,并且为其提供响应。
[0048] 更加具体地,用户可以同时参与多个CS,其中,针对多个CS中的每个CS向用户提供在本文中所描述的增强的CS服务。也就是说,被提供以增强的CS服务的用户可以经由一个或多个CS来参与一个或多个实时“对话”。单独的或不同的用户群组或集合可以参与和/或关联于一个或多个CS中的每个CS。例如,用户A可以同时参与CS_X、CS_Y、和CS_Z,其中,用户A、用户B、和用户C参与CS_X(或与CS_X相关联);用户A、用户D、和用户E正在参与CS_Y;用户A、用户B、和用户F正在参与CS_Z。因此,用户可以经由与独立的相关联的用户群组交换多个CS内的内容来同时参与多个对话。
[0049] 所交换的内容可以但不一定包括自然语言内容。即,内容可以包括自然语言话语和/或表达的有序序列。每个话语和/或表达可以包括自然语言标志(例如,词语)的有序序列。内容单元在本文中可互换地被称为“内容行”或简称为“内容行”。因此,CS包括内容行的有序序列。每个内容行可以包括口头或文本自然语言标志、短语、句子、句子片段、段落、字母数字字符、标点符号等的有序序列。内容行可以等同于聊天会话中的文本或口头内容行。然而,应当注意的是,内容行可以包括(文本或口头的)聊天会话行的片段和/或多个聊天会话行的有序序列。内容行可以包括一个或多个声明性陈述、说明性陈述、问题、对问题的回答、或几乎任何自然语言表达或话语。因此,经由CS实行的对话由内容行的有序序列(即,CS的内容)组成。
[0050] CS内容可以包括符号,例如但不限于数学、代数、几何、工程、和/或逻辑符号。例如,内容可以包括任何数学或逻辑符号、表示符、或运算符,例如微分、乘积、或求和运算符。在内容中包括的数学表示符的另一个示例是张量、矩阵、和矢量表示符。内容可能包括工程示意符号,例如针对电阻器、二极管、和晶体管的示意表示。
[0051] 其他符号内容可以包括表情符号(emoji)、情感符号、化身、(动画和/或静态)GIF、或图像数据等。例如,用户经常在内容中包括表情符号和/或动画GIF以传达概念。因此,“自然语言表达”可以包括任何这样的符号内容,例如数学表示符、表情符号、情感符号、和GIF。各种自然语言处理(NLP)和自然语言模型(例如但不限于内容实质、内容-风格、和响应生成模型)能够分析和生成包括这样的符号内容的内容。
[0052] 在至少一个实施例中,可以经由对与符号内容相关联的各种概念的识别来将这样的符号内容自动地转换成文本内容。例如,可以对包括流行的“茄子”表情符号的内容进行分析,以在内容中包括该表情符号的任何地方都包括令牌或词语“茄子”。在一些实施例中,可以在这样的自然语言模型中采用与符号内容相关联的元数据和/或其他标识数据。可以采用图像识别、图像特征提取、或计算机视觉方法来分析和/或生成这样的符号内容。因此,自然语言模型可以包括深度学习自动编码器和/或解码器,以分析和/或生成包括符号表达的自然语言表达。
[0053] 因此,在各种实施例中,可以自动生成响应,其中,所述响应包括一个或多个表情符号、情感符号、动画GIFS、数学表示符、和其他符号内容。可以生成各种响应来表示用户的可能的风格选择,例如情感、情绪等。即,可以自动地生成风格化响应以包括用户的可能的风格选择,例如在响应中编码情感和情绪。例如,可以经由在响应中包括“笑脸”表情符号来生成风格化响应,以表示用户的认可或幸福。可以训练内容-风格和响应生成模型,以模仿和/或模拟采用表情符号、情感符号、和其他符号内容的用户的风格选择。
[0054] 如在本文中所使用的,术语“响应”可以指的是至少部分地由在本文中所描述的各种实施例生成的任何内容。术语响应被广泛地使用,并且不限于对用户提出的一个或多个问题的回答。相反,响应可以是内容的子集,其中,该子集是至少部分地经由实施例生成的。因此,自动生成的响应可以包括一个或多个声明性语句、说明性语句、问题、对问题的回答,或者几乎任何自然语言表达或话语。
[0055] 术语“逻辑响应”可以是指编码一个或多个内容-实质特征的响应。更加具体地,逻辑响应可以包括一个或多个已编码或未编码的内容实质特征的有序或无序集合。在其他实施例中,逻辑响应包括自然语言标志(例如,名词和动词)的有序或无序的集合。自然语言标志可以被布置在能够被解释为响应的实质的表达式中。术语“风格化响应”可以是指编码一个或多个内容-风格特性以及内容-实质特征的响应。因此,风格化响应可以包括以模拟用户会话风格的顺序来布置的自然语言标志的有序集合。风格化响应可以包括另外的自然语言标志,所述标记被包括在对应的逻辑响应中,以提供对在逻辑响应中包括的对标志的声明、修改、或另外的风格或实质意义。因此,风格化响应可以包括自然语言短语、表达、句子、句子片段、段落等。
[0056] 内容编码一个或多个内容特征。当内容被分析时,可以针对内容的每一行来确定一个或多个内容特征。如在本文通篇中所述,当生成响应时,可以确定一个或多个内容特征以在所生成的响应中编码。在内容行、响应行、或内容的另一部分中编码的内容特征可以包括对内容行的“说话者”的指示或编码。如在本文中所使用的,内容的说话者是指生成内容和/或将内容提供给要交换的CS的用户。在响应的上下文中,说话者是为其生成响应的用户。说话者可以或者可以没有可听到地说出内容。例如,说话者可以手动地录入或键入内容。内容特征还可以包括对内容行所指向的用户或用户群组的指示。例如,如果内容行包括针对特定用户或用户群组的问题,则该内容行的内容特征可以包括该特定用户或用户群组。内容特征还可以包括对内容行是否包括一个或多个声明性语句、解释性语句、问题、对问题的响应等的一个或多个指示。
[0057] 在内容行、响应、或内容的另一部分(例如内容行的连续块)中编码的内容特征可以包括内容-实质特征和内容-风格特征两者。内容行的内容-实质特征可以编码或指示内容行的概念或语义成分。即,内容-实质特征可以指示与内容行相关联的语义、含义、和/或意图。内容-实质特征可以指示与内容行相关联的一个或多个主题和/或关键词。内容-实质特征还可以指示说话者的情绪。即,情绪内容-实质特征可以对在内容中表达的所识别和/或经分类的观点进行编码。
[0058] 相比之下,内容的内容-风格特征可以编码或表示内容行的说话者的风格(例如,语法)选择。即,内容-风格特征可以指示说话者的语法、词汇、和对话选择。例如,内容-风格特征可以对说话者的讲话风格或对话风格进行编码。内容-风格特征可以另外对说话者的一种或多种情绪进行编码,例如,愤怒、惊奇、满意、幸福、和其他情绪。内容-风格特征可能会指示说话者的语调、音调、速度、和音量,以及这些特征的改变,例如加速、减速、或改变音量。
[0059] 针对CS所确定的上下文特征可以包括但不限于:参与CS或与CS相关联的每个用户的指示或编码、相关联的用户中的每个用户的活动和/或参与度等级、以及相关联的用户中的每个用户的可用性。上下文特征还可以指示启动和终止CS的时间戳、CS的持续时间、以及对相关联的用户已经参与或正在参与的其他过去或当前CS的指示。另外的上下文特征可以指示每个相关联的用户的近似地理信息和/或逻辑位置。CS上下文特征可以包括或者基于相关联的用户中的每个用户的任何用户简档信息。
[0060] CS的上下文特征可以指示或编码层级关系图,该层级关系图指示CS的相关联的用户对中的至少一些对之间的一个或多个关系。所指示的关系可以包括专业关系、个人关系、或遗传关系。例如,关系图可以指示管理者/下属关系、配偶/个人合伙关系、父母/孩子/兄弟姐妹关系、或者针对相关联的用户对的任何其他这样的关系。上下文特征可以指示一个或多个社交网络图,所述一个或多个社交网络图基于用户采用的一个或多个社交网络平台和/或从用户使用的一个或多个社交网络平台所生成。上下文特征可以包括指示,例如但不限于用于在对话中参考和/或交换的材料的静态或动态链接,所述材料例如电子邮件、网站、幻灯片、电子表格、文件、或者包括任何多媒体内容的其他这样的文档。这样的多媒体内容可以包括电子书(e-book)、音频和/或视频文件、动画、组织结构图,或者其他这样的可听见、视觉、和/或文本内容。
[0061] 上下文特征可以编码一个或多个上下文标签。例如,“社交”标签可以在针对社交对话或交互的CS的上下文特征中被编码,而“工作”和/或“会议”标签可以是针对与工作有关的会议的CS的CS上下文特征。上下文特征可以指示或编码会议标题、会议主题、会议议程、会议时间表、或者指示CS对话的结构和/或主题的其他这样的信息。上下文特征可以指示CS的一个或多个隐私和/或加密配置。CS的上下文特征可以编码指示CS的上下文的基本上任何可确定的信息。
[0062] 上下文特征可以为CS内的至少一部分用户编码“角色”或“位置”。例如,上下文特征可以编码特定用户是CS内的“领导者”、“参与者”、还是“观察者”。每个用户的CS的上下文可以是基于他们在CS中的角色或位置的。因此,对于特定用户,对可能相关的内容的识别和对可能相关内容的响应的生成可以是基于其在CS中的角色或位置以及其他用户中的每个用户的角色或位置的。上下文特性可以是特定于用户的。例如,上下文特性可以指示用户是能够手动地提供对可能相关内容的响应,还是用户不能够提供这样的响应。在某些实施例中,仅当用户不能够手动地提供响应时,才自动地生成响应。上下文特征可以指示用户是否分心,或者用户当前是否在参与多于一个CS。
[0063] CS的内容和上下文特征在本文中可以统称为CS的“CS特征”。CS特征可以是基于与参与CS的用户中的任何用户相关联的数据的,包括但不限于针对每个用户的任何用户简档信息,例如用户-兴趣和用户活动信息。用户活动信息可以包括所监视和/或所检测的用户活动,以及所确定、识别、和/或学习的用户-活动模式。例如,可以基于监视和分析用户活动来学习用户-活动模式。
[0064] CS特征可以是基于在CS中交换的内容以及与CS相关联的任何数据(例如但不限于元数据)的。可以采用各种ML方法来学习各种数据模型,所述数据模型用于确定和/或识别CS的内容和上下文特征。实施例采用各种引擎、分析器、检测器、逻辑单元、数据模型、或其他这样的组件来确定和/或识别CS特征。机器学习(ML)方法的各种实施例可以用来在确定和识别CS特征时训练模型。例如,可以采用各种深度学习(DL)方法来开发和/或训练一个或多个自然语言模型(NLM),例如但不限于主题模型、关键词模型、和语义模型,以确定内容行的内容-实质特征和内容-风格特征。自然语言模型可以包括一种或多种经训练的内容-实质模型和一种或多种内容-风格模型。可以基于历史CS内容数据来训练内容-实质模型和内容-风格模型。类似地,可以训练上下文模型以基于历史CS上下文数据来确定CS的上下文特征。CS特征可以是可观察的特征或变量。在一些实施例中,CS特征的一部分可以包括潜在和隐藏的特征或变量。
[0065] 可以基于经由对CS内容的分析所确定的CS特征以及用户的用户-兴趣和内容-相关性模型来确定针对内容行中的一个或多个行的相关性。可以至少基于用户的用户-兴趣模型以及所监视的用户活动来训练内容-相关性模型。即,可以基于监视和/或检测用户活动以及推断用户-活动模式来训练用户-兴趣模型。在一些实施例中,可以基于所推断的用户-活动模式来确定和/或识别针对用户-兴趣的主题。另外地,在一些实施例中,用户可以基于用户简档信息来组织和/或更新他们的用户-兴趣模型。
[0066] 为了生成各种数据模型,可以使用与用户相关联的一个或多个用户设备上的传感器来随时间收集与用户活动相对应的数据。根据该历史用户活动信息,计算机系统可以学习与用户设备相关联的用户-活动模式。通过分析用户-活动模式,可以推断出各种数据模型(例如但不限于用户-兴趣模型和内容-相关性模型),它们用于识别可能与用户相关的内容。在一些情况下,可以分析用户-活动模式以及由用户设备所收集的传感器数据,并且可以基于确定与所确定的内容-相关性模型一致的相关性来推断内容与用户的相关性。
[0067] 如在本文中另外描述的,在一些实施例中,用户设备可以采用一个或多个传感器来经由用户设备生成与用户的活动相关的数据。用户活动可以被监视、跟踪、并且用于确定用户-活动模式。术语“用户-活动模式”或简称为“活动模式”在本文中可互换且宽泛地使用,并且可以指代使用一个或多个用户设备进行的多个用户交互、在一个或多个用户设备上或者与一个或多个用户设备相联系的活动、与用户活动相关的事件(包括动作)、或者经由计算设备可确定的任何类型的用户活动,其中,多个交互、动作、事件、或活动共享共同的特征或特性。在一些实施例中,这些共同的特征或变量可以包括表征用户活动、时间、位置、或与该用户活动相关联的其他上下文信息的特征,如在本文中进一步描述的。用户-活动模式的示例可以包括但不限于基于时间的活动模式(例如,用户在每个月初附近浏览其行的网站以查看其账户余额)、位置(例如,在早晨到达公司后,用户调低她电话上的音量)、CS内和/或外的内容(例如,用户通常浏览有关新闻的网站,然后浏览有关其社交媒体的网站)、或其他上下文,如在文本中所描述的。
[0068] 在一些实施例中,用户活动可以与用户的浏览活动相关,例如网站、网站类别、或用户访问的网站和/或网站类别的序列、以及与浏览活动相关联的用户活动。另外地或可替代地,用户活动可以与用户的有关应用(或app)的活动(例如,应用使用)相关,其可以包括使用期限、启动、经由应用访问或与应用使用相结合的文件、或者与应用相关联的内容。术语“应用”或“app”在本文中被宽泛地使用,并且通常指代计算机程序或计算机应用,其可以包括一个或多个程序或服务,并且可以在用户的设备上或在中运行。
[0069] 基于所确定的用户-活动模式和其他因素,至少可以生成和/或更新用户-兴趣和/或内容-相关性模型。基于推断的用户-兴趣模型和内容-相关性模型以及其他因素(例如,CS的上下文特征),可以识别可能与用户相关的CS内容。对可能相关的内容的一个或多个响应可以被自动地生成并且提供至用户或CS,以使得该用户接收关于该CS的改进的效用和用户体验。
[0070] 由此,在一个实施例中,为了在较高平上生成能够识别和提供对CS的可能相关内容的响应的各种数据模型,从一个或多个数据源接收用户数据。可以通过使用与用户相关联的用户设备上的一个或多个传感器或组件来收集用户数据来接收用户数据。也结合图2的组件210描述的用户数据的示例可以包括关于用户设备的信息、与用户设备相关联的用户活动(例如,应用使用、在线活动、搜索、通话、使用持续时间、以及其他用户交互数据)、与网络有关的数据(例如,网络ID、连接数据、或其他与网络相关的信息)、应用数据、联系人数据、日历和社交网络数据、或可由用户设备或其他计算设备感测或确定的几乎任何其他用户数据源。所接收的用户数据可以被监视,并且关于用户活动的信息可以在诸如图2的用户简档240的用户简档中被存储。
[0071] 在一些实施例中,基于可以从用户数据确定的一个或多个用户设备的识别,针对用户活动监视一个或多个用户设备,包括用户当前参与或先前已经参与的一个或多个CS内的内容的生成。在某些实施例中,可以使用在所监视的用户设备上运行的应用或服务来促进用户活动监视。可替代地或另外地,可以使用在云中运行的应用或服务来促进用户活动监视,该应用或服务可以扫描用户设备或检测与用户设备相关联的在线活动(例如,HTTP请求或其他通信信息),或者以其他方式从用户设备接收有关用户活动的信息。
[0072] 可以分析用户数据以检测与用户动作相关联的各种特征。检测到的用户动作或“活动事件”(其可以包括诸如网站被访问的、应用被启动之类的动作,或者类似于在本文中所描述的动作之类的其他动作)可以与相关联的用户活动上下文数据一起被记录,例如通过记录带有对应的时间戳、位置戳的观察到的用户动作,和/或将活动事件与其他可用的上下文信息相关联。在一些实施例中,可以在每个用户设备上执行这样的日志记录,以使得可以跨设备确定用户-活动模式。此外,在一些实施例中,可以使用基于云的用户活动信息源,诸如从社交媒体帖子、电子邮件等确定的在线用户日历或用户活动。这些源还可以用于向在用户设备上检测到的用户活动提供其他用户活动上下文。在一些实施例中,可以组合来自多个用户设备的用户活动日志和来自基于云的源的可用用户活动信息,由此表示复合用户活动历史。包括对应的用户活动上下文信息的用户活动日志可以被存储在与用户相关联的用户简档中,例如图2的用户简档240。
[0073] 根据活动日志或用户活动数据,历史用户活动信息可以被确定,并且被提供给推理和/或学习引擎,例如图2的学习引擎270。基于对历史用户活动以及在某些情况下有关用户活动的当前传感器数据的分析,可以生成、更新、和/或训练用户-兴趣模型、内容-相关性模型、内容-实质模型、内容-风格模型、和CS上下文模型中的一个。特别地,学习引擎可以对历史用户活动信息进行分析,以识别用户感兴趣的主题,以及可以用来识别、突出显示、和/或提供对可能与用户相关的内容的响应。
[0074] 在一些实施例中,可以采用各种数据模型来确定针对一个或多个CS特征的对应的置信度权重或置信度分数,其指示与确定CS特征相关联的置信度和/或概率。例如,对于经训练的用户-兴趣模型,兴趣置信度分数可以是基于在给定CS上下文和用户活动的情况下,用户对特定主题感兴趣的可能性或概率的,其可以由用于确定与主题相关联的用户-活动模式的观察次数、用户活动与主题一致的频率、活动观察的年龄或新鲜度、与关联于主题的活动观察所共同的特征的数量、或类似的度量来确定。在某些实例中,当识别与用户相关的内容时,可以考虑兴趣置信度分数。
[0075] 此外,在一些实施例中,可能需要最小或最大置信度分数来确定CS特征。例如,在一个实施例中,利用0.6(或刚好超过百分之五十)的CS特征阈值以使得当相关联的置信度分数对应于0.6(或更大)的可能性、置信度、或相关性时,仅仅识别出CS特征。然而,在使用置信度分数和阈值的情况下,在各种实施例中仍然可以采用具有小于阈值的置信度分数的CS特征。然而,可以使得这些CS特征在分析中不重要。即,对于各种实施例中的确定和/或识别中的每个,可以基于相关联的置信度分数来对任何单个所确定的CS特征的影响进行加权。
[0076] 在一些实施例中,可以包括用户活动历史的众包(crowdsourced)训练数据也可以与各种数据模型中的任何一种的生成和更新相结合地使用,所述模型例如但不限于用户-兴趣和内容-相关性模型。例如,对于给定用户,可以基于具有与给定用户共同的特征或特性来识别与该给定用户相似的一组其他用户。这可以包括位于给定用户附近的其他用户、给定用户的社交媒体好友、工作同事(可以从与给定用户相关联的上下文信息的分析中确定)、具有类似用户-活动模式的其他用户,等等。可以依赖来自其他用户的有关数据模型的信息来推断给定用户的用户-活动模式。这在给定用户几乎没有用户活动历史记录(例如,该用户是新用户)的情况下会特别有用。在一些实施例中,可以将来自相似用户的数据模型归给新用户,直到有足够的用户历史可以用于该新用户以确定统计上可靠的用户-兴趣和内容-相关性预测为止,这可以是基于包括在用户活动历史信息中的观察数或所确定的用户-活动模式的统计置信度来确定的,如在本文中进一步描述的。在某些情况下,在数据模型来自其他用户的情况下,可以向给定用户的所得出的推断的用户-兴趣和内容相关性分配较低的置信度分数。
[0077] 在一些实施例中,对CS特征、用户-兴趣、或内容相关性的确定可以是基于对与CS相关联的数据(例如,元数据)所执行的语义分析的。例如,CS特征可以被分类(例如,按照类型、类似的时间范围、或位置),并且相关的CS特征可以在确定内容的相关性时被识别。在一些实施例中,可以采用语义知识表示,例如关系知识图。在一些实施例中,语义分析可以使用规则、逻辑(例如,关联或条件)、或分类器。
[0078] 语义分析还可以用于表征CS的上下文,例如,基于访问的频率来确定与各种用户活动相关联的位置对应于用户感兴趣的中心或场所,例如用户的家、工作地点、健身房等。(例如,可以将用户的家庭中心确定为用户将在晚上8点至早上6点之间花费大部分时间的位置。)类似地,语义分析可以确定一天中与工作时间、午餐时间、通勤时间等相对应的时间。
[0079] 以该方式,可以采用语义分析来确定用户-兴趣。例如,除了确定用户在某一时间访问的特定网站(例如,午餐时访问CNN.com)之外,还可以确定网站的类别,例如新闻相关网站。类似地,语义分析可以基于活动的特性将用户-兴趣关联为与工作或家庭相关联(例如,在工作时间期间在与用户办公室相对应的位置处发生的关于卡方分布(tri-squared)的一批在线搜索可以被确定为与工作有关的兴趣,而周五晚上在与用户的家相对应的位置处流式播放电影可以被确定为与家庭有关的兴趣)。当确定内容的相关性并识别可能相关的内容时,可以考虑表征用户-兴趣的这些方面。例如,在用户例行访问新闻相关网站的情况下,可以确定对新闻相关网站的兴趣。
[0080] 如先前所描述的,用户-活动模式可以用于推断用户-兴趣和内容-相关性数据模型。根据用户-兴趣和内容相关性的这些预测,各种实施例可以提供增强的用户体验。例如,一些实施例可以提供CS的可能相关内容的经摘要的版本的及时的、相关的递送或呈现,或者实时地突出显示紧急内容,以及对可能相关或紧急的内容的响应。其他改进包括对用户设备性能和网络带宽使用的改进。一些实施例可以由个人和/或虚拟助手应用或服务来实行,其可以被实现为一个或多个计算机应用、服务、或例程,例如在移动设备或云上运行的应用,如在本文中进一步描述的。
[0081] 现在转到图1,提供了示出其中可以采用本公开的一些方面的示例操作环境100的框图。应当理解的是,在本文中所描述的该布置和其他布置仅作为示例被阐述的。除了所示的那些之外或代替所示的那些,可以使用其他布置和元件(例如,机器、接口、功能、顺序、和功能分组等),并且为了清楚起见,可以完全省略一些元件。此外,在本文中所描述的许多元件是功能实体,其可以实现为离散或分布式组件或者与其他组件一起实现,并且可以以任何合适的组合和位置实现。在本文中所描述的由一个或多个实体执行的各种功能可以由硬件固件和/或软件执行。例如,一些功能可以由执行存储在存储器中的指令的处理器执行。
[0082] 在未示出的其他组件中,示例操作环境100包括多个用户设备,例如用户设备102a和102b至102n;多个数据源,例如数据源104a和104b至104n;服务器106;以及网络110。应当理解的是,在图1中所示的环境100是一种合适的操作环境的示例。例如,在图1中所示组件中的每个组件都可以经由任何类型的计算设备(例如,结合图6描述的计算设备600)来实现。这些组件可以经由网络110彼此通信,所述网络可以包括但不限于一个或多个局域网(LAN)和/或广域网(WAN)。在示例性实现中,网络110包括因特网和/或蜂窝网络,此外还有多种可能的公共和/或私有网络中的任何一种。
[0083] 应当理解的是,在本公开的范围内,可以在操作环境100内采用任何数量的用户设备、服务器、和数据源。每个设备可以包括在分布式环境中协作的单个设备或多个设备。例如,可以经由布置在分布式环境中的多个设备来提供服务器106,所述设备共同提供在本文中所述的功能。另外,未示出的其他组件也可以被包括在分布式环境内。
[0084] 用户设备102a和102b至102n可以是操作环境100的客户端侧上的客户端设备,而服务器106可以位于操作环境100的服务器侧上。服务器106可以包括服务器侧软件,其被设计为结合用户设备102a和102b至102n上的客户端软件工作,以便实现在本公开中所讨论的特征和功能的任何组合。提供操作环境100的该划分以示出合适的环境的一个示例,并且对于每个实现均不要求服务器106与用户设备102a和102b至102n的任何组合保持为分离的实体。
[0085] 用户设备102a和102b至102n可以包括能够由用户使用的任何类型的计算设备。例如,在一个实施例中,用户设备102a至102n可以是关于本文中的图6所描述的计算设备的类型。作为示例而非限制,用户设备可以被实施为个人计算机(PC)、膝上型计算机、移动机或移动设备、智能电话、平板计算机、智能手表可穿戴计算机、个人数字助手(PDA)、MP3播放机、全球定位系统(GPS)或设备、视频播放机、手持通信设备、游戏设备或系统、娱乐系统、车辆计算机系统、嵌入式系统控制器、相机、遥控器、条形码扫描仪、计算机化测量设备、家用电器、消费型电子设备、工作站、或者这些描绘的设备的任何组合,或者任何其他合适的设备。
[0086] 数据源104a和104b至104n可以包括数据源和/或数据系统,其被配置为使得数据可用于操作环境100、或结合图2所描述的系统200的各个组成部分。(例如,在一个实施例中,一个或多个数据源104a至104n向图2的用户-数据收集组件210提供用户数据(或者使其可用于访问))。数据源104a和104b至104n可以与用户设备102a和102b到102n以及服务器106分离,或者可以被并入和/或集成到那些组件中的一个或多个中。在一个实施例中,数据源104a至104n中的一个或多个包括一个或多个传感器,其可以被集成到一个或多个用户设备102a、102b或102n或服务器106中或者与其相关联。结合图2的用户-数据收集组件210进一步描述由数据源104a至104n提供的感测的用户数据的示例。
[0087] 可以利用操作环境100来实现在图2中所描述的系统200的组件中的一个或多个,包括用于收集用户数据、生成数据模型、监视和分析一个或多个CS、以及识别和提供对一个或多个CS的相关内容的响应的组件。
[0088] 现在通过图1参考图2,图2提供了这样的框图,其示出了适合于实现实施例并且一般地被指定为系统200的示例计算系统架构的多个方面。系统200仅表示合适的计算系统架构的一个示例。除了所示出的那些之外或代替所示出的那些,可以使用其他布置和元件,或者为了清楚起见可以完全省略一些元件。此外,与操作环境100一样,在本文中所描述的许多元件是功能实体,其可以实现为离散或分布式组件或者与其他组件一起实现,并且可以以任何合适的组合和位置实现。
[0089] 示例系统200包括网络110,其结合图1被描述并且通信地耦合系统200的组件,其包括用户-数据收集组件210、呈现组件220、通信会话(CS)监视器和分析器290、学习引擎270、响应引擎260、内容相关性确定器280、存储设备225、和用户-活动监视器296。例如,CS监视器和分析器290(包括其组件292和294)、用户-活动监视器296、响应引擎260(包括其子组件262、264和266)、用户-数据收集组件210、呈现组件220、学习引擎270(包括子组件272、
274、276、278、268和288)、以及内容相关性确定器280(包括子组件282、284和286)可以被实施为一组经编译的计算机指令或功能、程序模块、计算机软件服务、或在一个或多个计算机系统(例如,结合图6所述的计算设备600)上实行的处理的布置。在各种实施例中,可以经由基于硬件的逻辑组件或设备来实现系统200的组件的部分。
[0090] 在一个实施例中,由系统200的组件执行的功能与一个或多个虚拟助手(VA)、聊天机器人应用、智能代理(Isa)、服务、和/或例程相关联。特别地,这样的应用、服务、或例程可以在一个或多个用户设备(例如,用户设备102a)、服务器(例如,服务器106)上操作,可以分布在一个或多个用户设备和服务器上,或者在云中被实现。此外,在一些实施例中,系统200的这些组件可以跨网络分布在云中,包括一个或多个服务器(例如,服务器106)和客户端设备(例如,用户设备102a),或者可以驻留在用户设备上,例如用户设备102a。此外,这些组件、由这些组件执行的功能或由这些组件执行的服务可以在计算系统的合适的抽象层(例如,操作系统层、应用层、硬件层等)处被实现。
[0091] 可替代地或另外地,可以至少部分地通过一个或多个硬件、软件、中间件、和/或固件逻辑组件来执行这些组件和/或在本文中所描述的实施例的功能。例如但不限于,可以使用的示例性类型的硬件逻辑组件或设备包括现场可编程阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、片上系统式系统(SOC)、复杂可编程逻辑器件(CPLD)等。这样的硬件、软件、中间件、和/或固件组件可以包括但不限于CS分析逻辑单元230、CS响应逻辑单元232、内容-相关性逻辑单元234、摘要逻辑单元236、和/或ML逻辑单元238。尽管图2示出了包括在存储设备225中的逻辑组件230-238,但是其他实施例没有如此被约束,并且逻辑组件230-238可以位于和/或分布在200系统的引擎、分析器、确定器、监视器、生成器、学习器、识别器、呈现器、和其他组件中。例如,CS分析逻辑单元230可以经由CS监视器和分析器290来实现。CS响应逻辑单元232可以经由响应引擎260来实现。内容-相关性逻辑单元234可以经由内容-相关确定器来实现。ML逻辑单元可以经由学习引擎270等来实现。另外地,尽管本文针对在示例性系统200中所示的特定组件描述了功能,但可以预期的是,在一些实施例中,这些组件的功能可以跨其他组件被共享或分布。
[0092] 学习引擎270通常负责生成、更新、和/或训练各种数据模型,所述数据模型用于分析CS内容、识别相关内容、并生成对相关内容的响应。系统200的各种组件可以经由网络110将训练数据提供给学习引擎270。在一些实施例中,可以经由系统200中不包括的源将训练数据提供至学习引擎270。一旦被生成,各种数据模型可以通过系统200的组件中的一个或多个组件被实现,以分析、识别、和提供对CS内容的可能相关部分的响应。经由学习引擎270生成、更新、或训练的数据模型可以包括内容-实质模型、内容-风格模型、CS上下文模型、用户-兴趣模型、内容-相关性模型、以及响应-生成模型中的一个或多个。
[0093] 如在本文中所使用的,术语“数据模型”或“模型”可互换地使用,以指代能够将输入数据映射到输出数据的一个或多个描述、规则(随机的或确定性的)、功能、模块、组件等。也就是说,数据模型可以接收输入数据并基于输入数据和各种规则、关系、相关性、映射、网络、逻辑、归纳和/或演绎链、或者数据模型中包括的其他这样的机器来生成输出数据。例如,数据模型可以包括布尔逻辑运算的链或网络。在各种实施例中,数据模型接收输入数据,例如但不限于CS的内容,并且基于输入数据来生成输出数据。例如,数据模型可以生成在内容中编码的讨论所针对的一个或多个主题的列表。由数据模型生成的另外的输出数据可以包括与所述主题中的每个主题相关联的分数或权重,其中,所述分数指示对对话内的主题的显著性主导地位的度量。
[0094] 作为非限制性示例,数据模型可以包括关于所确定的兴趣水平加权的主题的集合或列表。例如,数据模型可以被体现为知识图,例如但不限于在搜索引擎中常常采用的知识图。数据模型可以包括指示概念或主题之间的关系的概念或主题图。在各种实施例中,数据模型可以是参数化的数据模型。即,数据模型是通过一个或多个参数的选择来实现的。这样的参数可以包括各种权重、系数等。
[0095] 在一些实施例中,数据模型可以是机器学习(ML)数据模型。ML数据模型是采用数据来确定和/或学习一个或多个参数的值的模型。也就是说,可以经由训练或基线数据来训练ML数据模型。在一些实施例中,一旦至少已经在初步意义上对模型进行了训练,则可以基于经由使用模型而生成的另外的数据来对模型进行细化和/或更新。例如,基于利用特定于用户的数据来训练ML模型,可以为特定用户定制ML数据模型。尽管各种实施例可以讨论ML数据模型,但是应当理解的是,所述实施例不限于此。例如,数据模型可以包括特定于一个或多个用户的数据的集合、一组规则、一组启发式方法、以及一个或多个确定性或随机性算法。这样的算法可以包括遗传算法(即,经由对算法部分进行再现、重组、和/或突变而生成的算法),以使得算法的高效和/或高预测性的部分通过进化机制而得以利用和积累。
[0096] 各种“数据模型”或简称“模型”可以包括或可以经由各种经训练的网络(或网络数据模型)和/或架构(例如,神经网络数据模型或架构)来实现。ML数据模型可能包括各种经训练的深度学习网络,例如但不限于前馈网络、卷积/解卷积网络、循环神经网络(RNN)、递归神经网络、长短期记忆(LSTM)网络、自动编码器/解码器等。经训练的ML数据模型可以包括各种自然语言模型(NLM)、n-元、语音-识别模型、文本到语音模型等。ML数据模型可以包括线性因子模型、向量机、结构化和/或非结构化概率模型、配分函数、深度生成模型等。在至少一个实施例中,经由一个或多个蒙特卡洛模拟(MCS)或其他随机化和/或概率性模拟方法来训练ML数据模型。数据模型可以包括各种估计器,例如但不限于最大似然估计器或贝叶斯估计器。一个或多个数据模型可以基于状态机或尔可夫(Markov)过程。例如,数据模型可以包括马尔可夫链。可以经由有监督和/或无监督的学习方法来生成各种ML数据模型。
[0097] 由此,各种ML数据模型可以包括经由训练过程所确定的参数(例如权重),以及指示任何网络、映射、图、或与各种数据模型中的任何一个相关联和/或支持任何其他数据模型的其他这样的结构、拓扑和/或架构的各种节点、神经元等之间的关系的任何网络结构。可以采用其他ML和/或人工智能(AI)方法来生成、更新、和/或训练各种ML数据模型。
[0098] 简要地,用户-兴趣模型学习器268可以生成、更新、和/或训练用户兴趣模型。例如但不限于用户活动信息244和来自用户简档240的其他信息的用户活动信息可以用于生成用户-兴趣模型。内容-实质模型学习器272可以生成、更新、和/或训练内容-实质自然语言模型。内容-风格模型学习器274可以生成、更新、和/或训练内容-风格自然语言模型。CS上下文模型学习器278可以生成、更新、和/或训练CS上下文自然语言模型。响应-生成模型学习器288可以生成、更新、和/或训练响应-生成自然语言模型。基于用户兴趣-模型以及与用户相关联的其他信息(例如,用户活动信息和/或用户活动模式),内容-相关性模型学习器276可以生成、更新、和/或训练内容-相关性自然语言模型。可以基于包括各种CS的内容的训练数据来生成和/或更新包括自然语言模型的这样的数据模型。即,来自CS日志的内容以及与CS相关联的其他数据(例如,元数据),可以用于训练这些自然语言模型。基于对用于生成和/或更新数据模型的训练数据的选择,这些数据模型中的每个数据模型可以以特定的用户为目标。
[0099] 经训练的内容-实质数据模型可以接收CS内容作为输入,并提供在内容中编码的一个或多个内容-实质特征作为输出。经训练的内容-实质数据模型可以接收CS内容作为输入,并且提供在内容中编码的一个或多个内容-风格特征作为输出。经训练的CS上下文数据模型可以接收CS数据(包括但不限于元数据)作为输入,并且提供与CS相关的一个或多个上下文特征作为输出。经训练的内容-相关性数据模型可以接收上下文特征和内容以及所确定的内容-实质和内容-风格特征作为输入,并且提供基于用户-兴趣数据模型和各种CS特征对内容的相关性的确定作为输出。
[0100] 经训练的响应-生成模型可以接收例如但不限于已确定为至少与用户相关的内容的CS内容作为输入。作为输入接收的还可以包括CS的上下文特征,以及在输入内容中编码的内容-实质和内容-风格特征。响应-生成模型可以用于基于输入上下文特征、内容-实质特征、内容-风格特征、经训练的内容-实质和内容-风格数据模型来确定一个或多个内容-实质和一个或多个内容-风格特征,以编码在对输入内容的逻辑的和风格化响应中。响应-生成模型可以生成逻辑响应和风格化响应作为输出,所述逻辑响应和风格化响应对所确定的内容-实质和内容-风格特征进行编码。
[0101] 经训练的数据模型中的一个或多个可以被存储在用户简档240中。例如,用户数据模型252可以存储各种内容-实质、内容-风格、内容-相关性、CS上下文、和用户-兴趣模型。ML逻辑单元238可以实现或启用学习引擎270所采用的各种ML方法。也就是说,在一些实施例中,内容-实质模型学习器272、内容-风格模型学习器274、内容-相关性模型学习器276、CS上下文模型学习器278、和/或用户-兴趣模型学习器268可以经由ML逻辑单元238中包括的硬件、软件、中间件、和/或固件逻辑来实现。例如,ML逻辑单元238可以启用在对各种数据模型的训练中所采用的各种神经网络。尽管将ML逻辑单元238示出为被包括在存储设备225中,但是在其他实施例中,ML逻辑单元238可以被嵌入和/或实例化在系统200的其他组件中,例如但不限于学习引擎270。
[0102] CS监视器和分析器290通常负责监视和分析用户当前正在参与或先前已参与的一个或多个CS的内容和上下文。由此,CS监视器和分析器290可以接收与用户现在参与或已参与的每个CS相关联的各种数据。所接收的各种数据可以包括与CS相关联的内容和元数据。CS监视器和分析器290可以包括各种子组件,例如但不限于CS内容分析器292和CS上下文分析器294。可以经由CS分析逻辑单元230来启用和/或实现与CS监视器和分析器290的子组件相关联的数据模型的功能和/或特征。也就是说,CS分析逻辑单元230可以实现各种分析以确定内容的实质和风格,以及如结合各种实施例所描述的CS的上下文。由此,CS分析逻辑单元230可以实现各种NLP方法、神经网络架构、和/或统计模型。尽管将CS分析逻辑单元230示出为被包括在存储设备225中,但是在其他实施例中,CS分析逻辑单元230可以被嵌入和/或实例化在系统200的其他组件中,例如但不限于CS监视器和引擎290的各种子组件。
[0103] CS内容分析器292可以实时或接近实时地分析一个或多个CS的内容的实质和风格两者。该分析可以是基于内容-实质模型和内容-风格模型以及用于确定来自参与每个CS的每个用户的内容的实质和风格两者的各种其他模型和/或分析的。CS上下文分析器294可以经由CS上下文模型以及各种其他模型和/或分析来分析一个或多个CS的上下文。
[0104] 更加特别地,CS内容分析器292可以实时或接近实时地分析用户参与或已经参与的每个CS的每个内容行(或内容行的块)。CS-内容分析器292可以基于内容-实质模型和内容-风格模型以及其他自然语言处理(NLP)方法来确定在CS内实行的每个内容行的实质和风格以及作为整体的对话。内容-实质模型和内容-风格模型可以包括一个或多个自然语言模型(NLM)的组合,所述模型包括但不限于n-元、神经语言模型、最大熵语言模型等。这样的NLM可以是基于ML方法的,例如但不限于深度学习(DL)方法。因此,各种数据模型可以采用神经网络和/或经由神经网络被实现,所述神经网络例如但不限于前馈网络和RNN,包括LSTM。
[0105] 内容-实质模型用于确定内容的实质。由此,内容-实质模型可以是一种或多种语义语言模型的组合,其包括但不限于主题模型和关键词模型。例如,主题模型可以使得能够确定嵌套在内容中的会话所针对的主题的嵌套层级结构。置信度分数可以与所述主题中的每个主题相关联,其中,相关联的置信度分数指示内容确实指向该主题的置信度和/或概率。基于所接收的内容和一个或多个内容-实质模型,CS内容分析器292可以确定一个或多个可观察的、隐藏的、和/或潜在的内容特征,例如但不限于内容-实质特征和内容-风格特征。经由各种数据模型确定这样的内容特征可以是基于与参与CS的任何用户相关联的数据的,所述数据包括但不限于每个用户的任何用户简档信息(例如,用户简档240),例如用户-兴趣和用户-活动信息。如下所述,用户-活动信息可以包括所监视和/或检测的用户活动,以及所确定、识别、和/或学习的用户-活动模式。例如,可以基于监视和分析用户活动来学习用户-活动模式。内容特征可以基于在CS中交换的内容以及与CS相关联的任何数据,例如但不限于元数据。
[0106] 内容特征可以包括对一个或多个内容行的说话者的指示,以及对内容行所指向的用户或用户群组的指示。例如,如果内容行包括指向特定用户或用户群组的问题,则该内容行的内容特征可以包括该特定用户或用户群组。内容特征还可以包括对内容行是否包括一个或多个声明性语句、解释性语句、问题、对问题的响应等的一个或多个指示。
[0107] 内容-实质特征指示嵌入在经由CS实行的对话中的自然语言话语或表达的语义或含义。即,内容-实质特征可以指示所交谈的主题以及对话的意图含义和情感。所确定的一个或多个内容-实质特征可以与隔离的内容行、内容行中关联于相同或不同说话者的块、或整个对话相关联。
[0108] 相比之下,一个或多个内容行的确定的内容-风格特征可以编码或表示内容行的说话者的风格(例如,语法)选择,即说话者的对话风格。也就是说,内容-风格特征可以指示说话者的语法、词汇、和对话选择。例如,内容-风格特征可以编码说话者的讲话风格。内容-风格特征可以另外编码说话者的一种或多种情绪,例如,愤怒、惊奇、满意、幸福、和其他情绪。内容-风格特征可以指示说话者的语调、速度、和音量。
[0109] CS上下文分析器294可以实时或接近实时地分析CS的上下文。上下文分析器294可以基于CS上下文模型和与CS相关联的数据(例如,元数据)来确定CS的上下文特征。CS的上下文特征可以包括但不限于对参与CS和/或与CS相关联的用户中的每个用户的指示或编码,相关联的用户中的每个用户的活动和/或参与程度、以及相关联的用户中的每个用户的可用性。上下文特征还可以指示CS的启动和终止时间戳、CS的持续时间、以及对相关联的用户已经参与或正在参与的其他过去或当前CS的指示。另外的上下文特征可以指示每个相关联的用户的近似的地理位置和/或逻辑位置。CS上下文特征可以包括或基于所述相关联的用户中的每个用户的任何用户简档信息。
[0110] CS的上下文特征可以指示或编码层级关系图或映射,该层级关系图或映射指示CS的相关联的用户对中的至少一些对之间的一个或多个关系或映射。所指示的关系可以包括职业关系、个人关系、或遗传关系。例如,关系图可以指示管理者/下属关系、配偶/个人合伙关系、父母/孩子/兄弟姐妹关系、或者针对相关联的用户对的任何其他这样的关系。上下文特征可以指示基于用户采用的一个或多个社交网络平台的和/或从所述社交网络平台生成的一个或多个社交网络图。上下文特征可以包括针对在对话中参考和/或交换的材料(例如,电子邮件、网站、幻灯片、电子表格、文件、或其他这样的文档,包括任何多媒体内容)的指示,其例如但不限于静态或动态链接。这样的多媒体内容可以包括电子书(e-book)、音频和/或视频文件、动画、组织结构图、或其他这样的可听见的、视觉、和/或文本内容。
[0111] 上下文特征可以包括一个或多个上下文标签。例如,“社交”标签可以是针对社交对话或交互的CS的上下文特征,而“工作”和/或“会议”标签可以是针对与工作有关的会议的CS的上下文特征。上下文特征可以指示或编码会议标题、会议主题、会议议程、会议时间表、或指示CS对话的结构和/或主题的其他这样的信息。上下文特征可以指示CS的一个或多个隐私和/或加密配置。CS的上下文特征实际上可以编码指示CS的上下文的任何可确定信息。
[0112] 内容相关性确定器280及其子组件通常负责确定一个或多个CS的内容的相关性,识别可能与用户相关的内容,并且就被识别为与用户高度相关和/或紧急的任何内容实时地通知用户。由此,内容相关性引擎可以从CS监视器和分析器290接收内容以及所确定的CS特征(例如,CS内容特征和上下文特征)。确定内容的相关性可以是基于内容特征和上下文特征,以及所监视的用户活动、用户-兴趣模型、和内容-相关性模型的。
[0113] 可以采用经训练的用户-兴趣模型以基于CS的上下文(例如,CS的上下文特征)来确定用户的兴趣,即用户感兴趣的一个或多个主题。基于用户-兴趣模型和CS的上下文特征,可以经由主题的加权或兴趣分数来对一个或多个兴趣主题进行评分和/或排名。所确定的主题可以是基于CS的各种上下文的。例如,具有有关工作的上下文的CS的所确定的用户-兴趣可以与具有与个人更相关的上下文的CS的用户-兴趣是分开的。因此,如经由用户-兴趣模型所确定的用户-兴趣可以取决于一个或多个CS的上下文。
[0114] 更加特别地,用户-兴趣模型可以概率性地预测和/或推断用户-兴趣的层级表示(例如,图或映射)。通过用户-兴趣模型,可以将用户-兴趣的层级建模为一个或多个有向或无向的树图。针对多个主题中的每个主题,用户-兴趣模型可以预测用户对该主题的兴趣的标准化兴趣分数或权重。兴趣分数可以指示用户的兴趣和主题之间的概率性关联。所述概率性关联可以是至少基于所监视的用户活动以及在本文中讨论的其他因素的。
[0115] 经由用户-兴趣模型所确定的多个主题可以被布置在包括多个嵌套的子主题的级联层级结构中。一些主题可以位于一个或多个级联树图中的多个位置处,并且具有单独的相关联的兴趣分数。例如,第一组主题可以与用户的雇用相关联。也就是说,第一组主题中的每个主题都位于从与用户的工作相关联的节点起源的树图的一个或多个分支中。一组单独的主题可以与用户的爱好相关联。也就是说,第二组主题中的每个主题都位于同一树图或者从与用户的工作相关联的另一个节点起源的另一个树图的一个或多个分支中。第一和第二主题集的交集可以是非空集。例如,Topic_A可以被包括在第一和第二主题集的每个中。从用户的工作节点起源的Topic_A的兴趣分数可以与从用户的爱好节点起源的Topic_A的兴趣分数不同。如在本文通篇中所讨论的,可以采用所识别的CS上下文特征来确定Topic_A的哪个兴趣分数与特定CS相关。
[0116] 应当理解的是,在本文中所讨论的用户-兴趣模型的各种结构是示例性的,并且可以采用其他兴趣-用户模型。本质上,用户-兴趣模型量化用户对一个或多个主题的兴趣,其可以被编码在内容的内容-实质特征中。
[0117] 内容-相关性模型使得能够确定针对诸如一个或多个内容行之类的内容的部分的相关性。内容的相关性可以包括一个或多个概率,其中,所述一个或多个概率与内容同用户相关的可能性有关。所述一个或多个概率可以被构造为归一化的标量、向量、矩阵、张量、或诸如多维阵列之类的某种数据结构。数据结构的每个组成部分都关于一个或多个用户-兴趣指示内容与使用相关的概率。在一些实例中,所确定的内容相关性的组成部分可以指示内容的时间紧急性。也就是说,该组成部分可以指示该内容具有紧急性质,并且应当很快引起用户的注意。在一个实施例中,针对内容的相关性包括整体相关性,该整体相关性是与用户感兴趣的各种主题相对应的一个或多个概率的组合。
[0118] 应当理解的是,在本文中所讨论的内容-相关性模型的各种结构是示例性的,并且可以采用其他内容-相关性模型。本质上,内容-相关性模型量化与内容的相关性和时间紧急性有关的一个或多个概率,例如内容行或一个或多个内容行的块。即,内容-相关性模型使能够实现这样的机制,该机制基于所分析的CS的内容和上下文以及用户的兴趣和活动来确定和/或识别可能相关的CS的内容。
[0119] 内容相关性确定器280采用例如但不限于用户-兴趣模型和内容-相关性模型之类的数据模型来确定一个或多个CS的内容的相关性,为用户识别可能相关和/或高度相关的内容,并向用户提供针对所识别的高度相关的内容的通知。内容相关性确定器280可以包括各种子组件,例如但不限于内容相关性分析器282、内容识别器284、和内容摘要生成器286。可以经由内容-相关性逻辑单元234来启用和/或实现与内容相关性确定器280的子组件相关联的功能和/或数据模型。即,内容-相关性逻辑单元234可以实现各种分析,以用于确定CS内容的每个部分的相关性,基于所确定的相关性来识别可能与用户相关的内容部分(即,可能相关的内容部分),并且提供被识别为高度相关的内容的摘要,如结合各种实施例所描述的。如上所述,在一些实施例中,内容-相关性逻辑单元234可以被包括在内容相关性确定器280中和/或经营内容相关性确定器280来实现。由此,内容-相关性逻辑单元234可以实现各种NLP方法、神经网络架构、和/或统计模型。尽管将内容-相关性逻辑单元234示出为被包括在存储设备225中,但是在其他实施例中,内容-相关性逻辑单元234可以在系统200的其他组件中被嵌入和/或实例化,所述其他组件例如但不限于内容相关性确定器280的各种子组件。
[0120] 更加特别地,实施例内容相关性分析器282可以确定针对所接收的内容的至少一部分的相关性。如上所述,针对一部分内容的相关性可以包括一个或多个概率,其中,所述一个或多个概率与内容同用户相关的可能性相关。所确定的相关性可以基于内容-相关性模型以及用户-兴趣模型和所确定的CS特征,例如但不限于CS的上下文特征和内容的内容特征。由此,内容相关性分析器282可以从CS监视器和分析器290接收上下文特征以及内容-实质特征和内容-风格特征。
[0121] 内容识别器284可以基于针对内容的每一部分所确定的相关性来确定和/或识别可能与用户相关的内容。识别可能相关的内容可以是基于一个或多个相关性阈值的。也就是说,如果相关概率或分数中的一个或多个大于相关性阈值,则该内容可以被识别为可能相关。在一个实施例中,如果总体相关性大于总体相关性阈值,则该内容可以被识别为可能相关。在一些实施例中,如果与时间紧急性相对应的概率大于紧急性阈值,则该内容可以被识别为可能相关。用户可以经由用户偏好248和/或在用户简档240中包括的其他信息来提供一个或多个相关性阈值。
[0122] 在其他实施例中,可以基于其他方法来识别可能相关的内容。在一个实施例中,确定可能相关的内容可以是基于ML方法的。例如,用户可以手动地组织自动生成的响应或者手动地提供响应。所组织和/或手动生成的响应可以被存储在用户组织的响应258中,并且可以用作“真实数据”响应。各种机器学习方法可以学习数据模型以学习识别可能相关的内容。在一个实施例中,使用手动组织的响应作为“真实数据”响应能够实现对一个或多个相关性阈值的自动化确定。在各种实施例中,被识别为可能相关的内容可以向用户提供和/或示出。用户可以组织被识别为可能相关的内容以进一步训练内容-相关性模型。
[0123] 如果相关概率中的至少一个概率大于高度相关阈值,则内容识别器284可以将内容的至少部分识别为与用户高度相关,其中,所述高度相关阈值可以大于用于识别可能相关的内容的阈值。即,被识别为高度相关的内容部分可以是被识别为可能相关的内容部分的子集。在一个实施例中,如果与时间紧急性相对应的概率大于紧急性阈值,则内容可以被识别为高度相关。
[0124] 对于被识别为与用户高度相关的内容,各种实施例可以提供实时和/或接近实时的、可听见的、和/或可视的通知或提示,以引起用户对内容以及自动生成的对这样高度相关的内容的响应的注意。内容相关性确定器280可以使得能够向用户提供这样的通知。当用户同时参与跨多个窗口或用户界面分布的多个CS时,内容相关性确定器280可以在用户显示设备的前台中突出显示或定位用户界面,该用户界面包括所识别的高度相关的内容并且生成响应。用户的注意力还可以指向高度相关的内容以及所生成的响应,其具有现在在显示设备前台中的用户界面内的另外的选择性突出显示。因此,内容相关性确定器280可以突出显示与用户高度相关的CS内容以及所生成的响应,其中,对高度相关的内容的识别经由内容识别器284而指向特定用户。在一个实施例中,突出显示高度相关的内容和响应的通知可以经由自动生成的语音而被提供。基于语音的通知可以包括高度相关的内容、高度相关的内容的经摘要的版本、或者仅是用于将用户的注意力引向特定用户界面以及所生成的响应的语音或以其他方式可听见的指示。
[0125] 内容相关性确定器280可以确定CS外部的上下文特征。用户的位置是一个示例性外部上下文特征,例如,可以将用户的当前位置与其居住地或工作场所进行比较,以生成另外的上下文特征。例如,当用户居住在美国但正在访问巴黎时,可以确定外部上下文特征。可以采用这样的外部上下文特征来识别在这样的场景中与巴黎可能相关的内容,其中,在其他上下文中,与巴黎相关的内容可能与用户不相关。
[0126] 内容摘要生成器286可以生成被识别为可能相关甚至高度相关的内容的摘要。该摘要可以被提供至响应引擎260。在一些实施例中,可以向用户提供可能相关内容的摘要。
[0127] 响应引擎260通常负责生成对可能相关内容的响应,并且将该响应提供给用户(当在半自动模式下操作时)或CS(当在自动模式下操作时)。响应引擎260的功能和/或操作可以经由CS响应逻辑单元232来实现。如上所述,CS响应逻辑单元232可以被包括在响应引擎260中和/或经由响应引擎260来实现。更加特别地,逻辑响应生成器262可以确定要输入内容的响应的一个或多个内容-实质特征,所述内容例如基于用户的内容实质模型而被识别为可能相关内容的内容。逻辑响应生成器262可以采用响应-生成模型以及各种其他NLP模型,以基于包括在所识别的可能相关内容中的所确定的内容-实质和内容-风格特征来确定要编码在逻辑响应中的内容-实质特征。响应-生成模型可以包括或采用内容-实质模型,以基于包括在所识别的可能相关内容中的所确定的内容-实质和内容-风格特征来确定要包括在响应中的内容-实质特征。逻辑响应生成器262可以生成逻辑响应,该逻辑响应对经由NLP模型所确定的内容-实质特征进行编码。该逻辑响应可以是基于可能相关内容的摘要的,例如由内容摘要生成器286所生成的摘要。
[0128] 风格化响应生成器264可以基于逻辑响应来生成风格化响应。风格化响应生成器264可以采用用户的响应-生成模型、用户的内容-风格模型、以及用于生成风格化响应的各种其他NLP模型。更加特别地,可以采用响应-生成模型和内容-风格模型来确定要在风格化响应中编码的内容-风格特征。风格化响应生成器264更新逻辑响应和/或生成风格化响应,以编码内容-实质特征以及所确定的内容-风格特征。
[0129] 响应呈现器266可以提供风格化响应或逻辑响应中的至少一个。例如,当在自动模式下操作时,风格化响应可以被提供至CS。当在半自动模式下操作时,可以向用户提供风格化响应。在一个实施例中,逻辑响应被提供给用户,以使得用户可以编辑该逻辑响应和/或手动地生成要提供至CS的风格化响应。响应生成器可以提供该响应的文本版本。在一些实施例中,响应呈现器266包括文本到语音模块,该模块生成响应的可听见的版本,即,所生成的响应的语音版本。在一些实施例中,响应呈现器266采用ML方法来学习和模拟用户的声音和说话模式。因此,可以向CS提供计算机生成的响应的语音版本,以使得所述语音版本听起来好像用户确实说出了自动生成的响应。
[0130] 继续图2,用户-数据收集组件210通常负责从一个或多个数据源(例如,图1的数据源104a和104b至104n)访问或接收(并且在某些情况下还识别)用户数据。在一些实施例中,可以使用用户-数据收集组件210来促进特定用户(或在某些情况下,包括众包数据的多个用户)针对用户活动检测器296、内容-相关性模型学习器276、或用户-兴趣模型学习器268的用户数据的累积。所述数据可以由用户-数据收集组件210接收(或访问),并可选地进行累积、重新格式化、和/或组合,并且被存储在诸如存储设备225之类的一个或多个数据存储单元中,其中其可用于系统200的其他组件。例如,如本文所述,用户数据可以被存储在用户简档240中或者与用户简档240相关联。在一些实施例中,任何个人标识数据(即,专门标识特定用户的用户数据)没有被上传或者以其他方式从具有用户数据的一个或多个数据源被提供、不被永久存储、和/或不能够用于用户-活动监视器296和/或学习引擎270。
[0131] 可以从多种来源接收用户数据,其中,数据可以以多种格式可获得。例如,在一些实施例中,可以经由一个或多个传感器来确定经由用户-数据收集组件210接收的用户数据,所述一个或多个传感器可以在一个或多个用户设备(例如,用户设备102a)、服务器(例如,服务器106)、和/或其他计算设备上或与它们相关联。如在本文中所使用的,传感器可以包括用于从数据源104a感测、检测或以其他方式获得诸如用户数据之类的信息的功能、例程、组件、或其组合,并且可以被实施为硬件、软件、或两者。作为示例而非限制,用户数据可以包括从一个或多个传感器感测或确定的数据(在本文中被称为传感器数据),例如移动设备的位置信息、用户设备的属性或特性(例如,设备状态、计费数据、日期/时间、或从诸如移动设备之类的用户设备得出的其他信息)、用户-活动信息(例如:应用使用情况;在线活动;搜索;诸如自动语音识别之类的语音数据;活动日志;包括通话、文本、即时消息、和电子邮件的通信数据;网站帖子;与通信事件相关联的其他用户数据;等等),其在一些实施例中包括发生在一个以上用户设备上的用户活动、用户历史记录、会话日志、应用数据、联系人数据、日历和日程表数据、通知数据、社交网络数据、新闻(包括搜索引擎或社交网络上的流行或热门项目)、在线游戏数据、电子商务活动(包括来自诸如
视频流服务、游戏服
务、或 等之类的在线账户的数据)、用户账户数据(其可以包括来自与个人助理应用或服务相关联的用户偏好或设置的数据)、家庭传感器数据、家用电器数据、全球定位系统(GPS)数据、车辆信号数据、交通数据、天气数据(包括预报)、可穿戴设备数据、其他用户设备数据(其可以包括设备设置、简档、有关网络的信息(例如,网络名称或ID、域信息、工作组信息、连接数据、Wi-Fi网络数据或配置数据、与模型编号有关的数据、固件或设备、设备配对,例如在用户具有与蓝牙机配对的移动电话的情况下,或者有关网络的其他信息))、陀螺仪数据、加速度计数据、支付或信用卡使用数据(其可以包括来自用户的PayPal账户的信息)、购买历史记录数据(例如,来自用户的Xbox Live、Amazon.com、或eBay账户的信息)、由传感器(或其他检测器)组件感测或者以其他方式检测到的其他传感器数据,包括从与用户相关联的传感器组件导出的数据(包括位置、运动、朝向、位置、用户-访问、用户-活动、网络-访问、用户设备计费、或者能够由一个或多个传感器组件提供的其他数据)、基于其他数据导出的数据(例如,可以从Wi-Fi、蜂窝网络、或IP地址数据导出的位置数据),以及如在本文中所描述的可以被感测或确定的几乎任何其他数据源。
[0132] 在某些方面中,可以在用户数据流或信号中提供用户数据。“用户信号”可以是来自对应的数据源的用户数据的馈送或流。例如,用户信号可以来自智能电话、家庭传感器设备、GPS设备(例如,用于位置坐标)、车辆传感器设备、可穿戴设备、用户设备、陀螺仪传感器、加速度计传感器、日历服务、电子邮件账户、信用卡账户、或其他数据源。在一些实施例中,用户-数据收集组件210连续地、周期性地、或根据需要接收或访问数据。
[0133] 用户-活动监视器296通常负责监视用户数据中可以用于确定用户-活动信息的信息,其可以包括识别和/或跟踪有关特定用户动作的特征(有时在本文中被称为“变量”)或其他信息以及相关的用户活动上下文信息。用户-活动监视器296的实施例可以从所监视的用户数据中确定与特定用户相关联的用户活动。如先前所描述的,由用户-活动监视器296所确定的用户-活动信息可以包括来自与该用户相关联的多个用户设备和/或来自与该用户相关联的基于云的服务(例如,电子邮件、日历、社交网络媒体、或类似的信息源)的用户-活动信息,并且其可以包括与所识别的用户活动相关联的上下文信息。在一些实施例中,用户-活动监视器296可以确定当前或接近实时的用户-活动信息,并且还可以确定历史用户-活动信息,在一些实施例中,该历史用户-活动信息可以是基于随时间收集用户活动的观察、访问过去活动的用户日志(例如,浏览历史记录)来确定的。此外,在一些实施例中,用户-活动监视器296可以从其他类似用户(即,众包)确定用户活动(其可以包括历史活动),如先前所描述的。
[0134] 在一些实施例中,可以将由用户-活动监视器296所确定的信息提供至学习引擎270、响应引擎260、CS监视器和分析器290、和/或内容相关性确定器280中的任何一个。可以通过监视从用户-数据收集组件210接收的用户数据来确定用户活动特征。在一些实施例中,用户数据和/或从用户数据确定的关于用户活动的信息被存储在用户简档(例如,用户简档240)中。
[0135] 在实施例中,用户-活动监视器296包括一个或多个应用或服务,其分析经由用户使用的一个或多个用户设备和/或与用户相关联的基于云的服务所检测到的信息,以确定活动信息和相关的上下文信息。可以从经由用户-数据收集组件210可用的用户数据中确定关于与用户相关联的用户设备的信息,并且可以将所述信息提供至用户-活动监视器296、活动模式推断引擎(在图2中未示出)、或者系统200的其他组件。
[0136] 更加具体地,在用户-活动监视器296的一些实现中,可以通过检测和分析用户设备的特性(例如,设备硬件、诸如操作系统(OS)之类的软件、有关网络的特性、经由设备访问的用户账户、以及类似的特性)来识别用户设备。例如,可以使用许多操作系统的功能来确定有关用户设备的信息,从而提供有关硬件、OS版本、网络连接信息、已安装的应用等的信息。
[0137] 用户-活动监视器296或其子组件的某些实施例可以确定与用户相关联的每个设备的设备名称或标识(设备ID)。可以将与用户相关联的所识别的用户设备有关的信息存储在与该用户相关联的用户简档中,例如存储在用户简档240的用户账户和设备244中。在实施例中,可以轮询、询问、或以其他方式分析用户设备,以确定有关设备的信息。该信息可以用于确定设备的标签或标识(例如,设备ID),以使得用户-活动监视器296可以从用户数据中识别与设备的用户交互。在一些实施例中,用户可以通过以下操作来声明或注册设备,例如经由该设备登录账户、在该设备上安装应用、连接到询问该设备的在线服务、或者以其他方式向应用或服务提供有关该设备的信息。在一些实施例中,登录到与用户相关联的账户(例如, 账户或Net Passport、电子邮件账户、社交网络等)的设备被识别并确定为与用户相关联。
[0138] 用户-活动监视器296可以包括用户活动检测器和其他子组件,例如用户活动上下文信息提取器。在一些实施例中,用户-活动监视器296、其子组件中的一个或多个、或系统200的其他组件(例如,学习引擎270)可以从所接收到的用户数据中确定解释性数据。解释性数据与由系统200的这些组件或用户-活动监视器296的子组件用来解释用户数据的数据相对应。例如,解释性数据可以用于向用户数据提供其他上下文,其可以支持组件或子组件进行的确定或推断。此外,可以预期的是,用户-活动监视器296、其子组件、和系统200的其他组件的实施例可以将用户数据和/或用户数据与解释性数据结合使用,以用于实行本文所述的子组件的目的。另外地,尽管在本文中描述了用户-活动监视器296及其子组件可以如何识别用户-活动信息的几个示例,但是在本公开的各种实施例中,用户-活动识别和用户-活动监视的许多变型是可能的。
[0139] 用户-活动监视器296通常负责基于监视用户活动来推断一个或多个用户-活动模式。用户-活动监视器296的实施例可以用于确定当前用户活动或一个或多个历史用户动作。用户-活动监视器296的一些实施例可以监视针对与用户活动相对应的活动相关的特征或变量的用户数据,例如对所发起或访问的应用,所访问、修改、复制等的文件,导航到的网站,下载和渲染或播放的在线内容,或者类似的用户活动的指示。
[0140] 另外地,用户-活动监视器296的一些实施例从用户数据中提取关于用户活动的信息,所述信息可以包括当前用户活动、历史用户活动、和/或诸如上下文信息之类的相关信息。可替代地或另外地,在一些实施例中,用户-活动监视器296确定并提取用户活动上下文信息。基于由用户-活动监视器296所确定的对活动的识别,这样的用户活动包括与用户活动相关的特征。所提取的用户-活动信息的示例可以包括应用使用、在线活动、搜索、通话、使用持续时间、应用数据(例如,电子邮件、消息,帖子、用户状态、通知等),或者与同用户设备的用户交互或者经由用户设备的用户活动有关的几乎任何其他数据。在系统200的其他组件中,由用户-活动监视器296确定的所提取的用户-活动信息可以被提供给系统200的其他组件。此外,所提取的用户活动可以被存储在与用户相关联的用户简档中,例如在用户简档240的用户-活动信息组件244中。在一些实施例中,用户-活动监视器296对检测到的用户-活动信息执行合并。例如,重叠的信息可以被融合和复制,或者可以被消除冗余信息。
[0141] 在一些实施例中,由用户-活动监视器296接收的信息可以用于生成、更新、和/或训练在本文中所讨论的各种数据模型中的任何一种,其包括用户-兴趣模型和/或内容-相关性模型。可以经由用户活动逻辑来启用用户-活动监视器296的功能和/或操作。在一些实施例中,用户-活动监视器296采用用户活动事件逻辑,该逻辑可以包括规则、条件、关联、分类模型、或其他标准。活动事件逻辑可以采用多种不同的形式,这取决于用于识别活动事件的机制。例如,用户活动事件逻辑可以是用于训练神经网络的训练数据,该神经网络用于评估用户数据以确定何时发生活动事件。活动事件逻辑可以包括模糊逻辑、神经网络、有限状态机、支持向量机、逻辑回归、聚类、或机器学习技术、类似的统计分类过程、或这些的组合,以从用户数据中识别活动事件。例如,活动事件逻辑可以指定同与活动事件相关联的用户设备交互信息的类型,所述导航事件例如是导航到网站、创作电子邮件、或者启动应用。在一些实施例中,一系列或序列的用户设备交互可以被映射到活动事件,以使得可以在确定用户数据指示用户已经执行了该系列或序列的用户设备交互后检测到活动事件。
[0142] 在一些实施例中,活动事件逻辑可以指定被认为是用户活动的与用户设备相关的活动的类型,例如在用户登录到用户设备中时,在用户界面接收输入时(例如,当计算机鼠标触摸板、屏幕、语音识别界面等处于活动状态时)发生的活动,或者某些类型的活动,例如启动应用、使用应用修改文件、打开浏览器并导航至网站等。以该方式,活动事件逻辑可以用于区分真正的用户活动和在用户设备上运行的过程的自动化活动,例如自动的更新或恶意软件扫描。一旦确定了用户活动,则这些特征或另外的相关特征可以被检测并且与检测到的活动相关联,以在确定活动模式时使用。
[0143] 在一些实施例中,用户-活动监视器296在用户的每个用户设备上运行或者与其相关联地运行。用户-活动监视器296可以包括以下功能:其轮询或分析操作系统的多个方面,以确定与用户活动相关的特征(例如,已安装或正在运行的应用或文件访问和修改)、网络通信、和/或经由用户设备可检测的其他用户动作(包括动作序列)。
[0144] 在一些实施例中,例如在系统200中所示的实施例,用户-活动监视器296包括子组件,所述子组件包括应用活动日志记录管线和浏览活动日志记录管线。所述日志记录管线可以被实施为在与用户相关联的每个用户设备上运行的客户端应用或服务,并且在某些实施例中,可以与应用相结合地运行或者在应用内部(或作为应用的一部分)运行,例如在浏览器中或作为浏览器插件或扩展程序。通常而言,应用活动日志记录管线管理对用户应用(或app)活动的日志记录,所述活动例如应用下载、启动、访问、使用(其可能包括持续时间)、经由应用的文件访问、以及应用内用户活动(其可以包括应用内容)。通常而言,浏览活动日志记录管线管理对用户浏览活动的日志记录,例如访问的网站、社交媒体活动(其可以包括经由特定浏览器或应用(例如, 应用、 应用、 应用、应用等)进行的浏览类活动)、下载的内容、访问的文件、以及其他与浏览相关的用户活动。在一些实施例中,用户设备上的每个浏览器都与浏览活动日志记录管线的实例相关联,或者可替代地与向用户设备上的浏览活动日志记录管线的单个实例提供浏览信息的插件或服务相关联。在一些实施例中,应用和浏览活动日志记录管线也可以执行以下功能,例如日志记录时间戳、位置戳、与用户设备有关的信息、或与所记录的应用活动或浏览活动相关联的其他上下文信息。在一些实施例中,应用和浏览活动日志记录管线将所记录的用户-活动信息上传至学习引擎270和/或将所记录的活动信息存储在与用户相关联的用户简档中,例如存储在用户简档240的用户-活动信息组件242中。
[0145] 在用户-活动监视器296中包括的活动模式推断引擎通常可以负责基于从用户-活动监视器296确定的用户-活动信息来确定用户-活动模式。在一些实施例中,活动模式推断引擎可以在服务器上运行,以作为跨多个设备或在云中的分布式应用。在高级别上,活动模式推断引擎可以接收与用户活动相关的信息,该信息可以从来自与用户-活动监视器296相关联的客户端应用或服务的用户-活动日志中被上传。可以将一种或多种推理算法应用于与用户活动相关的信息,以确定一组可能的用户-活动模式。例如,可以基于对用户活动或相关联的上下文信息的观察的类似实例来确定模式,其可以被称为与用户活动有关的信息的“共同特征”。所推断的活动模式信息可以被提供给学习引擎270和/或用于生成、更新、和/或训练在本文中所讨论的各种数据模型,包括用户-兴趣模型和/或内容-相关性模型。在一些实施例中,如在本文中所述,还确定了针对所述模式的对应的置信度。此外,活动模式可以包括可能发生的单个用户活动,或者一系列用户动作,或者一个以上未来动作的概率,例如,下一个动作将浏览至网站A的可能性为80%,且下一个动作将启动音乐播放器应用的可能性为15%,而下一个动作将浏览至网站B的可能性为5%。
[0146] 在一些实施例中,可以通过监视一个或多个活动特征来确定用户-活动模式,如前所述。这些监视的活动特征可以从先前描述为跟踪的变量的用户数据或结合用户-数据收集组件210描述的用户数据中确定。在某些情况下,所述变量可以表示多个用户动作(活动事件)之间的上下文相似度和/或语义相似度。以该方式,可以通过检测多个用户动作上共同的变量或特征来识别用户-活动模式。更加具体地,可以将与第一用户动作相关联的特征关联于第二用户动作的特征以确定可能的模式。越经常地重复组成模式的用户活动观察,则所识别的特征模式可以变得更强(即,更有可能或更可预测)。类似地,特定特征在被重复时会变得与用户-活动模式更加紧密地相关联。
[0147] 示例系统200还包括呈现组件220,其通常负责向用户和/或向一个或多个CS呈现响应以及向用户呈现对高度相关的内容和响应的通知。在一些实施例中,呈现组件220可以将在CS中交换的内容提供给用户。呈现组件220可以包括用户设备上、跨多个用户设备、或云中的一个或多个应用或服务。例如,在一个实施例中,呈现组件220跨与用户相关联的多个用户设备管理响应和其他CS内容向该用户的呈现。基于内容逻辑、设备特征、相关联的逻辑中心、推断的用户的逻辑位置、和/或其他用户数据,呈现组件220可以确定响应和其他CS内容在哪个用户设备上呈现以及呈现的上下文,例如其被呈现的方式(或内容的格式和数量,其可以取决于用户设备或上下文)、被呈现的时间,等等。特别地,在一些实施例中,呈现组件220将内容逻辑应用于设备特征、相关联的逻辑中心、推断的逻辑位置、或感测到的用户数据,以确定内容呈现的多个方面。
[0148] 在一些实施例中,呈现组件220生成与一个或多个CS相关联的用户界面特征。这样的特征可以包括界面元素(例如,图形按钮、滑块、菜单、音频提示、警告、警报、振动、弹出窗口、通知栏或状态栏项、应用内通知、或用于与用户接合的其他类似特征)、查询、和提示。
[0149] 如前所述,在一些实施例中,与呈现组件220相结合地操作的虚拟助手服务或聊天机器人应用确定何时以及如何呈现(例如,在用户被确定为位于特定逻辑位置处时进行呈现)响应和其他CS内容和/或对实时内容的通知。
[0150] 示例系统200还包括存储设备225。存储设备225通常存储信息,所述信息包括在本文所述的实施例中使用的数据、计算机指令(例如,软件程序指令、例程、或服务)、逻辑、简档、和/或模型。在实施例中,存储设备225包括数据存储单元(或计算机数据存储器)。此外,尽管被描绘为单个数据存储组件,但是存储设备225可以被实施为一个或多个数据存储单元或者可以在云中。
[0151] 如在示例系统200中所示,存储设备225包括用户简档240。在图2中说明性地提供了用户简档240的一个示例实施例。示例用户简档240包括与特定用户相关联的信息,例如关于用户账户和设备的信息246、用户偏好248、用户数据模型252、各种响应254、以及手动组织的响应258。存储在用户简档240中的信息可用于学习引擎270或示例系统200的其他组件。
[0152] 如先前所描述的,用户简档240通常可以包括关于用户动作或活动事件的信息、相关的上下文信息、活动特征、或者经由用户-活动监视器296确定的其他信息,并且可以包括历史或当前的用户-活动信息。用户账户和设备246通常包括有关与所访问、使用、或以其他方式与用户相关联的用户设备的信息,和/或与同用户相关联的用户账户有关的信息,例如在线或基于云的账户(例如,电子邮件、社交媒体),例如 Net Passport、诸如与娱乐或游戏相关的账户(例如,Xbox Live、Netflix、在线游戏订阅账户等)之类的其他账户、与账户有关的用户数据(例如,用户电子邮件、文本、即时消息、通话、其他通信和其他内容);社交网络账户和数据,例如新闻馈送;在线活动;以及日历、预约、应用数据、其他用户账户等。用户账户和设备246的一些实施例可以跨一个或多个数据库、知识图、或数据结构来存储信息。如前所述,存储在用户账户和设备246中的信息可以是从用户-数据收集组件210或用户-活动监视器296(包括其子组件之一)所确定的。
[0153] 用户偏好248通常包括与用户活动监视相关联的用户设置或者偏好。作为示例而非限制,这样的设置可以包括关于用户期望被明确监视或不监视的特定活动(和相关信息)或者要监视或不监视的活动类别的用户偏好,众包偏好(例如,是否使用众包信息),或者是否可以将用户的活动模式信息作为众包数据来共享;关于哪些活动模式消费者可以消费用户的活动模式信息的偏好;以及阈值、和/或通知偏好,如在本文中所描述的。
[0154] 转向图3,提供了示出根据本公开的实施例的用于提供增强的通信会话服务的一个示例方法300的流程图。方法300和在本文中所描述的其他方法的每个框或步骤包括可以使用硬件、固件、中间件、和/或软件的任何组合来执行的计算过程。例如,可以通过执行存储在存储器中的指令的处理器来实行各种功能。所述方法还可以被实施为被存储在计算机存储介质上的计算机可用指令。所述方法可以由独立的应用、服务或托管的服务(独立的或与另一托管的服务组合的)、或另一产品的插件等来提供。由此,方法300可以由一个或多个计算设备(例如,智能电话、虚拟助手(VA)设备、聊天机器人设备、智能代理(IA)设备、或其他用户设备、服务器)来执行,或者由分布式计算平台(例如,在云中)来执行。可以通过对从与用户相关联的一个或多个用户设备所收集的信号数据(或用户数据)的分析来推断活动模式。
[0155] 框或步骤302的实施例可以监视参与一个或多个通信会话(CS)的用户的用户活动。在一些实施例中,用户可以采用图1的设备102-102n中的任何一个来参与一个或多个CS。用户可以正在与参与一个或多个CS的其他用户交换内容,其中,其他用户在采用其他设备来参与所述一个或多个CS。内容可以包括对由用户和其他用户实行的对话进行编码的一个或多个自然语言表达和/或话语。可以采用例如但不限于图2的用户-活动监视器296的用户-活动监视器来监视用户的用户活动,包括参与一个或多个CS。如在各种实施例中所讨论的,监视用户的用户活动可以包括确定、识别、和/或推断用户的一个或多个用户-活动模式。
[0156] 在步骤304处,可以基于所监视的用户活动来生成用户的用户-兴趣模型。例如,在一些实施例中,可以基于所推断的用户的一个或多个用户-活动模式、和/或各种其他信息(例如但不限于在图2的用户简档240中包括的信息)来生成、更新、和/或训练用户-兴趣模型。在一个实施例中,学习引擎(例如但不限于图2的学习引擎270)的一个或多个组件可以生成用户-兴趣模型。例如,图2的用户-兴趣模型学习器268可以基于所监视的用户活动来训练用户-兴趣模型。
[0157] 在一些实施例中,用户-兴趣模型可以基于用户反馈而在框304处被更新。这样的用户反馈可以包括自动生成的响应的经组织的版本。自动生成的响应的经组织的版本可以由在说出响应的用户或接收作为对话的一部分的响应的一个或多个其他用户来组织(或编辑)。用户反馈还可以包括对在本文中讨论的各种数据模型的经编辑和/或经组织的表示。例如,可以向用户提供对数据模型的表示。用户可以手动组织或编辑所述表示。可以更新数据模型以包含或反映用户的组织。在非限制性示例中,可以向用户提供对用户-兴趣模型的视觉表示,并且用户可以手动地组织和/或编辑该表示。用户-兴趣模型是基于对该表示的编辑而被更新的。例如,可以向用户提供主题图、主题映射、或在用户-兴趣模型中包含的主题的层级列表。用户可以手动地编辑对用户兴趣模型的这样的视觉表示。
[0158] 在步骤306处,可以基于用户-兴趣模型、所监视的用户活动、和/或用户反馈来生成和/或更新各种数据模型,例如,内容-相关性模型、内容-实质模型、和内容-风格模型。例如,在一些实施例中,可以基于所生成的用户-兴趣模型、所推断的用户的一个或多个用户-活动模式、和/或其他信息(例如但不限于在用户简档240中包括的信息)来生成、更新、和/或训练内容-相关性模型。可以基于作为训练数据被采用的CS内容来生成内容-实质、内容-风格、CS上下文、和响应-生成模型。在一个实施例中,学习引擎(例如但不限于学习引擎270)的一个或多个组件可以生成和/或更新各种数据模型。例如,内容-相关性模型学习器
278可以基于用户-兴趣模型以及从用户简档240收集的信息来训练内容-相关性模型。可以采用一个或多个知识图或概念图来生成内容-相关性模型。概念图可以指示各种概念和想法之间的关系。例如,可以基于在训练数据集中包括的CS内容的NLP处理的结果来查询知识图或概念图。更加具体地,可以查询概念图以确定与经由对训练内容的NLP分析所确定的(嵌入在对话中的)概念有关系的想法,或者反之亦然。知识图提供了语义知识与人、地方、和东西之间的映射。类似于概念图的情况,可以查询知识图以将语义知识与在嵌入在训练内容中的对话中讨论的主题或概念进行配对和/或关联。
[0159] 类似地,内容-实质模型学习器272可以生成、更新、和/或训练内容-实质模型。内容-风格模型学习器274可以生成、更新、和/或训练内容-风格模型。CS上下文模型学习器278可以生成、更新、和/或训练CS上下文模型。响应-生成模型学习器288可以生成、更新、和/或训练响应-生成模型。
[0160] 在步骤308处,监视一个或多个CS。结合图4的过程400讨论了用于监视CS的各种实施例。然而,在本文中简要地,监视CS可以包括接收由参与CS的多个用户交换的内容的至少一部分。监视CS还可以包括接收与CS相关联的其他数据或信息,例如但不限于CS的元数据。接收到的其他数据中的一些可以与用户的CS的上下文相关联。CS监视器例如但不限于可以监视一个或多个CS图2的CS监视器和分析器290。
[0161] 在步骤310处,分析一个或多个CS的内容和/或上下文。可以基于内容-实质模型、内容-风格模型、和CS上下文模型来分析一个或多个CS的内容和上下文。结合图4的过程400讨论了用于分析CS的内容和上下文的各种实施例。然而,在本文中简要地,分析CS的内容可以包括确定一个或多个内容特征,例如但不限于内容实质和内容-风格特征。这样的内容特征可以指示在内容中包括的自然语言表达和/或话语的预期语义的一部分。可以采用例如但不限于CS监视器和分析器290之类的CS分析器来分析CS的内容和/或上下文中的至少一个。例如,可以经由CS-内容分析器292来确定内容-实质和内容-风格特征。
[0162] 在步骤312处,要响应的内容是基于内容-相关性模型和CS上下文模型来识别的。更加具体地,可能相关于响应的内容是在步骤312处被识别的。所分析的内容中针对响应与用户可能相关的部分是基于内容-相关性模型被识别的。结合图5的过程500讨论了识别可能相关内容的各种实施例。然而,在本文中简要地,基于所分析的CS的内容和上下文,内容的各个部分可以被识别为可能与用户相关,或者甚至与用户高度相关。当内容被识别为与用户高度相关时,可以将高度相关的内容的一个或多个实时(或接近实时)的通知提供给用户。例如但不限于图2的内容相关性确定器280的内容相关性引擎可以使能够向用户提供通知。
[0163] 在步骤314处,提供被识别为可能相关的内容的一个或多个响应。与图5的流程500一起讨论了对可能相关的内容提供响应的各种实施例。然而,简单地说,响应生成模型可以用来生成至少一个响应或响应的一部分。在半自动模式下,可以向用户提供一个或多个响应。在一个实施例中,向用户提供各种备选响应,用户可以选择向CS提供哪一种备选响应。在自动模式下,一个或多个响应可以直接提供给CS。响应引擎,如但不限于图2中的响应引擎260,生成并提供响应。或者,表示组件(如但不限于图2中的表示组件)可以向用户或CS提供响应。
[0164] 在框316处,接收来自用户的反馈。这样的用户反馈可以包括经组织和/或经编辑的响应、在多个所提供的可替代响应间进行的用户选定或选择等。如前所述,该反馈可以是由说出自动生成的响应的用户组织和/或提供的。可替代地或另外地,反馈可能由其他用户生成、组织、或编辑,例如参与CS的其他用户,他们是自动生成的响应的期望收件人。处理300返回至框,以使得基于所接收的用户反馈来更新各种数据模型。
[0165] 图4描绘了根据本公开的实施例的用于识别图3的通信会话中与针对其提供响应可能相关的内容的方法的流程图。在步骤402处,接收CS的内容。例如,内容可以由CS监视器接收,例如但不限于图2的CS监视器和分析器290。在步骤404处,接收CS的上下文数据。所述上下文数据可以包括哟农户的上下文数据。这样的上下文数据可以包括与CS相关联的其他数据,例如但不限于CS的元数据。也就是说,其他数据的至少一部分可以与CS的上下文以及用户的CS的上下文相关联。包括元数据的上下文数据可以由在步骤402处接收内容的相同或不同的CS监视器接收。
[0166] 在步骤406处,确定和/或识别所接收的内容的一个或多个内容-实质特征。确定内容-实质特征可以基于内容、内容-实质模型、以及CS的上下文数据。例如但不限于图2的内容-实质模型学习器272的内容-实质模型学习器可以生成、更新、和/或训练内容-实质模型。内容-实质特征可以另外地基于由学习引擎所训练的用户-兴趣模型。确定内容-实质特征可以包括为内容的内容行的至少一部分(或内容行的块)确定一个或多个内容-实质特征。
[0167] 如在通篇中所述,内容的内容-实质特征可以编码或指示该内容的概念或语义成分。即,内容-实质特征可以指示与内容行相关联的语义、含义、和/或内涵。内容-实质特征可以指示与内容行相关联的一个或多个主题和/或关键词。内容-实质特征还可以指示说话者的情感。即,情感内容-实质特征可以对在内容中表达的所识别和/或归类的观点进行编码。作为CS内容分析器,例如但不限于CS内容分析器292,可以确定和/或识别一个或多个内容-实质特征。内容-实质特征可以是内容实质的可观察、潜在、或隐藏的特征或变量。
[0168] 在步骤408处,确定和/或识别所接收内容的一个或多个内容-风格特征。确定内容-风格特征可以基于内容、内容-风格模型、以及与CS相关联的其他数据。例如但不限于图2的内容-风格模型学习器274的内容-风格模型学习器可以生成、更新、和/或训练内容-风格模型。可以采用用户-兴趣模型来确定内容-风格特征。确定内容-风格特征可以包括为内容的内容行的至少一部分(或内容行的块)确定一个或多个内容-风格特征。
[0169] 内容的内容-风格特征可以编码或表示内容行的说话者的风格(例如,语法)选择。即,内容-风格特征可以指示说话者的语法、词汇、情绪、和对话选择。例如,内容-风格特征可以编码说话者的讲话风格。内容-风格特征可以另外编码说话者的一种或多种情绪,例如,愤怒、惊奇、满意、幸福、和其他情绪。内容-风格特征可以指示说话者的语调、速度、和音量。CS内容分析器292可以确定和/或识别一个或多个内容-实质特征。内容-风格特征可以是内容-风格的可观察、潜在、或隐藏的特征或变量。
[0170] 在步骤410处,确定和/或识别CS的一个或多个上下文特征。确定上下文特征可以是基于内容、CS上下文模型、以及诸如与CS相关联的其他数据(至少包括所接收的元数据)之类的上下文数据的。例如但不限于图2的CS上下文模型学习器278的CS上下文模型学习器可以生成、更新、和/或训练CS上下文模型。可以采用用户-兴趣模型来确定上下文特征。上下文特征可以是CS上下文的可观察、潜在、或隐藏的特征或变量。可以采用例如但不限于图2的CS上下文分析器294的CS上下文分析器来确定CS的一个或多个上下文特征。
[0171] CS的上下文特征可以包括但不限于对参与CS或与CS相关联的用户中的每个用户的指示或编码,相关联的用户中的每个用户的活动和/或参与程度,以及相关联的用户中的每个用户的可用性。上下文特征还可以指示CS的启动和终止时间戳、CS的持续时间、以及对相关联的用户已经或正在参与的其他过去或当前CS的指示。另外的上下文特征可以指示每个相关联的用户的近似的地理位置和/或逻辑位置。CS上下文特征可以包括或基于相关联的用户中的每个用户的任何用户简档信息。
[0172] CS的上下文特征可以指示或编码层级关系图,其指示在CS的相关联的用户对中的至少一些对之间的一个或多个关系。所指示的关系可以包括专业关系、个人关系、或遗传关系。例如,关系图可以指示管理者/下属关系、配偶/个人合伙关系、父母/孩子/兄弟姐妹关系、或者针对相关联的用户对的任何其他这样的关系。上下文特征可以指示基于用户采用的一个或多个社交网络平台的和/或从所述社交网络平台生成的一个或多个社交网络图。上下文特征可以包括针对在对话中参考和/或交换的材料(例如,电子邮件、网站、幻灯片、电子表格、文件、或其他这样的文档,包括任何多媒体内容)的指示,其例如但不限于静态或动态链接。这样的多媒体内容可以包括电子书(e-book)、音频和/或视频文件、动画、组织结构图、或其他这样的可听见的、视觉、和/或文本内容。
[0173] 上下文特征可以包括一个或多个上下文标签。例如,“社交”标签可以是针对社交对话或交互的CS的上下文特征,而“工作”和/或“会议”标签可以是针对与工作有关的会议的CS的上下文特征。上下文特征可以指示或编码会议标题、会议主题、会议议程、会议时间表、或指示CS对话的结构和/或主题的其他这样的信息。上下文特征可以指示CS的一个或多个隐私和/或加密配置。CS的上下文特征实际上可以编码指示CS的上下文的任何可确定信息。
[0174] 上下文特征可以为CS内的至少一部分用户编码“角色”或“位置”。例如,上下文特征可以编码特定用户是CS内的“领导者”、“参与者”、还是“观察者”。每个用户的CS的上下文可以是基于他们在CS中的角色或位置的。因此,对于特定用户,对可能相关的内容的识别和对可能相关内容的响应的生成可以是基于其在CS中的角色或位置以及其他用户中的每个用户的角色或位置的。
[0175] 在步骤412处,识别要生成针对其的响应的内容。也就是说,识别与生成针对其的响应可能相关的内容。识别这样的内容可以是基于用户-兴趣模型、内容-相关性模型、一个或多个内容-实质特征、一个或多个内容-风格特征、一个或多个上下文特征、以及响应生成模型的。识别要响应的可能相关的内容包括确定内容的相关性。这样的相关性可以是基于用户-兴趣模型、内容-相关性模型、一个或多个内容-实质特征、一个或多个内容-风格特征、和/或一个或多个上下文特征的。可以采用例如但不限于图2的内容相关性确定器280的内容相关性引擎来确定内容的相关性。在至少一个实施例中,采用图2的内容相关性分析器282来确定内容的相关性。
[0176] 至少结合图5的过程500来讨论用于识别要响应的内容的各种实施例。然而,在本文中简要地,识别要响应的内容包括确定内容的相关性包括确定一个或多个概率,其中,所述一个或多个概率与内容同用户相关的可能性有关。所述一个或多个概率可以被构造为归一化的标量、向量、矩阵、张量、或诸如多维阵列之类的数据结构中的一些。数据结构的每个组成部分都关于一个或多个用户-兴趣指示内容与用户相关的概率。在一些实施例中,所确定的内容相关性的组成部分可以指示内容的时间紧急性。也就是说,该组成部分可以指示该内容具有紧急性质,并且应当很快引起用户的兴趣。在一个实施例中,针对内容的相关性包括整体相关性,该整体相关性是与用户感兴趣的各种主题相对应的一个或多个概率的组合。
[0177] 图5描绘了根据本公开的实施例的用于生成和提供对图3的通信会话内容的响应的方法的流程图。在步骤502处,基于内容的相关性来识别内容中可能与用户有关的一个或多个部分。例如但不限于图2的内容识别器284之类的内容识别器可以用于识别可能相关的内容。
[0178] 识别可能相关的内容可以是基于一个或多个相关性阈值的。也就是说,如果相关概率或分数中的一个或多个大于相关性阈值,则内容可以被识别为可能相关。在一个实施例中,如果总体相关性大于总体相关性阈值,则内容可以被识别为可能相关。在一些实施例中,如果对应于时间紧急性的概率大于紧急性阈值,则内容可以被识别为可能相关。用户可以经由在用户偏好248和/或图2的用户简档240中包括的其他信息来提供一个或多个相关性阈值。
[0179] 在其他实施例中,可以基于其他方法来识别可能相关的内容。在一个实施例中,确定可能相关的内容可以是基于ML方法的。例如,用户可以手动地组织自动生成的响应和/或提供手动生成的响应。组织和/或手动生成的响应可以被存储在图2的用户组织的响应258中,并且可以用作“真实数据”响应。各种ML方法可以学习数据模型以学习识别可能相关的内容。在一个实施例中,使用手动组织的响应作为“真实数据”响应使能实现对一个或多个相关性阈值的自动化确定。
[0180] 在步骤502处,还可以基于所识别的可能相关的内容、内容的相关性、以及另外的相关性阈值来识别高度相关的内容。高度相关的内容可以由例如但不限于内容识别器284的内容识别器来识别。高度相关的内容可以基于相关阈值大于用于识别可能相关的内容的相关阈值而被识别。也就是说,如果相关概率或分数中的一个或多个大于高度相关的阈值,则内容可以被识别为高度相关。例如,可以采用紧急度阈值来识别高度相关的内容。可以在框502处生成所识别的可能相关或高度相关的内容的摘要。例如,内容摘要生成器286可以生成对内容的摘要。该摘要可以被提供给用户。可以采用可能相关内容的该摘要来生成对可能相关内容的响应。
[0181] 在框504处,基于响应-生成模型来确定要在对可能相关的和/或高度相关的内容的响应中编码的一个或多个内容-实质特征。例如图2中的逻辑响应生成器262的逻辑响应生成器可以确定要在响应中编码的内容-实质特征。更加具体地,确定要在响应中包括的内容-实质特征可以是基于在可能相关的内容中编码的内容-实质特征和内容-风格特征,以及CS的上下文特征的。响应-生成模型可以采用内容-实质模型来确定要在响应中包括的内容-实质特征。在框506处,逻辑响应是基于在框504处确定的内容-实质特征而生成的。逻辑响应生成器可以采用响应生成器模型以及其他NLP模型来生成对内容-实质特征进行编码的逻辑响应。该逻辑响应可以是基于可能相关的内容的摘要(例如图2的内容摘要生成器286所生成的摘要)而生成的。
[0182] 在框508处,基于响应-生成模型来确定要在对可能相关的和/或高度相关的内容的响应中编码的一个或多个内容-风格特征。逻辑响应生成器可以确定要在响应中编码的内容风格特征。更加具体地,确定要在响应中包括的内容风格特征可以是基于在可能相关的内容中编码的内容-实质特征和内容-风格特征,以及CS的上下文特征的。响应生成模型可以采用内容-实质模型和内容-风格模型来确定要在响应中包括的内容-风格特征。在框510处,风格化响应是基于在框506处生成的逻辑响应、在框504处确定的内容-实质特征、和在框508处确定的内容-风格特征而生成的。逻辑响应生成器可以采用响应-生成器模型来生成对内容-实质和内容-风格特征进行编码的风格化响应。该风格化响应可以是基于可能相关内容的摘要而被生成的,例如由内容摘要生成器所生成的摘要。
[0183] 在框512处,基于操作模式来提供风格化响应和/或逻辑响应。可以采用例如但不限于图2的响应呈现器266的响应呈现器来基于操作模式提供响应。在自动模式下,风格化响应可以被直接提供至对应的CS。在半自动模式下,可以向用户提供风格化响应。用户可以决定是向CS提供响应、在向CS提供响应之前编辑响应、还是向CS提供手动创建的响应。在一些实施例中,可以向用户提供逻辑响应。用户可以基于所提供的逻辑响应来手动地创建要提供至CS的风格化响应。在一些实施例中,可以向用户提供多个可替代的逻辑的和/或风格化响应。用户可以手动地选择向CS提供哪些可替代的响应。可以采用对可替代的响应的选择作为用户反馈以更新在本文中所讨论的各种数据模型。
[0184] 在框512处,响应可以以文本或可听见的格式被提供给CS或用户。在一些实施例中,响应的文本在托管CS的窗口中被提供。在其他实施例中,响应的文本在另一窗口中被提供,以使得用户可以编辑、复制该文本,并且将该文本粘贴到托管CS的窗口中。在一些实施例中,采用文本到音频服来自动地生成模拟用户的声音的风格化响应的语音版本。在一些实施例中,采用ML方法来自动地生成模拟用户的声音的风格化响应的语音版本。也就是说,可以生成风格化响应的可听见的版本,其可以听起来类似于好像用户说出了所述风格化响应。当以自动模式操作时,这样的响应的可听见的版本可以被直接提供给CS,这使得参与CS的其他用户可能会认为:用户说出了这样的自动生成的风格化响应。
[0185] 在一些实施例中,在步骤512处,可以将高度相关的内容和对应的所生成的响应的通知提供给用户。可以采用响应呈现器来向用户提供对高度相关的内容和所生成的响应的实时通知。例如,对于在502处被识别为与用户高度相关的内容,各种实施例可以提供实时和/或接近实时的、可听见的、和/或可视的通知或提示,以引起用户对内容和所生成的响应的关注。例如,如在本文中所讨论的,所确定的相关性可以包括所确定的内容的时间紧急性。当用户同时参与分布在多个窗口或用户界面上的多个CS时,各种实施例可以在用户的显示设备的前台中突出显示或定位包括所识别的非常紧急的内容和所生成的响应的用户界面。用户的注意力还可以指向高度紧急的内容和响应,其中在现在在显示设备前台中的用户界面内具有另外的选择性突出显示。因此,除了自动生成和提供对可能相关的内容的响应外,各种实施例所提供的增强的CS服务包括识别和突出显示与用户高度相关的CS内容以及所生成的响应,其中,对高度相关的内容的识别和对响应的生成是以特定用户为目标的。在一个实施例中,可以经由自动生成的语音来提供用于突出显示高度相关的内容和响应的通知。基于语音的通知可以包括高度相关的内容、高度相关的内容的经摘要的版本,或者仅是将用户的注意力引向特定用户界面以及所生成的响应的语音或以其他方式可听见的指示。
[0186] 在一些实施例中,可以利用云系统和/或云服务来执行方法300、400和500的部分,以便将改进的或增强的用户体验(例如,针对一个或多个CS自动生成的响应)提供给可以在许多不同用户设备上运行的多个服务。
[0187] 在描述了各种实现方式之后,现在描述适合于实现本公开的实施例的示例性计算环境。参考图6,示例性计算设备被提供,并且通常被称为计算设备600。计算设备600仅是合适的计算环境的一个示例,并且不旨在暗示对本公开实施例的使用范围或功能的任何限制。计算设备600也不应当被解释为具有与所示出的组件中的任何一个或组合有关的任何依赖性或要求。
[0188] 可以在计算机代码或机器可用指令的一般上下文中描述本公开的实施例,所述计算机代码或机器可用指令包括由计算机或其他机器(例如,个人数据助手、智能电话、平板计算机、或其他手持设备)执行的计算机可用或计算机可执行指令,例如程序模块。通常而言,程序模块(包括例程、程序、对象、组件、数据结构等)是指执行特定任务或实现特定抽象数据类型的代码。本公开的实施例可以在包括手持设备、消费性电子产品、通用计算机、更多专用计算设备等的各种系统配置中被实践。本公开的实施例还可以在其中由通过通信网络链接的远程处理设备执行任务的分布式计算环境中实践。在分布式计算环境中,程序模块可以位于包括存储器存储设备的本地和远程计算机存储介质中。
[0189] 参考图6,计算设备600包括直接或间接耦合以下设备的总线610:存储器612、一个或多个处理器614、一个或多个呈现组件616、一个或多个输入/输出(I/O)端口618、一个或多个I/O(I/O)组件620、以及说明性电源622。总线610表示可能是一个或多个总线(例如,地址总线数据总线、或其组合)。尽管为了清楚起见用线示出了图6的各个框,实际上,这些框代表逻辑组件,不一定是实际组件。例如,可以将诸如显示设备之类的呈现组件视为I/O组件。另外,处理器具有存储器。本发明的发明人认识到这是本领域的性质,并重申图6的图仅说明了可以结合本公开的一个或多个实施例使用的示例性计算设备。在“工作站”、“服务器”、“膝上型计算机”、“手持式设备”等类别之间没有进行区分,因为所有这些都在图6的范围内并参考“计算设备”被构想到。
[0190] 计算设备600通常包括各种计算机可读介质。计算机可读介质可以是能够由计算设备600访问的任何可用介质,并且包括易失性和非易失性介质、可移动和不可移动介质。作为示例而非限制,计算机可读介质可以包括计算机存储介质和通信介质。计算机存储介质包括以任何用于存储诸如计算机可读指令、数据结构、程序模块或其他数据之类的信息的方法或技术实现的易失性和非易失性、可移动和不可移动的介质。计算机存储介质包括但不限于RAM、ROM、EEPROM、闪速存储器或其他存储器技术、CD-ROM、数字多功能磁盘(DVD)或其他光盘存储设备、盒式磁带、磁带、磁盘存储或其他磁性存储设备,或者可以用于存储所需信息并能够由计算设备600访问的任何其他介质。计算机存储介质不包括信号本身。通信介质通常在诸如载波或其他传输机制的已调制数据信号中实施计算机可读指令、数据结构、程序模块、或其他数据,并且包括任何信息传递介质。术语“已调制数据信号”是指具有以将信息编码为信号的方式来设置或改变其特性中的一个或多个的信号。作为示例而非限制,通信介质包括诸如有线网络或直接有线连接之类的有线介质,以及诸如声学、RF、红外和其他无线介质之类的无线介质。以上任何内容的组合也应当被包括在计算机可读介质的范围内。
[0191] 存储器612包括采用易失性和/或非易失性存储器形式的计算机存储介质。存储器可以是可移动的、不可移动的、或其组合。示例性硬件设备包括固态存储器、硬盘驱动器、光盘驱动器等。计算设备600包括从诸如存储器612或I/O组件620的各种实体读取数据的一个或多个处理器614。呈现组件616向用户或其他设备呈现数据指示。在一些实现中,系统200的呈现组件220可以被实施为呈现组件616。呈现组件的其他示例可以包括显示设备、扬声器、打印组件、振动组件等。
[0192] I/O端口618允许计算设备600逻辑上耦合至其他设备,包括I/O组件620,其中一些可以是内置的。说明性组件包括麦克风、操纵杆、游戏手柄、碟形卫星天线、扫描仪、打印机、无线设备等。I/O组件620可以提供自然用户界面(NUI),该自然用户界面处理由用户生成的空中手势、语音、或其他生理输入。在某些实例中,可以将输入传输到合适的网络元件以供进一步处理。NUI可以实现语音识别、触摸和手写笔识别、面部识别、生物识别、屏幕上以及与邻近屏幕的手势识别、空中手势、头部和眼睛跟踪、以及与计算设备600上的显示相关联的触摸识别的任何组合。计算设备600可以配备深度相机,例如立体相机系统、红外相机系统、RGB相机系统以及这些的组合,以用于手势检测和识别。另外地,计算设备600可以配备有能够检测运动的加速度计或陀螺仪。加速度计或陀螺仪的输出可以被提供至计算设备600的显示器以沉浸式增强现实虚拟现实
[0193] 计算设备600的一些实施例可以包括一个或多个无线电设备624(或类似的无线通信组件)。无线电设备624发送和接收无线电或无线通信。计算设备600可以是适于在各种无线网络上接收通信和媒体的无线终端。计算设备600可以经由无线协议进行通信以与其他设备进行通信,实施协议例如码分多址(“CDMA”)、全球移动系统(“GSM”)、或时分多址(“TDMA”)等。无线电通信可以是短程连接、远程连接,或者是短程和远程无线电信连接两者的组合。当我们提到“短”和“远”类型的连接时,我们并不是要指两个设备之间的空间关系。相反,我们通常将短程和远程称为连接的不同类别或类型(即主要连接和次要连接)。短程连接可以作为示例而非限制包括与提供对无线通信网络的访问的设备(例如,移动热点)的连接,例如,使用802.11协议的WLAN连接;与另一个计算设备的蓝牙连接是短程连接或近场通信连接的第二示例。远程连接可以包括例如但不限于使用CDMA、GPRS、GSM、TDMA和802.16协议中的一个或多个的连接。
[0194] 在不脱离以下权利要求的范围的情况下,所描绘的各种组件以及未示出的组件的许多不同的布置都是可能的。已经出于说明性而非限制性的目的描述了本公开的实施例。在阅读本公开之后并且由于阅读本公开,可以替代实施例对于本公开的读者将变得显而易见。在不脱离以下权利要求的范围的情况下,可以完成实现前述内容的可替代手段。某些特征和子组合是有用的,并且可以在不参考其他特征和子组合的情况下被采用,并且被认为在权利要求的范围内。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈