CN110476176B - 用户目标辅助技术 - Google Patents
用户目标辅助技术 Download PDFInfo
- Publication number
- CN110476176B CN110476176B CN201880019431.9A CN201880019431A CN110476176B CN 110476176 B CN110476176 B CN 110476176B CN 201880019431 A CN201880019431 A CN 201880019431A CN 110476176 B CN110476176 B CN 110476176B
- Authority
- CN
- China
- Prior art keywords
- user
- task
- activity data
- event
- events
- 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
Links
- 238000000034 method Methods 0.000 title claims description 48
- 230000000694 effects Effects 0.000 claims abstract description 190
- 230000001788 irregular Effects 0.000 claims description 20
- 230000009471 action Effects 0.000 claims description 19
- 238000001914 filtration Methods 0.000 claims description 2
- 238000007726 management method Methods 0.000 description 41
- 238000013480 data collection Methods 0.000 description 18
- 230000006870 function Effects 0.000 description 18
- 230000015654 memory Effects 0.000 description 15
- 230000006399 behavior Effects 0.000 description 14
- 238000004891 communication Methods 0.000 description 14
- 238000010586 diagram Methods 0.000 description 7
- 239000000284 extract Substances 0.000 description 7
- 238000010801 machine learning Methods 0.000 description 7
- 238000013439 planning Methods 0.000 description 7
- 230000002123 temporal effect Effects 0.000 description 7
- 238000013459 approach Methods 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 6
- 238000001514 detection method Methods 0.000 description 5
- 230000033001 locomotion Effects 0.000 description 5
- 230000008569 process Effects 0.000 description 5
- 238000012545 processing Methods 0.000 description 5
- 238000004458 analytical method Methods 0.000 description 4
- 230000036772 blood pressure Effects 0.000 description 4
- 230000008859 change Effects 0.000 description 4
- 230000003068 static effect Effects 0.000 description 4
- 230000010006 flight Effects 0.000 description 3
- 238000012384 transportation and delivery Methods 0.000 description 3
- 239000002699 waste material Substances 0.000 description 3
- 238000009825 accumulation Methods 0.000 description 2
- 238000013528 artificial neural network Methods 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 230000007423 decrease Effects 0.000 description 2
- 238000000605 extraction Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 239000000463 material Substances 0.000 description 2
- 238000012544 monitoring process Methods 0.000 description 2
- 230000006855 networking Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000008520 organization Effects 0.000 description 2
- 238000012549 training Methods 0.000 description 2
- 241000238558 Eucarida Species 0.000 description 1
- 230000004931 aggregating effect Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000003190 augmentative effect Effects 0.000 description 1
- 238000013477 bayesian statistics method Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000013145 classification model Methods 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 230000001143 conditioned effect Effects 0.000 description 1
- 230000001186 cumulative effect Effects 0.000 description 1
- 230000002708 enhancing effect Effects 0.000 description 1
- 230000001815 facial effect Effects 0.000 description 1
- 235000020803 food preference Nutrition 0.000 description 1
- 230000002650 habitual effect Effects 0.000 description 1
- 229960003971 influenza vaccine Drugs 0.000 description 1
- 238000007477 logistic regression Methods 0.000 description 1
- 230000014759 maintenance of location Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000010999 medical injection Methods 0.000 description 1
- 238000003909 pattern recognition Methods 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 238000007639 printing Methods 0.000 description 1
- 230000003252 repetitive effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000013179 statistical model Methods 0.000 description 1
- 238000012706 support-vector machine Methods 0.000 description 1
- 230000007723 transport mechanism Effects 0.000 description 1
- 238000010200 validation analysis Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q10/063—Operations research, analysis or management
- G06Q10/0631—Resource planning, allocation, distributing or scheduling for enterprises or organisations
- G06Q10/06316—Sequencing of tasks or work
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q10/063—Operations research, analysis or management
- G06Q10/0631—Resource planning, allocation, distributing or scheduling for enterprises or organisations
- G06Q10/06311—Scheduling, planning or task assignment for a person or group
- G06Q10/063114—Status monitoring or status determination for a person or group
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/10—Office automation; Time management
- G06Q10/109—Time management, e.g. calendars, reminders, meetings or time accounting
Landscapes
- Business, Economics & Management (AREA)
- Human Resources & Organizations (AREA)
- Engineering & Computer Science (AREA)
- Entrepreneurship & Innovation (AREA)
- Strategic Management (AREA)
- Economics (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Marketing (AREA)
- Operations Research (AREA)
- Quality & Reliability (AREA)
- Tourism & Hospitality (AREA)
- General Business, Economics & Management (AREA)
- Game Theory and Decision Science (AREA)
- Development Economics (AREA)
- Educational Administration (AREA)
- Data Mining & Analysis (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Information Transfer Between Computers (AREA)
Abstract
在一些实施中,从多个传感器接收第一用户活动数据集合,其中第一用户活动数据集合对应于多个用户。基于与追求目标的多个用户相关联的、形成在第一用户活动数据集合中的模式,从接收的第一用户活动数据集合中提取目标的任务列表。基于确定第二用户活动数据集合指示用户追求目标,基于第二用户活动数据集合与任务的比较确定任务列表中的至少一个任务未被用户完成。基于确定任务未被完成,向与用户相关联的用户设备提供对应于任务的内容。
Description
背景技术
用户通常依靠计算设备来完成各种目标,诸如计划旅行、为婴儿做准备、组织聚会、找寻住宅和找寻工作。例如,在计划旅行时,用户可访问预订网站来安排酒店、汽车、航班和观光活动。此外,用户可访问其他网站来研究旅行的可用选项、在旅行前安排医生访问以及安排保姆。诸如移动设备(包括智能手机和平板设备)的计算设备越来越多地与可以帮助用户完成其目标的自动化个人助理软件集成。例如,提供了“Siri”,提供了“Google Now”,/>提供了“Alexa”,以及提供了“Cortana”。
个人助理技术在它们帮助用户完成目标的能力方面有限。在许多情况下,用户必须向个人助理软件提供有关特定信息的查询,然后个人助理软件向用户提供查询结果。这种方法不仅为用户提供了有限的帮助,而且浪费了大量的计算资源(例如,网络带宽和功率),因为用户必须使用多重查询来寻找合适的网站、服务和信息,这些查询需要被精炼并且可以提供与用户目标具有边际相关性的查询结果。一些个人助理技术代表用户自动地执行任务(例如,在机场附近显现飞机票)。然而,这些技术是硬编码的、特定于任务的、不灵活的,并且无法帮助用户完成可随时间变化的大量可能任务和域中的目标。
发明内容
提供该发明内容部分来以简化形式引入概念的选择,这在下文的详细描述中进行进一步的描述。该发明内容部分并不用于识别所要求保护主题的主要特征或基本特征,也并不用于帮助确定所要求主题的范围。
本公开的各个方面提供了一个框架,用于推理相对于用户的目标的任务、基于所推理的任务来推理追求目标以及帮助用户使用应用程序或服务(诸如机器人程序)完成目标任务,以委托执行目标的至少一些任务。本公开的各个方面进一步提供用于跟踪用户相对于特定目标示例的任务完成情况以及基于这些推断来推理用户上下文。
附图说明
以下参照附图详细描述本发明,其中:
图1是示出根据本公开的实施方式的用于将内容裁剪为非常规事件的系统的框图;
图2是示出根据本公开的实施方式的示例性目标管理系统的框图;
图3是示出根据本公开的实施方式的将内容裁剪为非常规事件的方法的流程图;
图4是示出根据本公开的实施方式的用于区分用户事件的方法的流程图;
图5是示出根据本公开的实施方式的用于区分用户事件的方法的流程图;以及
图6是适合用于本公开的实施方式的示例性计算环境的框图。
具体实施方式
本文特别地描述本发明的主题以满足法定要求。然而,说明书本身并不限制本专利的范围。相反,发明人已经考虑到,所要求保护的主题也可以其他方式体现,包括与本文所述相似的不同步骤或步骤组合,与其他现有或未来的技术相结合。此外,尽管术语“步骤”和/或“块”可在本文用于表示所采用方法的不同元素,但术语不应解释为暗示本文所公开的各个步骤之间的任何特定顺序,除非个别步骤的顺序是明确描述的。
本公开的各个方面提供了一个框架,用于推理相对于用户的目标任务、基于所推理的任务来推理追求目标以及帮助用户完成目标任务,其示例包括使用应用程序或服务(诸如机器人程序)来委托执行目标任务中的至少一些,以及向用户展示目标和/或目标的一个或多个任务。本公开的各个方面进一步提供了跟踪用户相对于特定目标示例的任务完成情况以及基于这些推断来推理用户上下文。
在各种实施中,可通过与检测到的用户操作或事件相对应的用户活动数据进行集群或分组来推理目标任务和目标本身。事件可对应于可处于限定条件(诸如一天中的时间、一周中的某天、位置)下的限定用户动作或用户动作的分组、或者与用户相关联的其他计算机可检测行为(诸如与地理位置、位置的语义、与用户一起的人、天气条件等相关联的动作)。
目标任务可以从用户活动数据的集群或组中提取,并分配给目标的任务列表。任务可以基于用户活动数据中确定的各种模式的强度,诸如由类似事件形成的模式。任务可与置信度得分相关联,并且可以基于置信度得分的更新和/或新任务的确定从目标的任务列表中添加或删除。这可以是由于使用随后接收和/或生成的用户活动数据和/或相关模式的强度变化和/或置信度得分重新集群或更新用户活动数据的分组的结果。注意,模式的强度可以针对一个或多个用户(例如,具有类似用户上下文的用户)相对于较大用户集合(例如,总用户或一般人群)而被确定。换言之,如果确定针对一个或多个用户的模式充分强于更大用户集合的模式,则可以认为该模式很强。
这种方法可允许检测和识别一些任务,这些任务反映出由用户使用计算设备所执行的实际用户动作。因此,可以生成任务列表,并且应用程序、服务和机器人程序可指向特定任务,这些任务被确定为由用户频繁执行。在更新分组和模式的实施中,任务列表可保持同时代性,从而避免在不相关的任务上浪费资源,新任务可以被识别,系统可比用户更有效地执行这些新任务,并且可以识别任务的更改使得系统可以更精确且更适当地管理它们。
在进一步的方面中,可基于个人用户上下文,诸如基于与类似用户相关联的用户活动数据的模式,为用户生成任务列表。使用这种方法,可以生成与特定用户相关性增加的任务列表。例如,目标的任务列表可包括一些任务,不过这些任务可能由特定用户执行,否则可能不包括在任务列表中。因此,个人助理应用程序可能无法帮助用户,导致用户无法有效地使用计算资源来完成任务。作为另一种可能性,任务列表可以包括不可能由特定用户执行的任务(例如,尽管通常由总人口执行)。在这种情况下,个人助理应用程序可由于帮助无用任务(例如,内容生成和传输)而浪费计算资源。
在其他方面中,任务的执行可以任选地至少部分地委托给应用程序、服务或机器人程序。这允许以计算有效的方式完成任务,因为用户在使用计算资源时通常效率很低。例如,搜索航班的用户可能会广泛搜索网页,以查找预订旅行的最佳网站、使用的最佳航空公司、航空公司的优惠券代码以及来自各种网站的关于上述内容的评论。相反,使用本文描述的方法,计算服务可自动从系统检测到的类似用户预订航班最常用的、具有最频繁航线的网站检索航班报价,并在单次传输中向用户提供这些信息。
在进一步的方面中,可相对于用户和目标跟踪任务的完成情况。这可用于推理用户正在追求目标、或以其他方式确定用户与目标之间的关联程度,以至于能以计算高效和精确的方式来准备、交付、生成内容和/或将内容提供给用户。例如,一些内容可以提前准备(例如,对于时间敏感的交付)和/或在错误或不相关时保留。内容的示例包括向用户指出目标和/或目标的一个或多个任务的信息、目标的已完成和/或未完成任务的指示、基于一个或多个任务和/或目标确定(例如,从中推理)的信息和/或帮助用户完成目标的一项或多项任务的信息。
在一些实施中,用于生成任务列表的个人用户上下文包括用户是否练习了例程和/或相对于一个或多个例程是非常规的(例如,用户活动数据是否由用户在非常规时生成)。用户例程或用户的例程可对应于用户的重复动作、行为模式(例如,事件的模式)或其他计算机可检测的习惯性行为,诸如用户的锻炼习惯、用户上下班的例程等等。在这方面,例程可根据组成该例程的一个或多个事件来限定。
在一些方面中,本公开提供了用于相对于用户检测和跟踪事件示例的计算机技术。可相对于一个或多个例程分析事件。例如,可以将一个例程识别为对应于一个用户,这基于由所检测事件形成的模式(例如,用户在工作目的下午1点左右开车去工作)实现,该事件对应于该用户,组成该例程。
在本公开的其他方面中,一些事件可以被识别和/或指定为常规事件、或者一些被确定为与用户相关联的例程的一部分的事件。其他事件可被识别和/或指定为非常规事件、或者一些偏离或指示偏离一个或多个用户例程的事件。可基于确定该事件不符合组成用户例程的一个或多个事件来识别非常规事件。这可以包括确定该事件指示:用户填充未能实践与用户相关联的例程的一个或多个预期例程事件。
在特定方面中,例程和事件可基于累计的用户数据进行分析,这些数据可指示例程的事件的一个或多个实例的发生和/或与例程的偏离。累积的用户数据可包括与用户对应的数据的集合。随着时间的推移,用户数据可以由各种可能的数据源和/或数据系统持续收集,这些数据源和/或数据系统在聚合时形成用户动作的模式的详细记录,这些记录对应于用户的一个或多个例程。用户的这些例程和事件可以在用户无法单独实现的范围、准确性和数量水平上从累积的用户数据中识别、提取和/或分析。
用户数据的累积旨在对于体现个人、企业和公共部门组织的强大的机密性和数据保护。在这方面,用户可以控制与用户数据相关的许多方面,包括选择加入或选择退出数据收集和/或本文所述的各种跟踪或分析功能中的任何一个的能力。此外,在未经用户明确同意的情况下,实施保护措施以防止敏感用户数据被其他方(包括其他用户)访问。此外,如果可能的话,任何用户数据都是匿名的。
现在转到图1,提供了示出可使用本公开的一些实施例的操作环境100的示例的框图。应当理解,本文所述的这种和其他布置仅作为示例进行阐述。其他布置和元素(例如,机器、接口、功能、顺序和功能分组等)可用于所示内容的补充或替代,并且为了清楚可完全省略一些元素。此外,本文所述的许多元素是功能实体,可以实施为离散或分布式部件或与其他部件一起实施,并在任何适当的组合和位置中实施。本文所述由一个或多个实体执行的各种功能可由硬件、固件和/或软件执行。例如,一些功能可以由执行存储在存储器中的指令的处理器执行。
在未示出的其他部件中,示例操作环境100包括:多个用户设备,诸如用户设备102a和102b-102n;多个数据源,诸如数据源104a和104b-104n;服务器106;传感器103a和107;以及网络110。应该理解,图1所示的操作环境100是一个适当操作环境的示例。例如,图1所示的每个部件都可以经由结合图8描述的任何类型的计算设备(诸如计算设备800)来实施。这些部件可经由网络110相互通信,网络110包括但不限于一个或多个局域网(LAN)和/或广域网(WAN)。在示例性实施中,网络110包括互联网和/或蜂窝网络,位于各种可能的公共和/或私有网络当中。
应当理解,在本公开的范围内,操作环境100内可以使用任何数量的用户设备、服务器和数据源。每一个都可以包括单个或多个在分布式环境中协作的设备。例如,服务器106可经由分布式环境中布置的多个设备提供,这些设备共同提供本文所述的功能。此外,未示出的其他部件也可以包括在分布式环境中。
用户设备102a和102b-102n可包括能够被用户使用的任何类型的计算设备。例如,在一个实施例中,用户设备102a-102n可以是本文结合图6所述的计算设备类型。例如但不限制的是,用户设备可具体化为个人计算机(PC)、笔记本电脑、移动设备、智能手机、平板电脑、智能手表、可穿戴计算机、个人数字助理(PDA)、MP3播放器、全球定位系统(GPS)或设备、视频播放器、手持通信设备、游戏设备或系统、娱乐系统、车辆计算机系统、嵌入式系统控制器、摄像头、远程控制、条形码扫描仪、计算测量设备、器具、消费电子设备、工作站或者这些划定设备或任何其他适当设备的任何组合。
用户设备102a和102b-102n可以是操作环境100的客户侧的客户设备,而服务器106可以在操作环境100的服务器侧。服务器106可以包括服务器侧软件,其被设计为与用户设备102a和102b-102n上的客户侧软件一起工作,以实施本公开中讨论的特征和功能的任何组合。提供操作环境100的这一划分是为了说明适当环境的一个示例,并且对于每种实施不要求服务器106与用户设备102a和102b-102n的任何组合作为单独的实体保留。
数据源104a和104b-104n可包括数据源和/或数据系统,它们被配置为使数据可用于操作环境100或结合图2描述的目标管理系统200的各种组成中的任何一个。例如,在一个实施例中,一个或多个数据源104a-104n向图2的用户数据收集部件210提供(或使其可用于访问)数据。数据源104a和104b-104n可以与用户设备102a和102b-102n和服务器106分离,或者可以并入和/或集成到这些部分中的至少一个中。在一个实施例中,一个或多个数据源104a-104n包括一个或多个传感器,它们可以并入到与一个或多个用户设备102a、102b或102n或服务器106中,或者与它们相关联。数据源104a-104n可用的用户活动数据的示例结合图2的用户数据收集部件210作了进一步描述。
操作环境100可用于实施图2所述的目标管理系统200的一个或多个部件,所包括的部件用于收集用户数据、推理例程和例程模式、生成例程模型、生成事件细节或特征、确定任务和目标和/或向用户展示任务或目标相关内容。现在参考图2,利用图1,提供的框图示出适合于实施本发明实施例的示例计算系统架构的各个方面,并且通常被指定为目标管理系统200。目标管理系统200只代表适当的计算系统架构的一个示例。其他布置和元素可以作为所示内容的补充或替代,并且为了清楚而完全省略一些元素。此外,与操作环境100一样,本文所述的许多元素是功能实体,它们可以实施为离散或分布式部件或者与其他部件一起以任何适当的组合和位置实施。
操作环境100可用于实施可相对于多个用户识别、跟踪和分析例程的目标管理系统。现在参考图2,图2示出了根据本公开的实施方式的示例性目标管理系统200。
目标管理系统的示例
图2提供的框图示出了可采用本公开的一些实施例的示例性目标管理系统200。特别地,目标管理系统200是能够使用用户数据来确定任务、将任务与目标关联、跟踪任务、识别用户的目标以及将任务委托给应用程序(诸如机器人程序和服务)的系统的一个示例。在一些实施中,目标管理系统200可进一步根据用户数据确定例程,从用户数据中识别和提取事件,将事件与例程关联以及检测和识别非常规事件。
目标管理系统200包括网络110,其如图1所示并且通信地耦合目标管理系统200的部件,包括用户数据收集部件210、展示部件220、存储器225、推理引擎230、例程管理器290、用户配置文件250、用户活动监控器280和目标管理器292。目标管理系统200的部件可体现为编译计算机指令或功能的集合、程序模块、计算机软件服务或者在一个或多个计算机系统(诸如结合图6描述的计算设备600)上执行的处理布置。
在一个实施例中,由目标管理系统200的部件执行的功能与一个或多个个人助理应用程序、服务或例程相关联。特别地,这些应用程序、服务或例程可以在一个或多个用户设备(诸如用户设备104a)、服务器(诸如服务器106)上操作,可以横跨一个或多个用户设备和服务器分布或者在云中实施。此外,在一些实施例中,目标管理系统200的这些部件可以横跨包括一个或多个服务器(诸如服务器106)和客户设备(诸如用户设备102a)的网络分布、在云中分布,或者可以驻留在用户设备(诸如用户设备102a)上。此外,这些部件、这些部件执行的功能或这些部件执行的服务可以在计算系统的适当抽象层(诸如操作系统层、应用程序层、硬件层等)上实施。
可代替地或者另外地,本文所述的这些部件和/或本发明实施例的功能可以至少部分地由一个或多个硬件逻辑部件执行。例如但不限制的是,可以使用的硬件逻辑部件的说明性类型,包括现场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、芯片上系统(SOC)、复杂可编程逻辑器件(CPLD)等。此外,尽管本文对示例目标管理系统200所示的特定部件描述了功能,但可以预期,在一些实施例中,这些部件的功能可以横跨其他部件共享或分布。
如上所述,应理解图2所示的目标管理系统200是可使用本发明实施例的一个系统的示例。所示的每个部件可以包括一个或多个计算设备,并且可以使用参考图1描述的操作环境100来实施。目标管理系统200不应解释为具有与本文所示的任何单个模块/部件或模块/部件的组合相关的任何依赖性或要求。每一个目标管理系统都可以包括单个设备或在分布式环境中协作的多个设备。例如,目标管理系统200可以包括布置在分布式环境中的多个设备,它们共同提供本文所述的各种功能中的任一种。此外,未示出的其他部件也可以包括在环境中。因此,应理解,目标管理系统200和/或其各种部件可通过根据本公开的各种实施例的任何适当的计算机布置来体现。
目标管理系统200通常进行操作以管理相对于用户的目标。如上面所提到的,这可以包括使用用户数据来确定任务、将任务与目标关联、跟踪任务、识别用户的目标以及将任务委托给应用程序(诸如机器人程序和服务)。在一些方面中,可以从用户数据中识别许多用户的事件。可以将事件分组为目标(例如,使用集群),并且可以为每个目标确定与事件对应的任务列表。使用类似于用户个人特征的事件,任务列表可基于用户个人特征(诸如个人用户上下文)对用户进行个性化。在一些情况下,目标对应于用户上下文,并且事件基于与用户上下文相关联而分组到目标中。正如稍后将进一步详细描述的,用户的一个这样的用户上下文可包括非常规用户。另一个用户上下文可以是练习一个或多个特定例程的用户。基于用户上下文将事件分组为目标可以减少用户数据(例如,事件)量,必须对它们进行分析以管理拒绝目标的任务。例如,只有与用户上下文对应的事件才可以被集群。
如上所述,目标管理系统200的每个部件(包括用户数据收集部件210、展示部件220、推理引擎230、例程管理器290、用户配置文件250、用户活动监控器280和目标管理器292及它们对应的子部件)可驻留在计算设备(或多个计算设备)上。例如,目标管理系统200的部件可驻留在下面描述并如图6所示的示例性计算设备700或类似设备上。相应地,目标管理系统200的每个部件可使用一个或多个存储器、处理器、展示部件、输入/输出(I/O)端口和/或部件、无线电和电源(例如,在图6中由参考数字612-624分别表示)来实施。
作为概述,在一些实施例中,用户数据收集部件210促进数据的输入,并使可用于目标管理系统200的数据与用户(即,用户数据)相关联。用户活动监控器280与推理引擎230一起分析用户数据,以识别用户的事件,提取与用户数据相关联的上下文特征,并且提取用户的个人特征,诸如用户的特性特征和其他用户上下文。使用来自用户活动监控器280和推理引擎230的各种信息中的任何信息,例程管理器290可识别用户的例程,将事件与用户的例程相关联,并且检测用户何时、曾经或将要不在例程中。此外,使用来自用户活动监控器280和推理引擎230的各种信息中的任何信息,目标管理器292可确定相对于用户的目标的任务列表,跟踪用户对任务的完成情况,确定用户的目标,并将目标的任务委托给机器人程序或服务。
如上所述,推理引擎230可被目标管理系统200的各种部件中的任何部件用于基于可经由用户数据收集部件210和用户活动监控器280提供的各种信息中的任何信息进行推理。例如,推理引擎230可用于为用户、事件和例程提供语义理解,确定用户和目标之间的关联,跟踪用户的任务,将任务与目标相关联,识别事件的先前例程(如果可用),从用户数据识别事件和例程,确定由用户数据形成的例程的模式(例如,由事件形成),确定事件是技术内的还是计划外偏离例程的,创建和/或更新例程和/或事件模型,确定用户、例程和/或事件的特性,使事件与例程相关,并且确定用户上下文。这些功能可利用来自推理引擎230的各种模式信息,稍后将进一步详细描述这些信息。
展示部件220可用于促进目标和任务以及与目标相关联的信息应用于用户界面。展示部件220可进一步促进例程模型(包括由此派生的信息)应用于用户界面。这可以包括展示部件220基于关联的任务、对象、例程和/或事件来选择、确定、生成和/或向用户展示内容。
用户数据收集部件210通常负责从一个或多个数据源(诸如图1的数据源104a和104b-104n)访问或接收(并且在一些情况下还识别)用户数据。在一些实施例中,用户数据收集部件210可用于促进用户活动监控器280和推理引擎230的特定用户(或者在一些情况下为包括众包数据的多个用户)的用户数据的累积。
数据可以通过用户数据收集部件210接收(或访问)数据以及任选地累积、重新格式化和/或组合,并且存储在一个或多个数据存储器(诸如存储器225)中,其中数据可用于目标管理系统200的其他部件。例如,如本文所述,用户数据可存储在用户配置文件250中或与之相关联。在各种实施例中,任何个人识别数据(即,专门识别特定用户的用户数据)不是从具有用户数据的一个或多个数据源上传的,也不是永久存储的,和/或不可用于用户活动监控器280和推理引擎230。此外,预期与用户数据收集和保留有关的任何特征都是可选的,并且由各个用户自行决定。
用户数据可从各种源接收,其中数据可以各种格式可用。例如,在一些实施例中,经由用户数据收集部件210接收的用户数据可经由一个或多个传感器(诸如图1的传感器103a和107)确定,这些传感器可以位于一个或多个用户设备(诸如用户设备102a)、服务器(诸如服务器106)和/或其他计算设备上或者与它们相关联。如本文所使用的,传感器可包括用于感测、检测或以其他方式从数据源104a获取信息(诸如用户数据)的功能、例程、部件或它们的组合,并且可以具体化为硬件、软件或两二者。
例如但不限制的是,用户数据可包括从一个或多个传感器感测或确定的数据(这里称为传感器数据),诸如移动设备的位置信息、智能手机数据(诸如电话状态、充电数据、日期/时间或者从智能手机得到的其他信息)、用户活动信息(例如:应用程序使用;在线活动;搜索;语音数据,诸如自动语音识别;活动日志;通信数据,包括呼叫、文本、即时消息和电子邮件;网站帖子;与通信事件相关联的其他用户数据等)(包括发生在多个用户设备上的用户活动)、用户历史、会话日志、应用程序数据、联系人数据、日历和日程数据、通知数据、社交网络数据、新闻(包括搜索引擎或社交网络上的流行或趋势项目)、在线游戏数据,电子商务活动(包括来自在线账户的数据,诸如视频流服务、游戏服务或Xbox/>)、用户帐户数据(例如,可以包括来自用户偏好或与个性化相关的(例如,“个人助理”)应用程序或服务的相关联的设置的数据、家庭传感器数据、来自离散或物理传感器的数据、设备数据、全球定位系统(GPS)数据、车辆信号数据、交通数据、天气数据(包括预测)、可穿戴设备数据、其他用户设备数据(可包括设备设置,配置文件,网络连接(诸如Wi-Fi网络数据)或配置数据,有关型号、固件或设备的数据,设备配对(诸如用户的移动电话与蓝牙耳机配对)),陀螺仪数据,加速度计数据,支付或信用卡使用数据(可包括来自用户的PayPal帐户的信息),购买历史数据(诸如来自用户的Amazon.com或eBay帐户的信息),可由传感器(或其他检测器)部件感测或以其他方式检测的其他传感器数据(包括从与用户相关联的传感器部件得到的数据,包括位置、运动、方向、位置、用户访问、用户活动、网络访问、用户设备充电或能够由一个或多个传感器部件提供的其他数据),基于其他数据得到的数据(例如,可从Wi-Fi、蜂窝网络或IP地址数据中获得的位置数据)以及可如本文所述感测或确定的几乎任何其他数据源。
在一些实施例中,用户数据可以在至少一个用户数据流或“用户信号”中提供,其可以是来自数据源的用户数据的馈送或流。例如,用户信号可来自智能手机、家庭传感器设备、GPS设备(例如,位置坐标)、车辆传感器设备、可穿戴设备、用户设备、陀螺仪传感器、加速度计传感器、日历服务、电子邮件帐户、信用卡帐户或其他数据源。在一些实施例中,用户数据收集部件210连续地、周期性地或根据需要接收或访问数据。
用户数据(特别是以事件数据和/或位置数据的形式)可由用户数据收集部件210从与用户相关联的一个或多个传感器和/或计算设备接收。虽然预期用户数据被传感器或未示出的其他部件处理以供用户数据收集部件210解释,但本文所述的实施例不将用户数据限制为已处理数据,并且可以包括原始数据。
用户活动监控器280通常负责监控可被目标管理器292、例程管理器290和/或推理引擎230使用的用户数据或信息。由用户活动监控器280生成的数据的任何组合都可被用户活动监控器280存储为与用户关联的用户配置文件/活动数据。例如,用于相对于用户确定、识别和/或跟踪事件的数据可存储为例程跟踪数据,诸如例程跟踪数据253。此外或代替地,用于相对于用户确定、识别和/或跟踪任务和目标的数据可存储为任务跟踪数据,诸如任务跟踪数据252。该信息包括与一个或多个用户相关联的特征(有时在本文称为“变量”,诸如例程或事件(例如,任务)特征或变量)或其他信息。
作为概述,事件检测器281从用户活动中检测事件,诸如可与例程和/或目标相关联的事件。如本文所使用的,与目标相关联的事件被称为任务。个人特征标识器286负责识别和可选地确定与用户相关联的用户特征(或变量),其可用于识别或解释(例如,事件、例程、目标或任务的)模式以及与用户对应的其他信息。这些各种部件中的任何部件可使用通过上下文信息提取器284从用户数据、事件相关实体(例如,文档、文件和与事件相关的其他数据对象)和/或检测到的事件中提取的上下文信息,以支持使用这些部件进行的确定。
用户活动监控器280的实施例可以从被监控的用户数据中确定与特定用户相关联的用户活动。如前所述,由用户活动监控器280确定的用户活动信息可包括的用户活动信息来自与用户相关联的多个用户设备和/或来自与用户相关联的基于云的服务(诸如电子邮件、日历、社交媒体或类似信息源)。用户活动监控器280可确定当前或接近实时的用户活动信息,并且还可以确定历史用户活动信息,在一些实施例中历史用户活动信息可基于收集用户活动随时间变化的观察结果、访问可存储在用户配置文件250中的过去活动的用户日志(诸如浏览历史)来确定。此外,在一些实施例中,如前所述,用户活动监控器280可以从其他类似用户(即,众包)确定用户活动(可包括历史活动)。例如,可以分析事件期间的来自与用户同地的其他用户的用户数据,以确定事件特征。
在一些实施例中,由用户活动监控器280确定的信息可以提供给推理引擎230,包括关于事件、这些事件的上下文特征和历史特征(例如,基于可以从用户配置文件250的记录中提供的历史观察)的信息,诸如用户的个人功能。
如上所述,在一些实施例中,从用户活动监控器280确定的关于用户活动的用户数据和/或信息(包括事件相关信息、任务相关信息和目标相关信息)被存储在用户配置文件(诸如用户配置文件250)中。这可以包括使用个人特征标识器286、事件检测器281和/或上下文信息提取器284提取的例程跟踪数据253和任务跟踪数据252。
在一个实施例中,用户活动监控器280包括一个或多个应用程序或服务,它们分析经由用户使用的一个或多个用户设备和/或与用户相关联的基于云的服务检测到的信息,以确定与项目相关的活动信息和相关上下文信息。关于与用户相关联的用户设备的信息可从经由用户数据收集部件210提供的用户数据中确定,并且可以提供给用户活动监控器280、推理引擎230、例程管理器290、目标管理器292或目标管理系统200的其他部件。在用户活动监控器280的一些实施中,可以通过检测和分析用户设备的特性(诸如设备硬件、如操作系统(OS)的软件、网络相关特性、经由设备访问的用户帐户以及类似特性)来识别用户设备。例如,可使用许多操作系统的功能来确定关于用户设备的信息,以提供关于硬件、OS版本、网络连接信息、已安装应用程序等的信息。
用户活动监控器280可至少部分地进行操作以检测与一个或多个用户相关联的事件和/或目标相关的用户配置文件活动。用户活动监控器280或其子部件的一些实施例可以确定与用户配置文件相关联的每个设备的设备名称或标识(设备ID)。关于与用户配置文件相关联的被识别的用户设备的该信息可存储在与用户配置文件相关联的用户配置文件中,诸如存储在用户配置文件250的标识信息251中。在一个实施例中,可以对用户设备进行轮询、询问或以其他方式分析,以确定关于这些设备的信息。该信息可用于确定设备的标签或标识(例如,设备ID),使得可以通过用户活动监控器280从用户配置文件数据中辨认与设备交互的用户配置文件。在一些实施例中,用户配置文件可以声明或注册设备,诸如通过经由设备登录帐户、在设备上安装应用程序、连接到对设备进行询问的在线服务或者以其他方式向应用程序或服务提供关于设备的信息。在一些实施例中,登录与用户配置文件相关联的帐户(诸如帐户或网络护照、电子邮件帐户、社交网络等)的设备被识别和确定为与用户配置文件相关联。这些账户中的一个或多个中的信息可提供用户数据,用户活动监控器280可用于确定个人特征、上下文信息和事件。
在一些实施例中,用户活动监控器280、其一个或多个子部件、例程管理器290、目标管理器292或目标管理系统200的其他部件(诸如推理引擎230)可从接收的用户数据中确定解释数据。解释性数据对应于目标管理系统200的部件或用户活动监控器280的子部件用于解释用户数据的数据。例如,解释性数据可用于为原始用户数据提供其他上下文,这可以支持由部件或子部件作出的确定或推理(例如,推理用户活动、事件、上下文或个人特征等)。此外,可以预期目标管理系统200的用户活动监控器280、其子部件和其他部件的实施例可使用用户数据和/或结合解释数据的用户数据,用于执行本文所述子部件的目标。此外,尽管本文描述了用户活动监控器280及其子部件如何识别用户配置文件活动信息的几个示例,但用户配置文件活动识别和用户配置文件活动监控的许多变型在本公开的多个实施例中也是可能的。
作为用户活动监控器280的概述,上下文信息提取器284负责确定与用户配置文件活动相关的上下文信息,个人特征标识器286负责识别和可选地确定与用户相关联的用户特征(或变量),其可用于识别或解释与用户对应的模式、任务和其他信息,并且事件检测器281被配置为从用户活动数据中检测和/或识别事件。
如上所提到的,上下文信息提取器284通常负责确定与用户配置文件活动相关(例如,由用户活动监控器280检测)的上下文信息,诸如与例程、目标、任务和/或事件(例如,被检测关键字)相关联的上下文、特征或变量、相关信息、其他用户相关活动,并且进一步负责将确定的上下文信息与相关事件和/或例程关联。在一些实施例中,上下文信息提取器284可将确定的上下文信息与相关事件、任务、目标或例程相关联,并且还可以将上下文信息与关联的事件、任务、目标或例程记录在一起。可代替地,关联或日志记录可由另一服务执行。例如,上下文信息提取器284的一些实施例向个人特征标识器286提供确定的上下文信息,个人特征标识器286可使用该信息来确定用户配置文件的个人特征,并且事件检测器281可使用该信息来标识识别或检测事件。
上下文信息提取器284的一些实施例确定与事件相关的上下文信息(例如,在会议和/或事件期间出现或被邀请参加会议和/或事件的人员或联系人,诸如与事件有关的群邮件的接收人、邀请或安排的会议)或者事件发生、正在发生或将发生或将要发生的位置或地点。例如但不限制的是,这可以包括诸如位置数据的上下文特征;其可以表示为与事件关联的位置戳;关于位置的上下文信息,诸如场馆信息(例如,这是用户的办公室位置、家庭位置、会议室、图书馆、学校、餐厅、移动影院等)时间、日和/或日期,其可以表示为与事件相关联的时间戳,并且在一些实施例中可包括黄页标识符(YPID)信息;事件的持续时间,其可不同于安排的持续时间(即,事件比安排时间长或短);事件之前和/或之后的其他用户事件或活动,关于事件的其他信息,诸如与活动相关联的实体(例如,可邀请、参与、计划中涉及或以其他方式涉及的场馆、参与者、联系人、人员、对象等),通过传感器在与用户相关联的用户设备上检测到的与事件同时或基本同时发生的信息(例如,位置、运动信息、在线活动、用户设备交互或在健身跟踪用户设备上检测到的生理信息),或者与可检测事件相关的任何其他信息,其可用于确定与用户相关的事件和例程相关联的用户相关活动的模式。
在使用与用户设备相关的上下文信息的实施例中,可通过检测和分析用户设备的特性(诸如设备硬件、诸如操作系统(OS)的软件)、网络相关特性、经由设备(例如,在线日历)访问的用户账户和类似特性来识别用户设备。例如,如前所述,可以使用许多操作系统的功能来确定有关用户设备的信息,以提供有关硬件、OS版本、网络连接信息、已安装应用程序等的信息。在一些实施例中,可以为与用户配置文件相关联的每个设备确定设备名称或标识(设备ID)。关于与用户配置文件相关联的已识别用户设备的信息可存储在与用户配置文件相关联的用户配置文件中,诸如存储在用户配置文件250的标识信息251中。
在一个实施例中,用户设备可以被轮询、询问或以其他方式分析,以确定关于设备的上下文信息。在一些实施中,上下文信息提取器284可以从用户数据收集部件210接收用户数据,在一些情况下解析数据,并且从数据中识别和提取上下文特征或变量。上下文变量可存储为与事件(例如,会议事件)、任务、目标和/或例程相关联的上下文信息的相关集合,并且可以存储在用户配置文件中,诸如例程跟踪数据253或任务跟踪数据252中。
个人特征标识器286通常负责识别和可选地确定与用户相关联的个人特征(或变量),它们可用于识别或解释模式以及与用户对应的其他信息。个人特征标识器286可以从事件、例程、任务、目标和/或用户数据中的显式信息中识别个人特征。这些用户特征可以表征、描述或限定特定用户。在一些情况下,个人特征标识器286利用上下文信息提取器284来确定任务、事件、例程或目标的用户或个人上下文。
作为一个示例,如下面将要进一步详细描述的,事件可以从用户数据中提取,并且用于将用户与一个或多个例程和/或目标关联。在分析特定事件时,系统可利用先前的语义知识来确定事件与一个或多个例程、任务和/或目标相关联的概率。这可以包括将特定事件与从先前与例程或目标(例如,任务)相关联的事件得到的信息进行比较。应该理解,这一概念可应用于事件的各种特性,包括搜索查询、位置、地点、联系人等。
个人特征的示例包括关于使用该设备的用户的信息;识别用户的信息,诸如登录密码、可由健身跟踪器或生物特征扫描仪提供的生物特征数据;和/或使用该设备的用户的特性,其可用于区分由多个用户共享的设备上的用户。其他示例包括语音识别信息、人口统计信息、经常出现的地点或位置、搜索历史、搜索查询、已知兴趣(例如主题、概念、题目)、组织标题、组织内的层次结构以及由此派生的信息。这些个人特征中的一个或多个可从推理引擎230对用户分析的事件、任务、目标和例程的模式中得到。
个人特征的进一步示例包括从请求或通信(例如,实体)中提取的信息,诸如时间/日期、安排持续时间、被邀请人、重要性、响应(例如,接受、暂时接受、拒绝)替代时间/日期/位置/与会者/其他实体特征的建议或提议、实体主题、实体相关通信中的文件附件或链接,其可以包括附件或链接的内容、与文件附件或链接相关联的元数据(例如,作者、版本号、日期、URL或网站相关信息);实体是否是重复出现的(例如,会议);来自相关实体或计划实体的特征(其中实体是系列的一部分,诸如重复出现的会议或事件);与位置相关的特征,诸如事件的位置、事件期间用户设备的位置(其可以指示用户是否在场、不在场或远程参与)、与位置相关的场地信息或其他位置相关信息;时间相关特征,诸如事件的日期、星期或月份的时间、事件的持续时间或相关持续时间信息,诸如用户使用与事件相关联的应用程序多久或用户访问事件多久;与用户设备相关的特征(其在一些实施例中可用于识别事件的用户出席(物理或远程)、参与和/或涉及事件),诸如设备类型(例如台式电脑、平板电脑、手机、健身跟踪器、心率检测器等)、硬件属性或配置文件、OS或固件特性、设备ID或型号、网络相关信息(例如,mac地址、网络名称、IP地址、域、工作组、关于在本地网络上检测到的其他设备的信息、路由器信息、代理或VPN信息、其他网络连接信息)、关于用户设备的位置/运动/方向相关信息、诸如电池电量的电源信息、用户访问/触摸信息;使用相关特征,诸如访问的文件、应用程序使用(其也可以包括应用程序数据、应用程序内使用、同时运行的应用程序)、网络使用信息、在线活动(例如,主题相关搜索、浏览的网站、与实体相关的社交网络活动、包括社交媒体帖子的发送或接收的通信、访问或以其他方式使用的用户帐户(诸如设备帐户、OS级帐户或在线/云服务相关帐户活动(诸如帐户或网络护照)、在线存储帐户、电子邮件、日历或社交网络帐户等)、可检测到与事件同时或接近事件时间的特征或者可检测或感测并用于确定用户的例程相关活动模式的任何其他特征。在一些实施例中,事件逻辑295(结合事件检测器281进行了描述)可用于从例程相关或目标相关信息中识别特定特征。
事件检测器281通常负责确定(或识别)已发生、将发生或正在发生的事件。如本文所使用的,事件对应于经由一个或多个计算设备可检测的一个或多个限定的用户活动。事件检测器281的一些实施例可监控用户数据,用于对应于用户活动(例如,个人特征)的例程相关、目标相关或事件相关的特征或变量,诸如接收到的通信(例如,项目请求或日历相关通信),启动或访问的应用程序的指示,访问、修改、复制的文件等,导航到的网站,下载和展示或播放的在线内容,用户位置或位置更改(例如,用户位于会议室或已将位置更改为会议室)或类似用户活动。
每个事件可具有对应的事件定义,其包括一个或多个条件以及可选的一个或多个跟踪变量。事件检测器281利用条件来确定事件的实例是否已经发生并应该被检测到。特别地,事件检测器281可基于确定满足与事件对应的条件来检测事件的实例已经发生。
在检测事件的实例时,可设置各种条件中的任何条件。在一些方面中,事件的一个或多个条件可通过具有与事件检测器281可用的事件相对应的用户数据来满足。例如,与用户的血压读数相对应的事件的实例可以可用于监控用户血压的例程的血压读数为条件。
事件可以任选地包括一个或多个事件变量。事件变量包括可以由事件检测器281从用户数据中生成的数据填充的数据字段,如由用户数据收集部件210所提供的。具有一个或多个事件变量的事件也可以称为可变事件。其他事件可以是静态的,并且可以称为静态事件。
在一些情况下,事件的条件可使用一个或多个事件变量。例如,事件的一个或多个条件可以对用户数据为事件的一个或多个事件变量提供的值设置一个或多个约束。例如,事件可要求血压读数在发生的事件的指定范围内。
跟踪变量是由事件检测器281针对事件的相应检测实例分配和/或记录的事件变量。特别地,与被跟踪变量相对应的值可以与用户关联地被存储,例如,在例程跟踪数据253和/或任务跟踪数据252中与用户配置文件250中的相应一个相对应。
跟踪变量可对应于各种用户数据中的任一种,这些用户数据的示例已在上文中描述并且包括传感器数据或读数,它们可以被一个或多个传感器感测(例如,与用户设备有关的位置、地点、运动/方向、用户访问/触摸、连接/断开充电器、用户设备上的用户活动的信息,或可被一个或多个传感器、诸如移动设备上的传感器感测的其他信息),并且包括GPS坐标样本等。将理解,跟踪变量的值可与一个或多个事件和/或例程相关联,并且不需要是事件或例程特定的。跟踪变量的示例是对应于事件的对应实例的时间戳。时间戳可指示事件实例相对于事件的其他实例以及对应例程的一个或多个其他事件的可选实例的相对顺序或序列。
作为又一示例,事件可包括到达商店的用户。一个跟踪变量可对应于到达位置,诸如到达位置名称。在检测事件时,事件检测器281可基于包括用户手机(例如,图1中的用户设备102a)上包括GPS数据的用户数据推理满足到达,其中到达位置名称被识别为商店并且基于解释数据而被存储,解释数据包括用于将用户电话的坐标与相应位置名相关联的地图数据。因此,例如,对于一个实例,到达位置名称可以是“Walmart”,而对于另一实例,到达位置名称可以是“Target”。然而,将理解,事件的检测和跟踪中的粒度级别可有所变化。因此,作为示例,到达位置名称不需要是跟踪变量。此外,潜在跟踪变量的其他示例或者更普遍的事件变量包括到达时间(例如,时间戳)、到达位置坐标、行驶速度、行驶里程、车辆名称等。
此外,事件检测器281的一些实施例使用上下文信息提取器284从用户数据中提取关于事件的信息或者将上下文信息与事件关联,其可以包括当前活动、历史活动和/或相关信息,诸如上下文信息。可代替地或者此外,在一些实施例中,事件检测器281使用上下文信息提取器284来确定和提取与一个或多个事件、任务、目标或例程相关的上下文信息。
可由上下文信息提取器284提取并由用户活动监控器280的部件、诸如事件检测器281使用的事件相关活动信息的示例可包括描述应用程序使用、在线活动、搜索、调用、使用持续时间、应用程序数据的信息(例如,项目请求、电子邮件、消息、帖子、用户配置文件状态、通知),或者可经由一个或多个用户设备或计算设备检测的几乎任何其他与用户相关的数据,包括用户与用户设备的交互、与用户相关联的云服务相关活动(例如,日历或安排服务)、在线账户活动(例如,电子邮件和社交网络)和社交网络活动。
与目标管理系统200的其他部件一样,由事件检测器281确定的提取事件信息可提供给用户活动监控器280、推理引擎230、展示部件220、例程管理器290、目标管理器292、个人特征标识器286的其他子部件或者目标管理系统200的其他部件。此外,提取的事件信息可存储在与用户相关联的用户配置文件中,诸如用户配置文件250。在一些实施例中,事件检测器281或用户活动监控器280(或其其他子部件)对检测到的事件相关信息执行合并。例如,重叠信息可以被合并和复制,或者消除冗余信息。
在一些实施例中,可以解释用户数据以确定事件已经发生、正在发生或将要发生。例如,在一些实施例中,事件检测器281使用事件逻辑295来识别事件相关活动,诸如目标相关活动,事件逻辑可以包括规则、条件、关联、分类模型或其他标准。例如,在一个实施例中,事件逻辑295可包括将事件标准(例如,上述条件)与用户数据进行比较,以确定事件已经发生。
在一些实施例中,事件检测器281在用户的每个用户设备上运行或与之相关联。事件检测器281可包括对用户设备的各个方面进行轮询或分析的功能,这可以包括可经由用户设备访问的在线或云服务,以确定与项目相关的特征,诸如传感器输出、运行的应用程序(在一些情况下为应用程序的内容)、网络通信、与用户相关的在线/云活动、和/或可经由用户设备检测的其他用户动作,包括动作序列。
在一些情况下,事件检测器281基于确定事件已经发生或将要发生来识别事件,这种确定可以基于置信度分数或评估事件是否已经发生或将要发生的其他度量。在其他情况下,事件在用户数据中可以是显式的。显式事件的示例包括日历项,诸如会议等。这些事件中的一个或多个可对应于具有由一个或多个用户明确限定或定义的内容的数据对象(例如,电子邮件的消息正文、会议的开始和结束时间)。
在一些情况下,事件检测器281被例程管理器290用于识别事件与例程关联。此外或代替地,目标管理器292可使用事件检测器281来识别事件与目标相关联。例如,任务跟踪器272可使用事件检测器281来识别任务。这可以包括识别与目标相关联的事件和/或将事件分类为目标的任务。此外或代替地,例程跟踪器216可识别与例程相关联的事件和/或将事件分类为一个或多个例程的一部分。
在一些实施例中,事件检测器281使用上下文信息或与一个或多个例程和/或目标相关联的特征来识别事件。例如,与涉及会议的用户活动相关联的上下文信息可包括实体信息和特性,诸如会议期间访问的电子邮件、会议或会议期间用户的位置、会议期间拍摄的照片、参加会议或被邀请参加会议的用户或联系人、会议期间访问或创建的文件、会议期间提供的搜索查询(诸如会议期间执行的文件搜索)或会议期间执行的Web搜索等。使用由相关历史事件的模式形成的例程或目标的特性,事件检测器281可确定该活动对应于例程相关事件。
在一些实施例中,事件的识别和/或分类(例如,作为目标和/或例程的一部分)可基于特征匹配或确定特征的相似性,这可以使用统计分类处理来执行。因此,事件逻辑295可包括模式识别分类器、模糊逻辑、神经网络、有限状态机、支持向量机、逻辑回归、集群或机器学习技术、类似的统计分类处理或者从用户数据中识别事件的这些处理的组合。因此,事件逻辑295可根据用于识别事件的机制采用许多不同的形式,并且可存储在存储器225中。例如,事件逻辑295可包括用于训练用于评估用户数据以确定事件何时发生的神经网络的训练数据。此外,事件逻辑295可指定事件特征或用户活动的类型,诸如与事件相关联的特定用户设备交互、访问日程表或日历、访问与例程相关联的材料(例如,会议中的议程或演示材料)、组合或响应安排请求通信、确认通知、导航到网站或启动应用程序。在一些实施例中,用户相关活动的系列或序列可映射到事件,使得在确定用户数据指示用户相关活动的系列或序列已经发生或已经由用户执行时可以检测到事件。
在各种实施中,事件检测器281识别与一个或多个电子邮件应用程序相关的事件。这可以是由电子邮件应用程序生成或访问、或者与电子邮件应用程序相关联的信息(例如,实体),基于电子邮件应用程序引用或关联的信息,和/或基于电子邮件应用程序使用或与电子邮件应用程序相关联的信息。例如,事件检测器281可分析使用企业应用程序发送或接收的电子邮件和/或会议邀请、电子邮件或会议的附件以及会议本身。上下文信息提取器284可用于从会议邀请或其他日历项的各种元数据中提取该活动的上下文,诸如与用户活动关联的附件、标题、主题行、位置、已确认参与者、已邀请参与者等。其他信息源包括来自电子邮件应用程序和/或与用户关联的全局联系人列表的联系人,该全局联系人列表可以包括跨用户设备跟踪和/或集成到操作系统软件中的联系人列表。
继续图2的目标管理系统200,推理引擎230通常负责为目标管理系统200的任何部件(诸如例程管理器290、目标管理器292和用户活动监控器280)生成推理。这可以包括基于从用户活动监控器280中确定的各种信息来确定模式。例如,在一些情况下,推理引擎230可用于确定由事件形成的一个或多个模式,并且将一个或多个模式与用户的一个或多个例程或目标相关联。作为又一示例,推理引擎230可使用事件形成的一个或多个模式来确定用户上下文231或者事件、对象、任务和/或例程的语义信息。该信息可对应于和/或用于由个人特征标识器286和/或其他上下文信息识别的个人特征。
推理引擎230在一些情况下可接收事件、事件相关实体、上下文信息、个人特征、用户活动数据和/或其他用户数据,其中至少一些数据是使用用户活动监控器280或其子部件提供的,以形成推理。
例程管理器290包括例程跟踪器216和非常规检测器218。例程跟踪器216被配置为从用户数据识别一个或多个用户的例程和/或将事件与例程关联。在一些情况下,用于用户的例程的识别是可适应的,使得基于用户行为随时间的变化(例如,行为模式的变化),为用户识别的例程将来可能不再为用户识别。非常规检测器218被配置为检测或识别用户与其例程之间的差异。在各种实施中,非常规检测器218可用于检测或识别事件,这些事件指示用户将偏离、正在偏离或已经偏离一个或多个例程。在一些情况下,用户的例程可随时间基于用户行为的变化而调整,以便更准确地检测和识别与这些例程的偏离(例如,适应用户行为模式的变化)。
尽管例程跟踪器216和非常规检测器218被示为单独的部件,但部件之间至少可以共享一些功能。例如,例程或事件的识别可以隐含在非常规检测器218的功能中。例如,在确定是否应该识别非常规事件时,非常规检测器218可考虑由被检测事件形成的模式(指示例程)的强度。因此,将理解,并非本文所述的所有实施都需要例程跟踪器216和非常规检测器218。
例程跟踪器216和非常规检测器218可使用来自一个或多个数据源的累积用户数据和/或解释数据,诸如由用户活动监控器280(例如,上下文信息和个人特征)和推理引擎230提供的任何信息。使用该信息,例程管理器290可将用户的事件与例程相关联,稍后将进一步详细介绍。
例程管理器290可基于与例程对应的例程模型229选择性地识别和跟踪例程,并识别非常规事件。例程模型229对应于相应例程的表现。如稍后进一步详细描述的,每个例程模型包括组成相应例程的一个或多个事件(例如,事件例程跟踪器216与例程关联)并且通过由事件形成的一个或多个模式限定。
针对各种事件和/或其事件变量中的任何一个,例程管理器290可搜索和/或分析用户数据。通过将用户数据与一个或多个事件和/或其事件变量相匹配,例程管理器290可检测事件并从用于用户的检测事件的模式中识别例程,以及从相对于用户的例程的事件中识别和检测潜在或实际的偏离。
本文描述了例程跟踪器216如何进行这种确定的一些示例。然而,例程识别和跟踪的许多变型是可能的。在一些情况下,在确定用户是否执行例程时,例程跟踪器216可确定例程的置信度得分和/或例程的一个或多个事件的对应置信度得分。在例程的置信度得分超过阈值的情况下,例程跟踪器216可确定用户实践该例程。类似地,在事件的置信度得分超过阈值的情况下,例程跟踪器216可确定用户实践该事件。
置信度得分可对应于出现在与例程相关联的被检测事件的跟踪变量的一个或多个值的分布中的相应模型模式的相对强度。置信度得分可受到各种因素的影响,诸如模式的方差、形成模式的检测事件的年龄和形成模式的检测事件的数量。在一些情况下,在分配给例程的所有事件的置信度得分超过它们对应阈值的情况下,例程跟踪器216可确定用户实践该例程。应注意,上述阈值的任何组合可彼此相同或不同。
事件和/或例程的置信度得分可通过使用一个或多个置信度度量来确定。在一些实施中,置信度度量基于检测到的事件和/或例程随时间的重复或迭代而增加置信度得分,如被检测事件形成的模式所示。置信度得分可基于一次到所有重复或迭代的失效时间进行折扣。例如,基于相应用户行为或过去很久发生的相应用户行为,过去较高的置信度得分在当前可能很低。作为另一示例,迭代可随着时间的推移而逐渐从考虑和/或存储中淘汰。通过这种方式,例程追踪器216可适应不断变化的生活方式,其中用户可随着时间的推移改变他们的行为。
如上所述,任何用于跟踪和识别用户的例程的各种数据都可存储为例程跟踪数据253。在一些情况下,例程跟踪数据253可选地包括识别例程并且在例程与一个或多个用户之间分配的条目。条目可以存储或以其他方式指示与例程相关联的各种数据中的任何数据,诸如例程的事件和/或与这些事件的跟踪变量相关联的值。例程跟踪数据253还可以包括与一个或多个用户相对于事件和/或例程的置信度得分。如上所述,随着时间的推移,例程管理器290可以更新例程跟踪数据253,因为用户数据被周期性地分析并且置信度得分被确定和/或更新。
非常规检测器218可利用例程跟踪数据253基于确定用户将偏离、正在偏离或已偏离用户的一个或多个例程来检测或识别用户非常规。在这方面,非常规检测器218可识别一个或多个非常规事件。在一些情况下,事件对于例程来说是非常规的,确定相对于例程,用户将偏离或已经偏离该事件。在这方面,偏离可对应于违背用于例程的所检测事件的模型模式。模式可使用统计模型、诸如参数模型或其他合适的模型进行建模,并可以进行分析以识别与其的差异。
将理解,在一些情况下,与预测偏离事件(其中用户数据表明用户可能违反了例程的一些条件或模式)相对,基于与事件的实际偏离(其中用户数据表明用户已经违反了例程的一些条件或模式),事件可被识别为非常规的。非常规事件的示例可以是用户在通常不执行动作的时候执行一个或多个用户动作(例如,事件)。在一些情况下,用户可在通常不打电话的时候打电话。在其他情况下,用户可能在用户通常不发送电子邮件的深夜发送电子邮件。然而,不需要基于时间差异将事件识别为非常规的。一个示例是基于孩子(即,用户)与他们通常不在线交流的人交流来识别非常规事件。另一示例是基于孩子(即,用户)访问通常孩子不访问的网站来识别非常规事件。又一示例是基于用户驾驶行为中的非常规模式(例如,不稳定行为)识别非常规事件(例如,由用户驾驶的车辆和/或用户的手机中的一个或多个陀螺仪、加速度计和/或其他传感器数据指示)。又一示例可以是用户计划在他们通常工作的时间段内休假(例如,非工作相关的例程)。
因此,将理解,基于与例程的偏离的预测,可将事件识别为非常规。通过这种方式,可以前瞻性地识别非常规事件。偏离的预测可基于解释数据、检测到的事件以及对未来用户动作或事件的一个或多个推理。例如,用户通常每周二会去公园,但基于天气预报显示周二很有可能下雨,非常规检测器218可预测用户下周二可能不会在公园内行走(即,参与该例程事件)。另一示例是,在周一在公园中识别或检测到用户的情况下,非常规检测器218预测用户可能不会在下周二访问公园,因为用户的模式表明用户通常每周只访问或在公园中行走一次。
与事件实际偏离的一个示例是,用户错过了通常每星期三参加的会议。预测偏离的示例是,在检测到用户实际上错过会议之前,预测用户将错过会议。例如,非常规检测器218可基于确定用户将在会议期间度假和出城来推理用户将错过会议。可基于一个或多个检测到的事件和/或用户数据、诸如日历计划数据来确定。
基于确定用户不满足、将不满足或可能不满足例程的事件的预测实例,可以将事件识别为非常规。例如,非常规检测器218可分析历史检测事件的一个或多个跟踪变量的值的模式,以预测一个或多个跟踪变量的值范围,从而限定事件的预测实例。在确定用户没有、将不会或可能不满足预测值范围的情况下,可检测到非常规事件。例如,非常规检测器218可分析用户过去外出午餐的时间分布(例如,使用时间戳值),并预测用户将在中午12:00到下午1:00之间外出午餐。基于表明用户自到达工作地点后没有离开的检测事件,在下午1:00之后,非常规检测器218可基于实际偏离将事件识别为非常规。作为另一示例,基于检测事件表明用户已安排在上午11:30召开午餐会,非常规检测器218可基于预测偏离将事件识别为非常规。
如上所述,检测事件的模式可用于识别与用户对应的例程和/或检测与例程的偏离。例如,非常规检测器218可基于检测到与例程事件的一个或多个跟踪变量的模型模式的偏离来检测非常规事件。
下面描述示例性方法,其中事件的每个实例都具有形成模式的跟踪变量的相应历史值,并且例程管理器290可评估模式的跟踪变量的分布。在下面的示例中,事件的跟踪变量是对应于事件实例的时间戳。然而,将理解,从概念上讲,以下可应用于不同类型的历史值。
一系列时间戳(即,给定跟踪变量的值)可表示为并映射到一周中的小时和天的二维直方图。二维直方图可包括对事件实例的求和,诸如:/>
该直方图可用于确定导数直方图。例如,周直方图中的一天可对应于:
hj=∑ihij。
天直方图中的一个小时可对应于:
hi=∑jhij。
作为进一步的示例,一个或多个直方图可以以下形式针对确定特定语义时间分辨率来确定:
hiC=∑j∈Chij。
可使用各种语义时间分辨率中的任一个,诸如工作日和周末或者早上、下午和夜晚。后者的示例是C∈{morning,afternoon,night},morning(早上)={9,10,11},afternoon(下午)={12,13,14,15,16},并且night(夜晚)={21,22,23,24}。
用于表现事件的附加数据结构可包括每个日历周中具有至少一个时间戳的不同时间戳的数量,可以表现为:
例如,可表示在可用时间戳的第二个三周周期期间的不同时间戳的数量。N(j)可用于表示跟踪数据中可用的j周时间戳的数量,例如,N(3)表示时间戳中可用的三周周期的数量。
例程管理器290可生成置信度分数,其量化特定模式由跟踪变量中的历史值形成的确定性水平。在以下示例中,使用贝叶斯统计应用上述原则。
在一些实施中,可以为由不同分辨率的时间间隔索引的对应跟踪变量生成置信度得分。对于时间戳,示例包括星期二上午9点、工作日早上和星期三下午。通过应用Dirchlet多项式模型并计算每个周期直方图的后验预测分布,可计算出置信度得分。这样做,可以通过以下等式给出对特定直方图中的每个文件(bin)的预测:
其中,K表示文件数,α0为编码先验知识强度的参数,并且i*=arg maxixi。然后,模式预测是对应于i*的直方图的文件,并且其置信度由给出。例如,考虑一个直方图,其中morning=3,afternoon=4且evening(晚上)=3。使用α0=10,模式预测为下午,并且置信度得分为/>根据各种实施,更多的观察使得置信度得分增加,表明对预测的置信度增加。例如,考虑一个直方图,其中morning=3000,afternoon=4000且evening=3000。使用类似的计算,置信度得分为/>
此外,在一些实施中,可以为由周期和多个时间戳索引的对应跟踪变量生成置信度得分。示例包括每周1次访问以及每2周3次访问。使用高斯后验,可以为每个周期分辨率的模式生成置信度得分,表示为j。这可以通过使用以下公式来完成:
其中/>
在前面的描述中,σ2是样本方差,并且和μ0是公式的参数。通过在时间戳预测的数量周围取固定的时间间隔并计算累积密度,可以将置信度得分计算为:
其中/>
例如,考虑以下观察: 且/>N(1)=4且N(2)=2。使用μ0=1和/>μ(1)=4.075并且conf1=0.25。此外,μ(2)=10.31并且conf2=0.99。在前面的示例中,尽管两周的周期可用的时间戳较少,但用户信号的方差减少会增加模式存在的置信度。
在确定模式存在或模式的置信度得分足够高(例如,超过阈值)时,例程管理器290可使用这些值中的一个或多个识别例程对应于用户、和/或识别例程或事件的一个或多个实例或预测实例是否偏离例程。
例如,非常规检测器218可确定例程的跟踪变量值是否偏离或将要偏离该模式(例如,基于一个或多个检测事件)。例如,非常规检测器218可确定例程的对应事件的预测实例的跟踪变量的值偏离或将要偏离其预期值。这些期望值可以由跟踪变量的历史值相对于例程的模式形成,并代表用户的例程的特性特征。在一些情况下,在值大于或等于模式时间戳的大约一个标准偏差的情况下,可以检测到偏离。在一些情况下,在值大于或等于模式时间戳的大约两个标准偏差的情况下,可以检测到偏离。标准偏差可通过将函数映射到诸如高斯函数或钟形曲线的模式的时间戳来建立。
作为进一步的示例,例程跟踪器216可确定用户正在实践例程的事件(例如,检测事件是例程的一部分或与例程一致),其中一个或多个跟踪变量的一个或多个置信度得分超过阈值。在这方面,基于例程跟踪器216识别事件的一个或多个跟踪变量的历史值中的一个或多个模式,例程的事件可被确定为被实践。
在相对于用户跟踪例程和事件时,例程管理器290可以使用位置预测,这可以使用上述使用时间间隔索引的直方图模型来实施。使用当前时间,直方图模型可应用于每个已知位置。这些位置中的每个位置都可产生估计在当前时间访问该位置的一部分的概率:
量P(time=t|Place=p)是上面描述的直方图模型。P(Place=p)是位于位置p的先验概率。时间t的分辨率从窄到宽释放(例如,星期二上午9点=>工作日早上),直到上述量超过阈值,在这种情况下,我们的模型预测位置p。
此外,在相对于用户跟踪例程时,例程管理器290可使用下一位置预测,其可以使用上述通过周期和多个时间戳(即,样本)索引的直方图模型来实施。使用此模型,可以使用以下公式计算使用先前访问次数的特定周访问的期望值:
每周的预期访问次数是使用具有最高置信度的时段计算的。
目标管理器292包括任务确定器270、任务跟踪器272、目标标识器274和任务委托器276。目标管理器292通常负责管理相对于用户的目标。任务确定器270被配置为确定目标的任务,诸如通过编译任务列表或每个目标的任务清单。任务跟踪器272被配置为相对于目标和用户跟踪任务,诸如基于检测任务已经、正在或将由用户完成。目标标识器274被配置为将目标与用户关联。任务委托器276被配置为将任务委托给应用程序或服务,诸如机器人程序。
如上所述,任务确定器270确定目标的任务,诸如通过编译任务列表或每个目标的任务清单来实现。在各种实施中,任务确定器270使用机器学习确定目标的任务列表。机器学习可使用来自许多用户的众包数据来学习哪些事件表征目标。这些事件可用作目标任务列表中的任务。例如,任务确定其270可以确定,当找寻住宅时,用户通常参与事件,包括访问房屋列表网站、搜索房地产经纪人、获得贷款以及搜索关于特定地区学校的信息。因此,这些事件中的一个或多个可用作任务列表中的任务。
在一些实施中,任务确定器270基于从用户活动数据中提取事件的模式来确定目标的任务列表。可以使用任何合适的机器学习方法(包括无监督或监督的学习方法)从用户活动数据中提取模式,以学习目标的任务列表。这样做,模式提取和分析中使用的因素和特征可包括任何组合用户上下文(例如,个人特征)和事件上下文。例如,可基于这些各种因素的任意组合从用户活动数据中提取模式。此外或代替地,因素的任何组合可用于过滤用户活动数据(例如,事件),并且可以对于模式分析过滤后的用户活动数据。作为进一步的选择,因素的任何组合可用于确定模式的子模式和/或进一步过滤从中得到的模式或信息。可以从用户活动数据的任何各种模式中提取任务列表。
在一些方法中,任务确定器270将模式确定为用户活动数据(例如,事件)的集群。从集群或用户活动数据的组中,任务确定器270可以在用户当中共同学习用于特定目标的事件、活动和/或事件上下文。任务确定器270可从用户活动数据的集群中生成目标的任务列表。例如,在一些情况下,每个任务可对应于一个或多个相应的集群。此外,可以将集群合并到任务列表中,或者基于与集群相关联的置信度得分(或者更一般的模式)生成任务。例如,集群的置信度得分可对应于集群的凝聚力得分或者模式的其他验证度量。
在一些情况下,为了将集群并入到目标的任务列表中,任务确定器270分析一个或多个集群。基于集群的置信度得分,任务确定器270可利用事件检测器281检测与集群相关联的事件。这些事件中的一个或多个可作为任务并入到任务列表中。例如,事件检测器281可以从集群的用户活动数据和/或与集群的用户活动数据相关联的用户活动数据(例如,事件)中提取或检测事件。例如,任务确定器270可基于与集群的用户活动数据暂时相关的数据来确定与集群的用户活动数据关联的用户活动数据。在一些实施例中,该时间关系可对应于表现发生在与集群相关联的时间之前的用户行为的用户活动数据(例如,在集群事件之前的事件或事件的集群)。如上所述,任务可从这些事件中的至少一些来确定。
例如,使用个人用户上下文,任务确定器270可以在追求目标时确定与类似用户对应的用户活动模式。这允许针对用户个性化任务列表。例如,可以使用利用个人特征标识器286确定的各种个人用户上下文中的任何一个。在一些情况下,至少一些用户上下文可限定特定的目标。例如,用户上下文可以是用户正在找寻房子,其本身可对应于事件并使用事件检测器281确定,其中任务对应于事件的子事件。任务确定器270可分析来自具有该公共目标的用户的用户活动数据,以创建任务列表。例如,一旦用户活动监控器280足够确信用户正在追求或已经追求或已经完成了目标(例如,事件或具有特定上下文的事件),任务确定器270可识别与追求目标相对应的事件。例如,这可以包括基于追求目标的开始时间和/或结束时间(例如,在时间范围内)来确定事件,以便进行模式分析和提取(事件可进一步通过其他因素和特征过滤)。
作为个人用户上下文的一个示例,计划到外国旅行的用户可以参与不同于用户国内旅行的事件。例如,外国游客可获得流感疫苗,获得签证并且研究外国手机计划等,而国内游客通常不会这样做。通过按此用户上下文过滤数据,可以为用户生成相关的任务列表。因此,不需要浪费计算资源来帮助用户或以其他方式向用户提供非相关任务的内容。
注意,用户的任务列表可从更全面的任务列表中生成。例如,可以为与用户上下文相关的任务过滤更一般的旅行计划任务列表,以将其包括在用户的任务列表中。另外要注意,用户上下文可用于为任务列表中的任务提供事件变量。在上面的示例中,事件变量可以是旅行的目的地国家或位置。
例如,使用事件上下文,任务确定器270可以在追求目标时确定与类似事件对应的用户活动的模式。这允许任务列表将类似事件聚合为任务。例如,可以采用使用上下文信息提取器284确定的各种事件上下文中的任一个。事件上下文的一个示例可以包括事件的时间特征。事件的时间特征可对应于事件的时间戳,诸如上文所描述的。例如,任务确定器270可确定由它们的时间戳和/或基于使用它们的时间戳确定的特性所形成的事件中的模式。例如,这可以包括确定事件的时间戳是否相对于一个或多个其他时间、持续时间、事件和/或事件类型满足一些基于时间的标准。上面描述了事件上下文的其他示例。
作为上述示例,任务确定器270可以为一个或多个用户、诸如正在休假的用户识别个人用户上下文,并且使用事件的时间特征和其他用户活动数据和信号,回放记录的用户数据以确定和识别预定个人用户上下文的模式。例如,模式可指示计划休假的用户通常在休假相关时间之前预订航班、预订酒店、更新签证、安排医疗注射、安排宠物保姆等。因此,相应的任务可包括在为休假准备的任务列表中。应理解,附加的个人用户上下文可限定任务列表中的任务。
在一些实施例中,由任务确定器270用于确定任务列表的因素或特征包括用户活动数据是否与在现在、过去或将会非常规的用户相对应,和/或是否与偏离一个或多个特定例程或例程的类别/类型的用户相对应。如上所述,这些确定可使用非常规检测器218进行,并且可以对应于个人用户上下文和/或事件上下文的类型。
例如,非常规相关的用户活动数据表现用户可能不习惯的情况,因此与这些情况相关的任务列表和/或目标可能对用户最有用。使任务列表基于已识别的非常规相关用户活动数据,可以显著缩小任务确定器270分析的用户活动数据,从而节省大量的计算资源。例如,代替总是分析所有用户,可以缩小用户和时间的这种列表,用于应用到机器学习算法。例如,基于确定或识别用户活动数据对应于非常规事件和/或对应于非常规用户(例如,类似上下文中的用户),可以对事件进行集群或以其他方式分析用户活动数据的模式。
与常规用户相比,非常规用户可以更彻底地追求目标。特别地,在例程中,用户可跳过完成目标的步骤(例如,任务)。因此,可以识别更全面的任务列表,和/或模式在该数据集中可以更强。作为前述内容的示例,假设目标对应于旅行的计划。计划旅行的任务可包括获得签证。然而,经常飞行的用户可能已经具有签证,这可以减少在聚集的用户活动数据中发生该事件的频率。通过将重点放在该目标对其而言是非常规的用户上,更多比例的用户将获得签证,使得在数据中形成更强的模式。
如上所述,基于类似上下文中的用户将追求任务的条件概率,任务可包括在任务列表中。每个任务可与条件概率相关联,条件概率对应于用户活动数据中的相应事件的模式的强度。此外,任何数量的任务可包括在特定目标的任务列表中(例如,基于任务的条件概率)。例如,基于任务的条件概率超过阈值,任务可包括在任务列表中。然而,在一些情况下,至少一些高概率任务(例如,超过第二阈值)可以从包括在任务列表中的考虑中滤掉。这可能发生在模式分析之前和/或在为任务确定条件概率之后。可以基于相对于其他目标确定任务不表征目标(例如,通过比较多个目标的模式)来过滤这些高概率任务中的至少一些。例如,不管目标是什么,用户可加油或吃晚饭。
此外,使用条件概率,任务列表可随着时间而更新。例如,条件概率可随时间变化,因为用户在追求目标时想要执行的事件发生变化。因此,预期机器学习是动态的,使得任务列表中包括的任务可以根据条件概率的变化而变化。此外,通过使用更现代的用户活动数据更新机器学习模型,可以检测新任务并将其包括在任务列表中。作为示例,假设目标包括用户到加拿大旅行。例如,任务确定器270可检测到用户最近正在获取和填写新法律要求的旅行表,并将此任务包括在任务列表中。
任务确定器270可进一步从与任务对应的用户活动数据中提取任务的任务特性。例如,任务的任务特性可以根据对应于任务的事件(例如,集群的事件)生成。这可以包括事件和事件变量的事件上下文。例如,使用与用户搜索婚礼地点相关联的事件变量,任务确定器270可确定用户在进行该事件时访问的最常见网站的集合(集合涉及一个或多个网站),并将这些网站指派为任务特征。作为另一示例,对于与用户获得旅行保险相对应的事件,任务确定器270可以确定最常见的旅行保险计划的集合,并将这些计划指派为任务特性。每个任务可具有任何数量的任务特性,它们可以从用户活动数据的模式信息中得到并且可以随着这些特性在更现代的用户活动数据中的变化而随时间更新。例如,任务列表、条件概率、置信度得分、任务特性等可以存储为图2的任务模型227。
任务跟踪器272被配置为跟踪相对于目标和用户的任务。为此,任务跟踪器272可利用事件检测器281,其可以将任务检测为事件。对于特定用户,任务跟踪器272可确定用户已从事、将从事和/或正在从事的任务,并将该信息存储在用户配置文件的任务跟踪数据252中。任务跟踪器272可跟踪同一任务的多个实例,并且每个实例可以与时间戳和其他任务上下文(例如,作为事件)关联存储。对于每个目标,任务追踪器272可保持目标的任务的状态记录。例如,这可以包括用户已完成的任务、用户正在从事的任务和/或用户可能要从事的任务。任务跟踪器272可进一步跟踪同一目标的多个实例,并且可以确定哪个任务与哪个实例相关联。例如,任务列表中在同一任务列表中的另一任务之前已完成很长时间的任务可以不与目标的相同实例相关联。任务跟踪器272可确定和检测这些任务是否与目标的相同实例相关联。
目标标识器274被配置为将目标与用户相关联。在其他潜在因素中,用户是否与目标相关联可基于与用户和/或用户个人特征关联的任务或事件。例如,基于确定任务跟踪器272已与用户相关联的任务在目标的任务列表中,目标标识器274可以将用户与目标相关联。这可以基于由任务跟踪器272保持的任务的状态记录。在一些情况下,这包括目标标识器274使用目标的状态记录确定用户是否已经、将要或正在从事与目标相关联的任务(例如,在其任务列表上)。
此外,目标标识器274可基于确定使用个人特征标识器286确定的用户个人用户特征对应于一个或多个目标、目标的任务或其他特性或属性来将用户与目标相关联。如上所述,这些特性可以从与目标相关联的用户活动数据的模式中得到。目标的属性通常指的是分派给目标的特性(例如,基于模式的)或非基于模式的参数。例如,频繁旅行的用户更有可能与具有与旅行相关属性的目标关联。
使用上述因素的任何组合,目标标识器274可确定量化用户是否正在追求或将要追求特定目标的置信度得分。例如,基于目标标识器274确定目标和/或目标属性的任务列表中的用户和任务之间的更多和/或更强的关联性,该置信度得分可增加。例如,当事件检测器281在任务列表中检测到附加任务时,置信度得分可增加(例如,当用户执行和/或完成附加任务时)。此外,在目标属性对应于非常规用户的情况下,目标标识器274可基于非常规检测器218确定用户是、曾经是或将要是非常规的而增加置信度得分。在目标的置信度得分足够高时,目标标识器274可确定用户与追求目标相关。
应该理解,用户可与在给定时间追求任何数量的目标相关联。此外,基于确定目标的任务列表中的每个任务已完成、用户不再追求目标和/或用户已完成目标,目标标识器274可确定用户不再与追求特定目标(例如,目标的实例)相关联。在与目标的实例相关联的状态记录中指示该信息用于目标实例。
上文描述了用于将用户与目标相关联的方法。基于这些确定,可以使用展示部件220生成和/或向用户展示内容,以帮助用户获得与用户追求目标相关的信息。基于这些确定,展示部件220可生成内容、提供内容和/或避免相对于用户进行上述操作。如上所述,内容的示例包括向用户识别目标和/或目标的一个或多个任务的信息、目标的已完成和/或未完成任务的指示、基于一个或多个任务和/或目标(例如,从中推理)确定的信息、和/或帮助用户完成目标的一个或多个任务的信息。
基于目标标识器274是否已将用户与目标相关联,可通过展示部件220预先为用户生成提供给用户的至少一些内容。例如,在用户从事任务之前,可以生成、准备或(例如,向与用户关联的一个或多个用户设备)提供与目标的任务列表中的一个或多个任务对应的内容。当检测到与任务相关联的一些触发条件被满足时,展示部件220可使预先准备好的内容展示给用户。使用这种方法,可以快速地将内容提供给用户,以满足潜在的时间紧迫的内容交付要求。此外,内容的准备可通过计算系统安排,从而允许在整个系统中更可预测或更均匀的计算负载。
例如,在任务对应于用户在度假时搜索餐厅的情况下,展示部件220可在用户到达目的地之前准备餐厅信息列表,以便在到达目的地时立即可用。例如,这可以基于展示部件220识别与任务列表中的前一任务(诸如用户前往机场或登机)相对应的用户活动数据来触发该操作。因此,应该理解,在一些情况下,任务列表上的任务可与列表上的一个或多个其他任务具有一些时间排序。这种排序可基于用于在任务列表上生成任务并用作目标属性的事件的时间戳而得到(推理出)。
例如,可以在用户设备102a和102b-102n的任何组合上展示使用展示部件220展示的内容。在这种情况下,展示部件220可采用相对于户配置文件250存储的各种数据中的任何数据以及其他数据。展示部件220可确定何时和/或如何向用户展示内容。展示部件220可进一步确定向用户提供或显示什么内容。在一些实施例中,展示部件220包括在计算设备(诸如图6中描述的计算设备600,包括用户设备,诸如移动计算设备)上或云中操作的一个或多个应用程序或服务。
在一些实施例中,内容包括基于目标的任务列表中的一个或多个任务的一个或多个建议、提议或相关信息。例如,该内容可与任务列表中的一个或多个任务相关,其中任务跟踪程序272确定用户尚未完成和/或从事。在任务跟踪器272指示用户是否完成和/或从事一个或多个特定任务的实施中,计算资源可以保留,因为展示部件220可以避免生成和/或向用户提供不相关的信息。使用本公开的实施,可以提供内容以帮助用户完成包括为一聚会寻找餐饮服务商的任务,并且基于任务追踪器272确定用户已经或可能已经执行了任务(例如,使用针对任务确定/推理的置信度得分),可以不提供与包括为该聚会寻找场所的任务相关的其他内容。在展示部件220不向用户展示内容的情况下,在增强计算机与人交互的同时,保存处理、电源和与内容展示相关的其他资源。
在一些实施中,使用一个或多个内容模板或内容卡确定展示给用户的内容。内容卡可包括一个或多个静态内容字段和/或一个或多个动态内容字段。静态内容字段对应的内容字段具有在每次展示内容卡时展示的对应内容。动态内容字段对应的内容字段具有在内容卡的展示之间有所不同的对应内容。
在一些情况下,基于与用户相关联的目标任务列表中的一个或多个任务、任务的任务属性和/或目标的目标属性,展示部件220可选择一个或多个内容卡和/或修改所选内容卡的一个或多个动态内容字段。一个或多个动态内容字段的相应内容可以被修改以供展示、从展示中删除或以其他方式确定。此外,一个或多个内容卡可以被修改以供展示、从展示中移除、避免展示或从展示中移除,或者使用这些确定来选择用于展示。
在一些情况下,展示部件220的实例或其一个或多个部分被合并到一个或多个服务(例如,应用程序、处理、程序、线程等)中,它们可以在用户设备和/或与目标管理系统200的各种组成的任何组合不同的系统上运行。例如,一个或多个服务可接收由目标管理系统200生成和/或存储的信息的任何组合。示例包括一个或多个置信度得分、上下文信息、建议动作、跟踪变量方差得分、跟踪变量、个人特征等。服务可以在用户设备上运行,并且可以从服务器接收此类信息。作为另一示例,服务可以在与提供这种信息的服务器不同的系统中的服务器上运行。作为又一示例,可以从与服务运行在同一设备(例如,用户设备)上的一个或多个其他服务接收信息。例如,可以将图2中的各种部件中的一个或所有合并到同一设备中,在一些情况下,这有利于安全、隐私和/或其他原因。
在一些情况下,例如基于对信息的订阅,一个至所有信息可以从服务器推送到服务。作为另一种选择,可通过服务查询一个至所有信息。例如,信息可存储在数据库中的一个或多个条目中。服务、诸如应用程序可查询该信息。
因此,在一些情况下,例程管理器290和/或目标管理系统200的其他组成部分可作为云服务提供给应用程序或服务。在这方面,用户设备上的应用程序可以选择性地结合有应用程序编程接口(API),用于与云服务通信并且用于提供展示部件220的至少一些功能。通过这种方式,可以为应用程序提供公共框架,用于基于与他们的例程偏离来为用户定制内容。
在一些实施中,服务包括一个或多个机器人程序,例如机器人程序275。机器人程序可涉及根据提供的指令执行特定任务的计算机程序。在各种实施中,任务委托器276被配置为将目标任务列表中的一个或多个任务委托给一个或多个机器人程序。例如,基于将目标与用户相关联,任务委托器276可用于执行与从事任务相对应的一个或多个动作,诸如确定或获取与任务相对应的内容。例如,这可以包括为旅行预订酒店、汇总和获取描述事件的可用地点的信息和/或与任务对应的其他动作。任务委托器276可以在一些情况下向机器人程序提供信息,机器人程序使用这些信息执行动作。该信息可基于或对应于与目标、任务属性和/或目标属性相关联的用户的个人特征或用户上下文。例如,机器人程序可将该信息提交给服务或网站,诸如通过自动填写用于生成内容的一个或多个表单字段。
在一些实施中,任务委托器276被配置为搜索机器人程序275,以确定委托来自任务列表的一任务的一个或多个特定机器人程序。机器人程序可在目标管理系统200上注册,并且可以包括元数据、关键字和/或任务委托器276使用用于搜索的其他描述性信息。搜索可以是机器人程序,其能够生成与任务列表中的一个或多个特定任务的性能相对应的内容。描述性信息可以指示机器人程序能够生成或提供的一种或多种内容类型,因此可以用作搜索标准。
此外或代替地,任务委托器276可生成一个或多个机器人程序来执行一个或多个任务。例如,机器人程序可实施为脚本,其至少部分地根据从用户活动数据提取的一个或多个用户动作而生成。例如,任务委托器276可识别一些用户动作,这些用户动作与用户访问一个或多个特定网站、将特定类型的信息输入这些网站的各个字段、提交信息以及由用户执行的与任务相关的其他步骤相对应。这些用户动作可以从被确定要执行任务的多个用户聚合,并且被编译为用于代表用户执行任务的至少一部分的脚本。生成的机器人程序(例如,专门构建的)可注册在存储器225中,使其可用于为多个用户执行任务以及在目标和任务的多个实例中执行任务。在一些实施中,机器人程序至少生成上面描述的关于展示部件220的展示给用户的一些内容。
在各种实施中,基于任务生成的机器人程序和/或内容可基于任务特性。例如,如上所述,任务确定器270可聚合来自多个用户的信息,以对频繁访问的网站和/或与任务相关联的服务进行排序。任务的内容可使用从用户数据提取的一个或多个网站和/或服务生成。使用这种方法,机器人程序可以从用户访问的与任务相关的前五个旅行保险网站检索报价,并将这些报价提供给与任务相关的用户。作为另一示例,机器人程序可自动访问API,以在用户度假最常去的特定区域中的十家餐厅之一预订(例如,基于用户的个人特征,诸如美食偏好)。
现在参考图3,图3是示出根据公开实施例的用于基于目标帮助用户的方法300的流程图。方法300和本文所述其他方法的每一块包括可使用硬件、固件和/或软件的任何组合执行的计算处理。例如,各种功能可通过执行存储在存储器中的指令的处理器执行。方法还可以体现为存储在计算机存储介质上的计算机可用指令。例如,方法可以由独立的应用程序、服务或托管服务(独立的或与另一托管服务组合)、或者另一产品的插件提供。
在块380中,方法300包括接收第一用户活动数据集合。在块382中,方法300包括从第一用户活动数据集合提取目标的任务列表。在块384中,方法300包括基于第二用户活动数据集合,确定任务列表中用户未完成的任务。在块386中,方法300包括向与用户相关联的用户设备提供相对于任务的内容。
现在参考图4,图4是示出根据公开实施例的用于帮助用户的方法400的流程图。在块480中,方法400包括从用户活动数据确定事件集合。在块482中,方法400包括基于个人用户上下文对事件集合进行分组。在块484中,该方法包括从事件组生成任务。在块486中,方法400包括将任务并入到目标的任务列表中。在块488中,方法400包括基于确定用户的至少一个事件对应于第二个任务,提供对应于第一个任务的内容。
现在参考图5,图5是示出根据公开实施例的用于基于目标帮助用户的方法500的流程图。在块580中,方法500包括接收第一用户活动数据集合。在块582中,方法500包括从第一用户活动数据集合中提取目标的任务列表。在块584中,方法500包括基于确定第二用户活动数据集合指示用户对目标的追求,将任务列表中的至少一些任务的执行委托给机器人程序。
已经描述了本发明的实施,下面描述可实施本发明实施例的示例性操作环境来提供本公开各个方面的一般上下文。首先特别参考图6,示出用于实施本发明实施例的示例性操作环境并且一般表示为计算设备600。计算设备600只是合适计算环境的一个示例,并不用于对本发明的使用范围或功能提出任何限制。计算设备600也不应解释为与所示部件的任何一个或组合相关的任何依赖或要求。
本发明可在计算机代码或机器可使用指令(包括计算机可执行指令,诸如程序模块)的一般上下文中描述,由计算机或其他机器(诸如个人数据助理或其他手持设备)执行。通常,程序模块包括例程、程序、对象、部件、数据结构等,涉及执行特定任务或实施特定抽象数据类型的代码。本发明可以在各种系统配置中实施,包括手持设备、消费电子产品、通用计算机、更专业的计算设备等。本发明还可以在分布式计算环境中实施,其中任务由通过通信网络链接的远程处理设备执行。
参考图6,计算设备600包括直接或间接地耦合以下设备的总线610:存储器612、一个或多个处理器614、一个或多个展示部件616、输入/输出(I/O)端口618、输入/输出部件620和示例性电源622。总线610表示一个或多个总线(诸如地址总线、数据总线或它们的组合)。尽管为了清楚,图6中的各个块都用线条表示,但实际上,对各个部件的描绘并不那么清晰,并且隐含地,线条将更准确地是灰色和模糊的。例如,可以将展示部件、诸如显示设备认为是I/O部件。此外,处理器具有存储器。发明人认识到这是本领域的性质,并重申图6的示意图仅说明可用于与本发明的一个或多个实施例联合使用的示例性计算设备。在如“工作站”、“服务器”、“笔记本电脑”、“手持设备”等类别之间没有区别,他们都包括在图6的范围内并且参考“计算设备”。
计算设备600通常包括各种计算机可读介质。计算机可读介质可以是计算设备600可访问的任何可用介质,并且包括易失性和非易失性介质、可移动和不可移动介质。例如但不限制,计算机可读介质可包括计算机存储介质和通信介。计算机存储介质包括易失性和非易失性、可移动和不可移动介质,这些介质以用于存储诸如计算机可读指令、数据结构、程序模块或其他数据的信息的任何方法或技术实施。计算机存储介质包括但不限于RAM、ROM、EEPROM、闪存或其他存储技术、CD-ROM、数字通用盘(DVD)或其他光盘存储、磁盒、磁带、磁盘存储或其他磁存储设备、或可用于存储期望信息并且可由计算设备600访问的任何其他介质。计算机存储介质本身不包括信号。通信介质通常具体化计算机可读指令、数据结构、程序模块或调制数据信号中的其他数据,诸如载波或其他传输机制,并且包括任何信息传输介质。术语“调制数据信号”是指其一种信号,其一个或多个特性以在信号中编码的这种方式而被设置或改变。例如但不限制,通信介质包括诸如有线网络或直接有线连接的有线介质,并且包括诸如声音、RF、红外的无线介质和其他无线介质。上述任何组合也应包括在计算机可读介质的范围内。
存储器612包括易失性和/或非易失性存储器形式的计算机存储介质。存储器可以是可移动的、不可移动的或它们的组合。示例性的硬件设备包括固态存储器、硬盘驱动器、光盘驱动器等。计算设备600包括一个或多个处理器,其从各种实体、诸如存储器612或I/O部件620读取数据。展示部件616向用户或其他设备展示数据指示。示例性的展示部件包括显示设备、扬声器、打印部件、振动部件等。
I/O端口618允许计算设备600逻辑地耦合至,包括I/O部件620的其他设备,其中一些I/O部件可以是内置的。示例性的部件包括麦克风、操纵杆、游戏板、卫星碟、扫描仪、打印机、无线设备等。I/O部件620可提供自然用户界面(NUI),其处理用户生成的空中手势、声音或其他生理输入。在一些情况下,输入可传输至适当的网络元件进行进一步处理。NUI可实施下列识别的任何组合:语音识别、触摸和触笔识别、面部识别、生物识别、屏幕上和屏幕附近的手势识别、空中手势、头部和眼睛跟踪以及与计算设备600上的显示相关联的触摸识别。计算设备600可配备深度相机,诸如立体相机系统、红外相机系统、RGB相机系统以及这些系统的组合,用于手势检测和识别。此外,计算设备600可配备能够检测运动的加速度计或陀螺仪。加速度计或陀螺仪的输出可提供给计算设备600的显示器,以展示沉浸式增强现实或虚拟现实。
可以理解,本公开的实施提供了用于针对非常规实践调整内容的方法。本发明已就具体实施例进行了描述,这些具体实施例在所有方面都是说明性而非限制性的。本发明领域人员明白替代实施方案,而不偏离其范围。
从上述内容可以看出,本发明是很好地适于获得上述所有目的和目标以及系统和方法明显和固有的其他优点的发明。将理解,特定特征和子组合具有实用性,并且可以在不参考其他特征和子组合的情况下使用。这通过权利要求预期并包括在权利要求的范围内。
Claims (20)
1.一种计算机实施系统,包括:
一个或多个处理器;以及
一个或多个计算机可读存储介质,在所述计算机可读存储介质上存储有指令,其中,当被所述一个或多个处理器执行时,所述指令使得所述一个或多个处理器执行方法,所述方法包括:
接收与追求目标的多个用户相对应的第一用户活动数据集合,其中所述第一用户活动数据集合基于第一传感器集合而被收集;
基于所述第一用户活动数据集合中形成的模式,从所述第一用户活动数据集合提取针对所述目标的任务列表;
接收与用户相对应的第二用户活动数据集合,所述第二用户活动数据集合包括用户设备和应用数据,其中所述第二用户活动数据集合基于与所述用户相关联的用户设备的第二传感器集合而被收集;确定所述第二用户活动数据集合指示所述用户追求所述目标;
基于确定所述第二用户活动数据集合指示所述用户追求所述目标,基于将所述第二用户活动数据集合与指示追求所述目标的所述任务相比较来确定与所述第一用户活动数据集合相关联的所述任务列表中的任务未被所述用户完成;以及
其中所述任务基于所述第二用户活动数据集合中标识的推断信息被确定为未完成;
其中所述多个用户的所述第一用户活动数据集合和所述用户的所述第二用户活动数据集合都与追求所述目标相关联;以及
基于确定任务未被完成,向与所述用户相关联的所述用户设备提供对应于所述任务的内容。
2.根据权利要求1所述的计算机实施系统,还包括:
基于确定至少所述任务未被所述用户完成,将所述任务的执行委托给机器人程序;以及
基于所述委托,从所述机器人程序接收所述内容,其中所接收的所述内容用于向所述用户设备提供所述内容。
3.根据权利要求1所述的计算机实施系统,还包括:所述任务列表中的所述任务被确定为由所述用户未完成之前:
基于所述用户的个人用户上下文,过滤所述任务列表;以及
其中基于过滤后的所述任务列表,确定所述任务列表中的所述任务由所述用户未完成。
4.根据权利要求1所述的计算机实施系统,其中提取所述任务列表包括:
将通过例程的事件形成的一个或多个例程的模式与所述第一用户活动数据集合相比较;
基于所述模式的比较,确定所述第一用户活动数据集合的子集与所述多个用户中的至少一些用户与所述一个或多个例程的偏离相对应;以及
基于确定所述子集与所述多个用户中的至少一些用户与所述一个或多个例程的偏离相对应,从所述子集中生成所述任务列表。
5.根据权利要求1所述的计算机实施系统,其中提取所述任务列表包括:
从所述第一用户活动数据集合确定所述多个用户的第一事件集合;
基于与所述第一事件集合相关联的上下文信息,将所述第一事件集合分组;
从通过将所述第一事件集合分组而形成的事件分组中生成任务;以及
将所述任务并入到所述任务列表中。
6.根据权利要求1所述的计算机实施系统,其中,确定所述第二用户活动数据集合指示所述用户追求所述目标是基于:所述用户的一个或多个个人特征和与所述目标相关联的一个或多个属性之间的相似性。
7.根据权利要求1所述的计算机实施系统,还包括:基于新的用户活动数据集合来更新所述任务列表,其中,所述任务基于与所述新的用户活动数据集合中的所述任务相对应的事件的模式的强度而被添加至列表。
8.根据权利要求1所述的计算机实施系统,还包括:
从所述第一用户活动数据集合确定与所述任务相关联的频繁事件变量集合;以及
基于确定的所述频繁事件变量集合生成所述内容。
9.根据权利要求1所述的计算机实施系统,还包括:
从所述第一用户活动数据集合中提取由所述多个用户访问的网站集合,以基于所述第一用户活动数据集合中的所述网站的频率来执行与所述任务相关联的事件;以及
使用从确定的所述网站集合提供的信息来生成所述内容。
10.一种计算机实施方法,包括:
从基于传感器集合而收集的第一用户活动数据集合确定多个用户的事件集合;
基于与第一事件集合相关联的所述多个用户的个人用户上下文,将所述事件集合分组,其中所述个人用户上下文基于与所述多个用户中的用户相对应的第二用户活动数据集合而被确定,其中所述第二用户活动数据集合基于与所述用户相关联的用户设备的第二传感器集合而被收集;
生成任务,每个任务都对应于通过将所述事件集合分组而形成的至少一组事件,其中所述任务基于所述第二用户活动数据集合中标识的推断信息被确定为未完成;
将所述任务并入到与所述个人用户上下文相对应的目标的任务列表中;以及
基于确定所述任务未完成,基于确定所述用户的至少一个事件对应于所述任务列表中的第二任务,向与所述用户相关联的所述用户设备提供对应于所述任务列表中的第一任务的内容。
11.根据权利要求10所述的计算机实施方法,其中,所述个人用户上下文对应于非常规用户,并且将所述事件集合分组包括:
确定所述事件集合的子集中的每个事件同与所述多个用户的对应用户相关联的一个或多个例程偏离;以及
基于确定所述事件集合的所述子集中的每个事件同所述一个或多个例程偏离,从所述子集中生成所述任务列表。
12.根据权利要求10所述的计算机实施方法,其中,将所述任务并入到所述任务列表中包括:向所述任务列表中的至少一些任务分配时间排序,所述时间排序从所述事件集合中的事件的时间戳所得到。
13.根据权利要求10所述的计算机实施方法,其中,将所述任务并入到所述任务列表中是基于与至少一组事件相关联的置信度得分。
14.根据权利要求10所述的计算机实施方法,还包括:
将所述任务中的所述第一任务的执行委托给机器人程序;以及
基于所述委托从所述机器人程序接收所述内容,其接收到的所述内容用于向所述用户设备提供所述内容。
15.根据权利要求10所述的计算机实施方法,还包括:根据从所述用户活动数据提取的一个或多个用户动作,生成能够执行所述任务中的所述第一任务中的至少一些的机器人程序,所述内容由所述机器人程序生成。
16.根据权利要求10所述的计算机实施方法,还包括向机器人程序提供与所述用户的至少一个个人特征相对应的信息,其中所述机器人程序基于所述信息生成所述内容中的至少一些内容。
17.一种或多种计算机存储介质,其存储计算机可用指令,所述计算机可用指令在由一个或多个计算设备使用时使所述一个或多个计算设备执行一种方法,所述方法包括:
接收第一用户活动数据集合,所述第一用户活动数据集合与追求目标的多个用户相对应,其中所述第一用户活动数据集合基于第一传感器集合而被收集;
基于所述第一用户活动数据集合中形成的模式,从所述第一用户活动数据集合提取所述目标的任务列表;以及
基于确定第二用户活动数据集合指示用户追求所述目标,将所述任务列表的未完成任务的执行委托给机器人程序,其中所述第二用户活动数据集合基于与所述用户相关联的用户设备的第二传感器集合而被收集,其中所述多个用户的所述第一用户活动数据集合和所述用户的所述第二用户活动数据集合都与追求所述目标相关联。
18.根据权利要求17所述的一种或多种计算机存储介质,其中将所述未完成任务的执行委托给所述机器人程序包括:基于所述机器人程序的描述性信息,从注册的多个机器人程序中选择所述机器人程序,所述描述性信息指示所述机器人程序能够提供的与所述未完成任务相对应的一种或多种类型的内容。
19.根据权利要求17所述的一种或多种计算机存储介质,其中将所述未完成任务的执行委托给所述机器人程序包括:向所述机器人程序提供与所述用户的至少一个个人特征相对应的信息,其中所述机器人程序基于所述信息执行一个或多个动作。
20.根据权利要求17所述的一种或多种计算机存储介质,其中所述委托基于:基于与所述机器人程序相关联的元数据、关键字或机器人数据来选择机器人程序。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/464,154 | 2017-03-20 | ||
US15/464,154 US11361266B2 (en) | 2017-03-20 | 2017-03-20 | User objective assistance technologies |
PCT/US2018/022082 WO2018175137A1 (en) | 2017-03-20 | 2018-03-13 | User objective assistance technologies |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110476176A CN110476176A (zh) | 2019-11-19 |
CN110476176B true CN110476176B (zh) | 2023-12-26 |
Family
ID=61832599
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201880019431.9A Active CN110476176B (zh) | 2017-03-20 | 2018-03-13 | 用户目标辅助技术 |
Country Status (4)
Country | Link |
---|---|
US (2) | US11361266B2 (zh) |
EP (1) | EP3602441A1 (zh) |
CN (1) | CN110476176B (zh) |
WO (1) | WO2018175137A1 (zh) |
Families Citing this family (38)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8977255B2 (en) | 2007-04-03 | 2015-03-10 | Apple Inc. | Method and system for operating a multi-function portable electronic device using voice-activation |
BR112015018905B1 (pt) | 2013-02-07 | 2022-02-22 | Apple Inc | Método de operação de recurso de ativação por voz, mídia de armazenamento legível por computador e dispositivo eletrônico |
US9338493B2 (en) | 2014-06-30 | 2016-05-10 | Apple Inc. | Intelligent automated assistant for TV user interactions |
US10747498B2 (en) | 2015-09-08 | 2020-08-18 | Apple Inc. | Zero latency digital assistant |
US10691473B2 (en) | 2015-11-06 | 2020-06-23 | Apple Inc. | Intelligent automated assistant in a messaging environment |
US11062222B2 (en) * | 2017-03-28 | 2021-07-13 | International Business Machines Corporation | Cross-user dashboard behavior analysis and dashboard recommendations |
US11037674B2 (en) | 2017-03-28 | 2021-06-15 | International Business Machines Corporation | Dashboard usage tracking and generation of dashboard recommendations |
DK179496B1 (en) | 2017-05-12 | 2019-01-15 | Apple Inc. | USER-SPECIFIC Acoustic Models |
DK201770427A1 (en) | 2017-05-12 | 2018-12-20 | Apple Inc. | LOW-LATENCY INTELLIGENT AUTOMATED ASSISTANT |
US11257038B2 (en) * | 2017-06-02 | 2022-02-22 | Apple Inc. | Event extraction systems and methods |
US10616354B2 (en) * | 2017-07-14 | 2020-04-07 | Facebook, Inc. | Event tracking for messaging platform |
US10884769B2 (en) * | 2018-02-17 | 2021-01-05 | Adobe Inc. | Photo-editing application recommendations |
US11036811B2 (en) | 2018-03-16 | 2021-06-15 | Adobe Inc. | Categorical data transformation and clustering for machine learning using data repository systems |
US11550299B2 (en) | 2020-02-03 | 2023-01-10 | Strong Force TX Portfolio 2018, LLC | Automated robotic process selection and configuration |
US11544782B2 (en) | 2018-05-06 | 2023-01-03 | Strong Force TX Portfolio 2018, LLC | System and method of a smart contract and distributed ledger platform with blockchain custody service |
SG11202010731VA (en) | 2018-05-06 | 2020-11-27 | Strong Force Tx Portfolio 2018 Llc | Methods and systems for improving machines and systems that automate execution of distributed ledger and other transactions in spot and forward markets for energy, compute, storage and other resources |
US11669914B2 (en) | 2018-05-06 | 2023-06-06 | Strong Force TX Portfolio 2018, LLC | Adaptive intelligence and shared infrastructure lending transaction enablement platform responsive to crowd sourced information |
US10928918B2 (en) | 2018-05-07 | 2021-02-23 | Apple Inc. | Raise to speak |
US11076039B2 (en) * | 2018-06-03 | 2021-07-27 | Apple Inc. | Accelerated task performance |
US11301819B2 (en) * | 2018-09-07 | 2022-04-12 | International Business Machines Corporation | Opportunistic multi-party reminders based on sensory data |
US11462215B2 (en) | 2018-09-28 | 2022-10-04 | Apple Inc. | Multi-modal inputs for voice commands |
US11537359B2 (en) | 2019-03-28 | 2022-12-27 | Microsoft Technology Licensing, Llc | Self-learning digital assistant |
US11468890B2 (en) | 2019-06-01 | 2022-10-11 | Apple Inc. | Methods and user interfaces for voice-based control of electronic devices |
WO2021084518A1 (en) * | 2019-11-01 | 2021-05-06 | Vitality Group International, Inc. | System and method for monitoring productivity behaviours of an individual towards personalized productivity goals |
US10911546B1 (en) * | 2019-12-30 | 2021-02-02 | Automation Anywhere, Inc. | Robotic process automation with automated user login for multiple terminal server hosted user sessions |
US11982993B2 (en) | 2020-02-03 | 2024-05-14 | Strong Force TX Portfolio 2018, LLC | AI solution selection for an automated robotic process |
US11562128B2 (en) * | 2020-03-30 | 2023-01-24 | Bank Of America Corporation | Data extraction system for targeted data dissection |
US11061543B1 (en) | 2020-05-11 | 2021-07-13 | Apple Inc. | Providing relevant data items based on context |
US11490204B2 (en) | 2020-07-20 | 2022-11-01 | Apple Inc. | Multi-device audio adjustment coordination |
US11438683B2 (en) | 2020-07-21 | 2022-09-06 | Apple Inc. | User identification using headphones |
WO2022067004A1 (en) * | 2020-09-24 | 2022-03-31 | The Trustee Of The Thomas J. Watson Foundation, Dba Watson Foundation, A Delaware Charitable Trust, Comprising J.P. Morgan Trust Company Of Delaware, A Delaware Corporation | Personal, professional, cultural (ppc) insight system |
US11909823B2 (en) * | 2020-12-17 | 2024-02-20 | Samsung Electronics Co., Ltd. | Method and apparatus for generating alternative routines in an IoT environment |
US11750537B2 (en) * | 2021-03-01 | 2023-09-05 | SoLit 101, LLC | Evaluating digital media proficiency utilizing digital media bots within a social networking platform |
US20230022816A1 (en) * | 2021-07-23 | 2023-01-26 | Fresenius Medical Care Holdings Inc. | New language transfer |
US11404062B1 (en) * | 2021-07-26 | 2022-08-02 | LifePod Solutions, Inc. | Systems and methods for managing voice environments and voice routines |
CN114330837A (zh) * | 2021-12-08 | 2022-04-12 | 腾讯科技(深圳)有限公司 | 对象处理方法、装置、计算机设备和存储介质 |
US20230186189A1 (en) * | 2021-12-14 | 2023-06-15 | Microsoft Technology Licensing, Llc | Method and system for intelligently managing facilities |
CN117494952A (zh) * | 2023-12-29 | 2024-02-02 | 国网山东省电力公司电力科学研究院 | 一种面向新型电力系统的机组低碳运行调度方法 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103620605A (zh) * | 2011-06-29 | 2014-03-05 | 微软公司 | 将搜索历史组织成合集 |
Family Cites Families (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040006593A1 (en) | 2002-06-14 | 2004-01-08 | Vogler Hartmut K. | Multidimensional approach to context-awareness |
US20070022380A1 (en) | 2005-07-20 | 2007-01-25 | Microsoft Corporation | Context aware task page |
US7873153B2 (en) | 2006-03-29 | 2011-01-18 | Microsoft Corporation | Priority task list |
US9299039B1 (en) | 2006-08-23 | 2016-03-29 | A9.Com, Inc. | Managing task lists utilizing integrated information requests |
US8108206B2 (en) | 2008-07-01 | 2012-01-31 | International Business Machines Corporation | Auto-generated to-do list |
US8386929B2 (en) * | 2010-06-22 | 2013-02-26 | Microsoft Corporation | Personal assistant for task utilization |
US20140173602A1 (en) | 2012-12-14 | 2014-06-19 | Microsoft Corporation | Matching Opportunity to Context |
US8639552B1 (en) | 2013-01-24 | 2014-01-28 | Broadvision, Inc. | Systems and methods for creating and sharing tasks |
US9444860B1 (en) | 2014-01-31 | 2016-09-13 | Intuit Inc. | Method and system for data driven checklist sharing |
US10586216B2 (en) * | 2014-03-13 | 2020-03-10 | Microsoft Technology Licensing, Llc | User work schedule identification |
US9846527B2 (en) * | 2014-04-30 | 2017-12-19 | Microsoft Technology Licensing, Llc | Task management from within a data feed |
US9911088B2 (en) | 2014-05-01 | 2018-03-06 | Microsoft Technology Licensing, Llc | Optimizing task recommendations in context-aware mobile crowdsourcing |
US9811791B2 (en) | 2014-12-23 | 2017-11-07 | Sap Se | Personalized work planning based on self-optimizing role-based crowd-sourced information |
US10135937B2 (en) * | 2015-02-19 | 2018-11-20 | Microsoft Technology Licensing, Llc | Personalized notifications |
US20170004396A1 (en) | 2015-06-30 | 2017-01-05 | Microsoft Technology Licensing, Llc | User-specific task reminder engine |
US11477139B2 (en) * | 2016-02-25 | 2022-10-18 | Meta Platforms, Inc. | Techniques for messaging bot rich communication |
US9711056B1 (en) * | 2016-03-14 | 2017-07-18 | Fuvi Cognitive Network Corp. | Apparatus, method, and system of building and processing personal emotion-based computer readable cognitive sensory memory and cognitive insights for enhancing memorization and decision making skills |
-
2017
- 2017-03-20 US US15/464,154 patent/US11361266B2/en active Active
-
2018
- 2018-03-13 EP EP18714663.4A patent/EP3602441A1/en not_active Withdrawn
- 2018-03-13 CN CN201880019431.9A patent/CN110476176B/zh active Active
- 2018-03-13 WO PCT/US2018/022082 patent/WO2018175137A1/en unknown
-
2022
- 2022-05-17 US US17/746,224 patent/US20220277248A1/en active Pending
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103620605A (zh) * | 2011-06-29 | 2014-03-05 | 微软公司 | 将搜索历史组织成合集 |
Also Published As
Publication number | Publication date |
---|---|
CN110476176A (zh) | 2019-11-19 |
EP3602441A1 (en) | 2020-02-05 |
US20180268337A1 (en) | 2018-09-20 |
WO2018175137A1 (en) | 2018-09-27 |
US20220277248A1 (en) | 2022-09-01 |
US11361266B2 (en) | 2022-06-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110476176B (zh) | 用户目标辅助技术 | |
US20180285827A1 (en) | Distinguishing events of users for efficient service content distribution | |
EP3577610B1 (en) | Associating meetings with projects using characteristic keywords | |
CN107924506B (zh) | 用于推断用户可用性的方法、系统及计算机存储介质 | |
US11100438B2 (en) | Project entity extraction with efficient search and processing of projects | |
CN107683486B (zh) | 用户事件的具有个人影响性的改变 | |
US20170308866A1 (en) | Meeting Scheduling Resource Efficiency | |
CN111615712B (zh) | 多日历协调 | |
US20190340554A1 (en) | Engagement levels and roles in projects | |
US10748121B2 (en) | Enriching calendar events with additional relevant information | |
CN107004170B (zh) | 为惯例外事件定制的服务内容 | |
CN106605418B (zh) | 使用基于位置的服务的移动客户端的电力管理 | |
US10185973B2 (en) | Inferring venue visits using semantic information | |
WO2019133264A1 (en) | Enhanced computer experience from personal activity pattern | |
WO2017083210A1 (en) | Enhanced computer experience from activity prediction | |
US20160321616A1 (en) | Unusualness of Events Based On User Routine Models | |
CN113454669A (zh) | 通过用户访问的特征来表征地点 | |
US20220335102A1 (en) | Intelligent selection and presentation of people highlights on a computing device | |
US20190090197A1 (en) | Saving battery life with inferred location | |
WO2020106499A1 (en) | Saving battery life using an inferred location |
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 |