CN108351870A - 根据活动模式的计算机语音识别和语义理解 - Google Patents

根据活动模式的计算机语音识别和语义理解 Download PDF

Info

Publication number
CN108351870A
CN108351870A CN201680066544.5A CN201680066544A CN108351870A CN 108351870 A CN108351870 A CN 108351870A CN 201680066544 A CN201680066544 A CN 201680066544A CN 108351870 A CN108351870 A CN 108351870A
Authority
CN
China
Prior art keywords
user
activity
data
pattern
information
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.)
Granted
Application number
CN201680066544.5A
Other languages
English (en)
Other versions
CN108351870B (zh
Inventor
D·多塔恩-科恩
S·温伯格
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Technology Licensing LLC
Original Assignee
Microsoft Technology Licensing LLC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from US14/941,155 external-priority patent/US11429883B2/en
Application filed by Microsoft Technology Licensing LLC filed Critical Microsoft Technology Licensing LLC
Priority to CN202111222376.3A priority Critical patent/CN113963697A/zh
Publication of CN108351870A publication Critical patent/CN108351870A/zh
Application granted granted Critical
Publication of CN108351870B publication Critical patent/CN108351870B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/335Filtering based on additional data, e.g. user or group profiles
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/957Browsing optimisation, e.g. caching or content distillation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/30Semantic analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Administration; Management
    • G06Q10/04Forecasting or optimisation specially adapted for administrative or management purposes, e.g. linear programming or "cutting stock problem"
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Administration; Management
    • G06Q10/10Office automation; Time management
    • G06Q10/101Collaborative creation, e.g. joint development of products or services
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • G10L15/18Speech classification or search using natural language modelling
    • G10L15/1822Parsing for meaning understanding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/02Services making use of location information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/02Services making use of location information
    • H04W4/021Services related to particular areas, e.g. point of interest [POI] services, venue services or geofences
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/02Services making use of location information
    • H04W4/029Location-based management or tracking services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/18Information format or content conversion, e.g. adaptation by the network of the transmitted or received information for the purpose of wireless delivery to users or terminals
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • G10L2015/225Feedback of the input speech
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/02Services making use of location information
    • H04W4/023Services making use of location information using mutual or relative location information between multiple location based services [LBS] targets or of distance thresholds
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/02Services making use of location information
    • H04W4/025Services making use of location information using location based information parameters
    • H04W4/027Services making use of location information using location based information parameters using movement velocity, acceleration information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/06Selective distribution of broadcast services, e.g. multimedia broadcast multicast service [MBMS]; Services to user groups; One-way selective calling services
    • H04W4/08User group management
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/70Reducing energy consumption in communication networks in wireless communication networks

Abstract

一种用户活动模式可以使用来自计算设备集合的信号数据而被确定。活动模式可以用于推断关于用户与计算设备的交互的用户意图或预测用户可能的未来动作。在一个实现方式中,计算设备集合被监视以使用与计算设备相关联的传感器来检测用户活动。与所检测的用户活动相关联的活动特征被确定并且用于基于具有类似特征的多个用户活动来标识活动模式。用户活动模式的示例可以包括基于时间、位置、内容或其他上下文的模式。所推断的用户意图或所预测的未来动作可以用来促进理解用户语音或确定用户的语义理解。

Description

根据活动模式的计算机语音识别和语义理解
背景技术
人们越来越多地与计算设备交互并且依靠这些设备来获得信息、推荐和其他服务以帮助他们进行日常任务。但是在这些交互中计算设备理解用户所说的语句和意图仍然是个困难的技术问题。在这种交互中,用户常常因其计算机化的个人助理应用或服务无法理解他们、他们的意图或预期他们的需求而感到沮丧。
同时,计算设备的许多用户具有重复的使用模式。例如,用户可能在每个工作日的上午在他们的移动设备上启动电子邮件应用,然后开始工作,在午餐时间浏览最喜欢的新闻网站,在下班回家途中致电密友或家人,或使用他们的笔记本电脑计划五月左右的年度休假。通过学习这些用户活动模式,计算机化的个人助理应用和服务可以提供改进的用户体验,包括提高对用户的语音以及他们的意图的理解。
发明内容
提供本发明内容是为了以简化形式介绍将在以下具体实施方式中进一步描述的概念的选择。本发明内容不旨在标识所要求保护的主题的关键特征或基本特征,也不旨在孤立地被用作确定所要求保护的主题的范围的辅助手段。
本公开中所描述的实施例旨在理解用户语音并且推断关于经由用户的计算设备执行的用户交互的用户意图。具体地,实施例可以基于所感测的用户活动的历史来确定用户关于与计算设备的交互的可能口头话语或意图,或者可以预测用户将要执行的可能的未来动作。可以使用用户的计算设备中的一个或多个计算设备的传感器随时间采集与用户活动相对应的数据。根据该历史用户活动信息,计算机系统可以学习与计算设备相关联的用户活动模式。通过分析用户活动模式,可以预测未来用户动作或者可以推断用户意图。
例如,与用户(“用户设备”)相关联的计算设备可以采用一个或多个传感器来生成与一个或多个用户设备上的用户活动有关的数据。用户活动可以被监视、追踪并且用于确定用户活动模式。如本文中所描述的,用户活动模式的示例可以包括但不限于基于时间、位置、内容或其他上下文的活动模式。在一些实施例中,可以基于与浏览有关的用户活动、应用使用或与一个或多个用户设备相关联的其他相关用户活动或者可经由一个或多个用户设备另外确定的用户活动来确定活动模式。
基于所确定的用户活动模式,可以推断关于用户与计算设备的交互和/或用户活动的预测的用户意图,该用户获得被确定并且用于提供改进的用户体验。本文中进一步描述的改进的用户体验的示例可以包括改进的语音识别或改进的用户的语义理解,其可以用于更精确地解析、消除歧义和/或理解用户的语音或理解来自用户的输入的其他方面和相关的增强的计算机体验(诸如个性化)。在一些实施例中,用户活动模式或根据其确定的未来活动的推断意图或预测可用于消费该信息以提供改进的用户体验的一个或多个应用和服务。一些实施例可以被并入自动语音识别(ASR)和/或语言建模部件或服务(或结合其来操作)。这样,结合语音识别(或作为其部件)来操作并且解释操作,用户的话语可以以与所学习的用户活动模式相符的这种方式被解析。
因而,如将进一步描述的,在一个实施例中,与用户相关联的一个或多个用户设备的用户活动可以被标识并且被监视。在一些实施例中,可以使用在所监视的用户设备上运行的应用或服务来促进用户活动监视。用户动作或“活动事件”(诸如访问网站,启动应用或与本文中所描述的其他动作类似的其他动作)可以被检测到并且利用相关的上下文数据被记录,例如,通过利用时间戳、位置戳来记录所观察的用户动作和/或将活动事件与其他可用的上下文信息相关联。根据所记录的用户活动,可以确定历史用户活动信息并且将其提供给推断引擎。基于对历史用户活动的分析,可以确定用户活动模式。在一些实施例中,对活动事件和相关信息执行语义分析以表征活动事件的各个方面。语义分析可以用于表征与活动事件相关联的信息,并且可以提供可以用于标识模式的活动事件的其他相关特征。
用户活动模式可以用于推断用户意图或预测用户的未来活动。根据这些预测或推断的用户意图,各种实现方式可以提供个性化的计算体验以及针对用户定制的其他服务,诸如改进语音识别;将用户的例行工作并入建议和通知中;通过用户的计算机设备改进语义理解;或如本文中所描述的其他示例。这样,本公开的实施例改进了计算设备的操作,因此提供了更准确的语音识别、改进的解析和消除歧义、对用户的意图的更准确的理解,从而改善了用户使用计算设备的体验。
附图说明
下文参考附图对本公开的各方面进行详细描述,其中
图1是适合于本公开的实现方式的示例操作环境的框图;
图2是描绘了适合于实现本公开的各方面的示例计算体系架构的图;
图3说明性地描绘了根据本公开的实施例的用于基于跨越多个用户设备的浏览器和应用活动来确定用户活动模式的示例系统的各方面;
图4描绘了根据本公开的实施例的用于推断用户活动模式的方法的流程图;
图5描绘了根据本公开的实施例的用于基于用户活动的模式来确定可能的未来用户动作的方法的流程图;
图6描绘了根据本公开的实施例的执行消除歧义以确定用户意图的方法的流程图;
图7描绘了根据本公开的实施例的执行语音识别以确定用户期望执行的动作的方法的流程图;
图8描绘了适合于实现本公开的实施例的用于自动语音识别系统的计算体系架构的各方面;以及
图9是适合于实现本公开的实施例的示例性计算环境的框图。
具体实施方式
在本文中以具体说明对本文中所公开的各方面的主题进行描述以符合法定要求。然而,描述本身并不旨在限制本专利的范围。相反,本发明人已经设想,所要求保护的主题还可以结合其他当前技术或未来技术以其他方式来体现,以包括与本文档中描述的步骤类似的不同步骤或步骤的组合。而且,尽管本文中可以使用术语“步骤”和/或“框”来暗示所采用的方法的不同元素,但是除非并且除了当明确描述了个体步骤的顺序时之外,这些术语不应该被解释为暗示本文中所公开的各种步骤之中或之间的任何特定顺序。
本公开的各方面涉及理解用户语音推断与计算设备的用户交互相关联的用户意图。具体地,本文中所描述的实施例可以基于所感测的用户活动的历史来确定用户关于与用户设备的交互的可能的口头表达或意图,或者可以预测用户可能的未来动作。可以使用与用户相关联的用户设备中的一个或多个用户设备上的传感器随着时间收集与用户活动相对应的数据。根据该历史用户活动信息,计算机系统可以学习与用户设备相关联的用户活动模式。通过分析用户活动模式,可以预测未来的用户动作或者可以推断用户意图。在一些情况下,用户活动模式可以与由用户设备收集的传感器数据一起被分析,并且基于确定与所确定的用户活动模式相符的可能意图来推断用户的意图。
如本文中所进一步描述的,在一些实施例中,用户设备可以采用一个或多个传感器来经由一个或多个用户设备生成与用户的活动相关的数据。用户活动可以被监视、追踪并且用于确定用户活动模式。术语“活动模式”在本文中被广泛地使用,并且可以指代使用一个或多个用户设备实施的多个用户交互、由用户在一个或多个用户设备上或与其结合的活动、与用户活动有关的事件(包括动作在内)、或经由计算设备可确定的任何类型的用户活动,其中多个交互、动作、事件或活动共享共同的特征或特性。在一些实施例中,如本文中所进一步描述的,这些共同特征或变量可以包括表征用户活动、时间、位置或与用户活动相关联的其他上下文信息的特征。如本文中所描述的,用户活动模式的示例可以包括但不限于基于时间(例如,用户在每个月的开始时浏览他的银行的网站以查看他的账户余额)、位置(例如,在上午到达工作地点时,用户调低其手机的音量)、内容(例如,用户通常浏览新闻相关网站,随后浏览其社交媒体相关网站)、或其他上下文的活动模式。
在一些实施例中,用户活动可以与用户的浏览活动相关,诸如网站、网站的类别、或用户访问的网站和/或网站类别的序列、以及与浏览活动相关联的用户活动。另外或可替代地,用户活动可以与用户的应用(或app)相关的活动(诸如应用使用)有关,其可以包括使用持续时间、启动、经由应用或结合应用使用所访问的文件、或与应用相关联的内容。术语应用或app在本文中被广泛使用,并且通常指代计算机程序或计算机应用,其可以包括一个或多个程序或服务,并且可以在用户的一个或多个设备上或在云中运行。
基于所确定的用户活动模式,可以推断关于用户与计算设备的交互或者用户活动的预测的用户意图,该预测被确定并且被用于提供改善的用户体验。下文进一步描述的这些改进的用户体验的示例,包括个性化服务,诸如为用户定制内容、改进语音识别或改进用户的语义理解,其可以用于执行消除歧义或理解来自用户的输入的其他方面。在一些实施例中,可以使用户活动模式或从中确定对的未来活动的推断意图或预测可用于消费该信息并且提供改进的用户体验的一个或多个应用和服务,诸如话音控制用户界面,其可以是车辆、智能家电或其他设备的部件,对于它们而言,具有对用户意图的语义理解是有利的,或者可以被并入语言模型或口语理解模型(SLU)中,或者相似的计算机进程、部件或服务中。在一个实施例中,活动模式信息可以经由API来提供,以使第三方应用和服务可以基于所学习的活动模式来使用它,诸如通过提供语音到文本服务、话音操作或控制、适时的推荐、建议或与用户相关的其他信息或服务。一个实施例可以被并入自动语音识别(ASR)中(或结合其操作)和/或语言建模部件或服务中。这样,结合语音识别和解释操作(或作为语音识别和解释操作的部件)操作,用户的话语可以以与所学习的用户活动模式相符的这种方式被解析。这样的实施例可以向个人数字助理服务提供显著的优势,并且通过使得计算机识别的语音功能能够“学习”或演变以理解用户而提供对语音识别和理解技术的改进。
因而,在高层次上,在一个实施例中,从一个或多个数据源接收用户数据。用户数据可以通过使用与用户相关联的一个或多个用户设备上的一个或多个传感器或部件收集用户数据来接收。还结合图2的部件210描述的用户数据的示例可以包括关于一个或多个用户设备的信息、与用户设备相关联的用户活动(例如,app使用、在线活动、搜索、呼叫、使用持续时间和其他用户交互数据)、网络相关数据(诸如网络ID、连接数据或其他网络相关信息)、应用数据、联系人数据、日历和社交网络数据、或者可以由用户设备或其他计算设备感测或确定的几乎任何其他用户数据源。可以监视所接收的用户数据并且可以将关于用户活动的信息存储在用户简档(诸如图2的用户简档240)中。
在一些实施例中,基于可以从用户数据确定的一个或多个用户设备的标识,监视一个或多个用户设备的用户活动。在一些实施例中,可以使用在所监视的用户设备上运行的应用或服务来促进用户活动监控。可替代地或另外地,可以使用在云中运行的应用或服务来促进用户活动监视,该应用或服务可以扫描用户设备,或检测与用户设备相关联的在线活动,诸如http请求或其他通信信息,或以其他方式从用户设备接收关于用户活动的信息。
可以分析用户数据以检测与用户动作相关联的各种特征。所检测的用户动作或“活动事件”(其可以包括诸如网站被访问、应用被启动或与本文中所描述的那些动作类似的其他动作之类的动作)可以利用相关联的上下文数据而被记录,例如,通过利用对应的时间戳、位置戳的记录所观察的用户动作,和/或将活动事件与其他可用上下文信息关联。在一些实施例中,可以在每个用户设备上执行这样的记录,以使可以跨设备确定活动模式。进一步地,在一些实施例中,可以使用基于云的用户活动信息源,诸如从社交媒体帖子、电子邮件等确定的在线用户日历或用户活动。这些源也可以用于向在一个或多个用户设备上检测到的用户活动提供其他上下文。结合图2中的上下文信息提取器284对上下文信息的示例进行进一步描述。在一些实施例中,来自多个用户设备的用户活动日志和来自基于云的源的可用用户活动信息可以被组合,从而表示合成用户活动历史。包括对应的上下文信息的用户活动日志可以存储在与用户相关联的用户简档(诸如图2的用户简档240)中。
根据活动日志或用户活动数据,可以确定历史用户活动信息并且将其提供给推断引擎。基于对历史用户活动的分析以及在一些情况下关于用户活动的当前传感器数据,可以确定一个或多个可能的用户活动模式的集合。具体地,在一些实施例中,推断引擎可以对历史用户活动信息进行分析以标识用户活动模式,其可以通过检测类似用户动作或例行工作的重复来确定。
在一些实施例中,可以确定关于用户活动模式的对应的置信度权重或置信度分数。置信度分数可以基于模式的强度,其可以通过用于确定模式的观察次数、用户活动与模式相符的频率、活动观察的年龄或新鲜度、与组成该模式的活动观察共同的特征的数目、或类似的测量来确定。在一些实例中,当提供个性化用户体验或其他改进的用户体验时,可以考虑置信度分数。进一步地,在一些实施例中,在使用活动模式来提供这样的体验或其他服务之前,可能需要最小置信度分数。例如,在一个实施例中,利用0.6(或刚好超过50%)的阈值,使得仅可以考虑预测用户活动的似然性为0.6(或更大)的活动模式。尽管如此,在使用置信度分数和阈值的情况下,仍然可以监视所确定的置信度分数低于阈值的用户活动模式,这是由于对用户活动的附加观察可能增加对特定模式的置信度。
在一些实施例中,还可以利用众包(crowdsourced)的用户活动历史,结合用户自己的活动历史。例如,对于给定用户,基于具有与给定用户共同的特征或特性,可以标识与给定用户类似的其他用户集合。这可以包括位于给定用户附近的其他用户、给定用户的社交媒体朋友、工作同事(其可以从与给定用户相关联的上下文信息的分析中确定)、具有类似用户活动模式的其他用户等。可以依赖来自其他用户的关于用户活动历史的信息,来推断针对给定用户的用户活动模式。在给定用户的用户活动历史很少的情况下,诸如用户是新用户的情况下,这可能特别有用。在一些实施例中,如本文中所进一步描述的,来自类似用户的用户活动信息可以被转嫁给新用户,直到足够的用户历史可用于新用户以确定统计上可靠的用户模式预测,该统计上可靠的用户模式预测可以基于包括在用户活动历史信息或所确定的用户活动模式的统计置信度中的观察的数目来确定。在一些情况下,在用户活动历史记录来自其他用户的情况下,所得的针对给定用户的推断活动模式可能会被指派较低的置信度。
在一些实施例中,对活动事件和关联信息执行语义分析以表征活动事件的各个方面。例如,可以对与活动事件相关联的特征进行分类(诸如例如,通过类型、类似的时间范围或位置),并且可以标识相关特征以用于确定与其他活动事件的相似性或关系接近程度,诸如通过共同具有包括类别和相关特征在内的特性中的一个或多个特性。在一些实施例中,可以采用诸如关系知识图之类的语义知识表示。在一些实施例中,语义分析可以使用规则、诸如关联或条件之类的逻辑、或分类器。
语义分析还可以用于表征与活动事件相关联的信息,诸如基于访问频率来确定与活动相关联的位置与用户感兴趣的中心或场所(诸如用户的家庭、工作地点、健身房等)相对应。(例如,用户的家庭中心可以被确定为在晚上8点到上午6点之间用户的大多数时间所花费的位置。)类似地,语义分析可以确定与工作时间、午餐时间、通勤时间等相对应的一天中的时间。
这样,语义分析可以提供可以用于确定模式的活动事件的其他相关特征。例如,除了确定用户在特定时间访问的特定网站(诸如在午餐时间访问CNN.com)之外,还可以确定网站的类别,诸如新闻相关网站。类似地,语义分析可以基于活动的特性来将活动分类为与工作或家庭相关联(例如,在与用户办公室相对应的位置处的工作时间期间发生的关于卡方分布的一批在线搜索可以被确定为工作相关活动,而在周五晚上在与用户家庭相对应的位置处流式传输电影可以被确定为家庭相关活动)。当评估用户活动历史以标识模式时,可以考虑表征用户活动事件的这些方面。例如,在午餐时间访问新闻相关网站的模式可以在用户定期在午餐时间访问新闻相关网站但仅偶尔访问CNN.com作为新闻相关网站中的一个网站的情况下确定。
如先前所描述的,用户活动模式可以用于推断用户意图或预测用户的未来活动。根据这些预测或推断的用户意图,各种实现方式可以提供改进的用户体验。例如,一些实施例可以提供适时的递送或呈现相关内容、或修改将以其他方式呈现的内容;将用户的例行工作并入推荐和通知中;改进语音识别和改进用户计算机设备的语义理解;或本文中所描述的改进的用户体验的其他示例。例如,与用户的语音相对应的声学信息(诸如口头命令、查询、问题或来自与用户设备的其他的用户交互的其他数据)(其可以包括来自可以由与用户设备相关联的传感器(诸如相机)所感测的手势的视觉信息)可以基于历史用户活动模式被接收和解释。比如,该信息可以被解释为使得个人助理应用能够代表用户响应或调用某个动作(诸如设置提醒,导航到网站,为用户定位文档或者可以经由用户设备执行的其他任务)。如本文中进一步描述的,可以通过个人助理应用或服务来执行一些实施例,该个人助理应用或服务可以被实现为一个或多个计算机应用、服务或例程,诸如在移动设备或云上运行的app。
现在转到图1,提供了框图,其示出了其中可以采用本公开的一些实施例的示例操作环境100。应当理解,本文中所描述的这个和其他布置仅作为示例被阐述。为了清楚起见,除了或代替所示出的那些之外,还可以使用其他布置和元件(例如,机器、接口、功能、顺序和功能分组等),并且为了清楚起见,可以完全省略一些元件。进一步地,本文中所描述的许多元件是功能实体,其可以被实现为离散部件或分布式部件或者与其他部件相结合来实现,以及以任何合适的组合和在任何合适的位置实现。本文中被描述为由一个或多个实体执行的各种功能可以由硬件、固件和/或软件来执行。比如,一些功能可以由执行存储在存储器中的指令的处理器实现。
除了未示出的其他部件之外,示例操作环境100包括若干个用户设备,诸如用户设备102a和102b至102n;若干个数据源,诸如数据源104a和104b至104n;服务器106;传感器103a和107、以及网络110。应当理解,图1所示的环境100是一个合适的操作环境的示例。图1中所示的部件中的每个部件可以经由任何类型的计算设备(诸如例如,结合图9所描述的计算设备900)来实现。这些部件可以经由网络110彼此通信,该网络110可以包括但不限于一个或多个局域网(LAN)和/或广域网(WAN)。在示例性实现方式中,网络110包括多种可能的公共网络和/或专用网络中的任何网络之中的互联网和/或蜂窝网络。
应当理解,在本公开的范围内,可以在操作环境100内采用任何数目的用户设备、服务器和数据源。其中的每个可以包括单个设备或在分布式环境中协作的多个设备。比如,服务器106可以经由布置在分布式环境中的多个设备来提供,这些设备共同提供本文中所描述的功能。附加地,分布式环境内还可以包括未示出的其他部件。
用户设备102a和102b至102n可以是操作环境100的客户端侧的客户端设备,而服务器106可以在操作环境100的服务器侧。服务器106可以包括服务器侧软件,其被设计为结合用户设备102a和102b至102n上的客户端侧软件工作,以便实现本公开中所讨论的特征和功能的任何组合。提供操作环境100的这种划分以说明合适环境的一个示例,并且每个实现方式不要求服务器106和用户设备102a和102b至102n的任何组合保持为分离的实体。
用户设备102a和102b至102n可以包括能够由用户使用的任何类型的计算设备。例如,在一个实施例中,用户设备102a至102n可以是本文中关于图9描述的计算设备的类型。通过示例而非限制,用户设备可以体现为个人计算机(PC)、膝上型计算机、移动或移动设备、智能手机、平板电脑、智能手表、可穿戴式计算机、个人数字助理(PDA)、MP3播放器、全球定位系统(GPS)或设备、视频播放器、手持式通信设备、游戏设备或系统、娱乐系统、车辆计算机系统、嵌入式系统控制器、相机、遥控器、条形码扫描仪、计算机化的测量设备、电器、消费者电子设备、工作站或这些描绘的设备的任何组合、或任何其他合适的设备。
数据源104a和104b至104n可以包括数据源和/或数据系统,其被配置为使得数据可用于操作环境100或结合图2所描述的系统200的各种组成部分中的任一个。(例如,在一个实施例中,一个或多个数据源104a至104n向图2的用户数据收集部件210提供(或使得可用于访问)用户数据)。数据源104a和104b至104n可以与用户设备102a和102b至102n以及服务器106分离,或者可以被并入和/或集成到那些部件中的至少一个部件中。在一个实施例中,数据源104a至104n中的一个或多个数据源包括一个或多个传感器,其可以集成到用户设备102a,102b或102n或服务器106中的一个或多个中,或与用户设备102a,102b或102n或服务器106中的一个或多个相关联。结合图2的用户数据收集部件210对由数据源104a至104n提供的感测的用户数据的示例进行进一步描述。
操作环境100可以用来实现图2中描述的系统200和图3所描述的系统300的一个或多个部件,其包括用于收集用户数据、监视活动事件、确定活动模式、消费活动模式信息以提供改进的用户体验、生成个性化内容、和/或向用户呈现通知和相关内容的部件。现在参照图2,结合图1,提供了框图,其示出了适合于实现实施例并且通常被指定为系统200的示例计算系统体系架构的各方面。系统200仅表示合适的计算系统体系架构的一个示例。附加或者代替所示的那些部件,还可以使用其他的布置和元件,并且为了清楚起见,可以完全省略一些元件。进一步地,与操作环境100一样,本文中所描述的许多元件是功能实体,其可以被实现为离散部件或分布式部件或者与其他部件结合来实现以及以任何合适的组合和在任何合适的位置实现。
示例系统200包括网络110,其结合图1进行描述,并且通信地耦合系统200的部件,这些部件包括用户数据收集部件210、呈现部件220、用户活动监视器280、活动模式推断引擎260、活动模式消费者270和存储装置225。用户活动监视器280(包括其部件282,284和286)、活动模式推断引擎260(包括其部件262、264、266、267和269)、用户数据收集部件210、呈现部件220和活动模式消费者270可以体现为编译的计算机指令或功能集合、程序模块、计算机软件服务或在一个或多个计算机系统(诸如例如,结合图9所描述的计算设备900)上执行的过程的布置。
在一个实施例中,由系统200的部件执行的功能与一个或多个个人助理应用、服务或例程相关联。特别地,这样的应用、服务或例程可以在一个或多个用户设备(诸如用户设备102a)上操作,服务器(诸如服务器106)可以跨一个或多个用户设备和服务器分布,或者可以在云中实现。而且,在一些实施例中,系统200的这些部件可以跨网络分布,其包括一个或多个服务器(诸如服务器106)和客户端设备(诸如用户设备102a);分布在云中;或者可以驻留在用户设备(诸如用户设备102a)上。而且,可以在一个或多个计算系统的一个或多个适当的抽象层(诸如操作系统层、应用层、硬件层等)上实现这些部件、由这些部件执行的功能、或由这些部件执行的服务。可替代地或另外,本文中所描述的这些部件和/或实施例的功能可以至少部分地由一个或多个硬件逻辑部件来执行。例如但不限于,可以使用的说明性类型的硬件逻辑部件包括现场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、片上系统(SOC)、复杂可编程逻辑器件(CPLD)等。附加地,尽管本文中关于示例系统200中示出的具体部件描述了功能,但是应当设想,在一些实施例中,这些部件的功能可以跨其他部件共享或者分布。
继续参考图2,用户数据收集部件210通常负责访问或接收(并且在一些情况下还标识)来自诸如图1的数据源104a和104b至104n的一个或多个数据源的用户数据。在一些实施例中,可以采用用户数据收集部件210来促进针对用户活动监视器280、活动模式推断引擎260或活动模式消费者270的特定用户(或者在一些情况下,包括众包数据的多个用户)的用户数据的积累。数据可以被用户数据收集部件210接收(或访问),并且可选地被积累、重新格式化和/或组合,并且被存储在一个或多个数据存储装置中,诸如存储装置225,其中它可用于系统200的其他部件。例如,如本文中所描述的,用户数据可以存储在用户简档240中或与用户简档240相关联。在一些实施例中,任何个人标识数据(即,特定地标识特定用户的用户数据)未被上传或以其他方式从一个或多个数据源与用户数据一起提供,不被永久存储,和/或不能提供给用户活动监视器280和/或活动模式推断引擎260。
用户数据可以从多种源接收,其中数据可以以多种格式获得。例如,在一些实施例中,经由用户数据收集部件210接收的用户数据可以经由一个或多个传感器(诸如图1中的传感器103a和107)来确定,该传感器可以在一个或多个用户设备(诸如用户设备102a)、服务器(诸如服务器106)和/或其他计算设备上或与之相关联。如本文中所使用的,传感器可以包括用于感测、检测或以其他方式从数据源104a获得诸如用户数据之类的信息的功能、例程、部件或其组合,并且可以体现为硬件、软件或两者。通过示例而非限制,用户数据可以包括从一个或多个传感器感测或确定的数据(本文中被称为传感器数据),诸如一个或多个移动设备的位置信息,一个或多个用户设备的属性或特性(诸如设备状态、充电数据、日期/时间或从诸如移动设备的用户设备导出的其他信息),用户活动信息(例如,app使用;在线活动;搜索;话音数据(诸如自动语音识别);活动日志;包括呼叫、短消息、即时消息和电子邮件在内的通信数据;网站帖子;与通信事件相关联的其他用户数据等),其在一些实施例中包括:在多于一个用户设备上发生的用户活动、用户历史、会话日志、应用数据、联系人数据、日历和时间表数据、通知数据、社交网络数据、新闻(包括搜索引擎或社交网络上的流行项或趋势项)、在线游戏数据、电子商务活动(包括来自诸如 视频流式传输服务、游戏服务或之类的在线账户的数据)、一个或多个用户账户的数据(其可以包括来自与个性化相关应用、个人助理应用或服务相关联的用户偏好或设置的数据)、家庭传感器数据、电器数据、全球定位系统(GPS)数据、车辆信号数据、交通数据、天气数据(包括预报在内)、可穿戴式设备数据、其他用户设备数据(其可以包括设备设置、简档、网络相关信息(例如,网络名称或ID、域信息、工作组信息、连接数据、Wi-Fi网络数据、或配置数据,关于型号、固件或设备的数据、设备配对(诸如例如,在用户具有与蓝牙耳机配对的移动电话的情况下),或其他网络相关信息)、陀螺仪数据、加速度计数据、支付或信用卡使用数据(其可以包括来自用户的PayPal账户的信息)、购买历史数据(诸如来自用户的Xbox Live、Amazon.com或eBay账户的信息)、可以由一个或多个传感器(或其他检测器)部件感测或以其他方式检测到的其他传感器数据(其包括从与用户相关联的传感器部件导出的数据(包括位置、运动、方位、位置、用户访问、用户活动、网络访问、用户设备充电或能够由一个或多个传感器部件提供的其他数据)、基于其他数据导出的数据(例如,可以从Wi-Fi、蜂窝网络或IP地址数据导出的位置数据)、以及可能如本文中所描述的感测或确定的几乎任何其他数据源)。
在一些方面中,可以在用户数据流或信号中提供用户数据。“用户信号”可以是来自对应数据源的用户数据的馈送或流。例如,用户信号可以来自智能手机、家庭传感器设备、GPS设备(例如,用于位置坐标)、车辆传感器设备、可穿戴式设备、用户设备、陀螺仪传感器、加速计传感器、日历服务、电子邮件帐户、信用卡帐户或其他数据源。在一些实施例中,用户数据收集部件210连续地、周期性地或根据需要接收或访问数据。
用户活动监视器280通常负责监视用户数据中可以用于确定用户活动信息的信息,该信息可以包括标识和/或追踪特征(本文有时称为“变量”)或关于特定用户动作的其他信息以及相关的上下文信息。用户活动监视器280的实施例可以根据所监视的用户数据来确定与特定用户相关联的用户活动。如先前所描述的,由用户活动监视器280确定的用户活动信息可以包括来自与用户相关联的多个用户设备和/或来自与用户相关联的基于云的服务(诸如电子邮件、日历、社交媒体、或类似的信息源)的用户活动信息,并且其可以包括与所标识的用户活动相关联的上下文信息。用户活动监视器280可以确定当前或接近实时的用户活动信息,并且还可以确定历史用户活动信息,其在一些实施例中,可以基于随时间采集用户活动的观察值来确定,从而访问过去活动的用户日志(诸如例如,浏览历史)。进一步地,在一些实施例中,如先前所描述的,用户活动监视器280可以确定来自其他类似用户(即,众包)的用户活动(其可以包括历史活动)。
在一些实施例中,由用户活动监视器280确定的信息可以被提供给包括关于当前上下文和历史访问(历史观察值)的信息的活动模式推断引擎260。一些实施例还可以向一个或多个活动模式消费者270提供诸如当前用户活动之类的用户活动信息。如先前所描述的,可以通过监视从用户数据收集部件210接收的用户数据来确定用户活动特征。在一些实施例中,从用户数据确定的关于用户活动的用户数据和/或信息被存储在用户简档(诸如用户简档240)中。
在实施例中,用户活动监视器280包括一个或多个应用或服务,其分析经由用户使用的一个或多个用户设备和/或与用户相关联的基于云的服务检测到的信息,以确定活动信息和相关的上下文信息。关于与用户相关联的用户设备的信息可以根据经由用户数据收集部件210提供的用户数据来确定,并且可以被提供给用户活动监视器280、活动模式推断引擎260或系统200的其他部件。
更具体地,在用户活动监视器280的一些实现方式中,用户设备可以通过检测和分析用户设备的特性来标识,诸如设备硬件、诸如操作系统(OS)之类的软件、网络相关特性、经由设备访问的用户帐户、以及类似的特性。例如,可以使用许多操作系统的功能来确定关于用户设备的信息,以提供关于硬件、OS版本、网络连接信息、安装的应用等的信息。
用户活动监视器280或其子部件的一些实施例可以确定与用户相关联的每个设备的设备名称或标识(设备ID)。关于与用户相关联的所标识的用户设备的该信息可以被存储在与用户相关联的用户简档中,诸如用户简档240的用户账户和设备244中。在实施例中,用户设备可以被轮询、询问或以其他方式分析以确定关于设备的信息。该信息可以用于确定设备的标签或标识(例如,设备ID),使得用户活动监视器280可以根据用户数据识别与设备的用户交互。在一些实施例中,用户可以声明或注册设备,诸如通过经由设备登录账户、在设备上安装应用、连接到询问设备的在线服务,或者以其他方式向应用或服务提供关于设备的信息。在一些实施例中,登录到与用户相关联的账户(诸如微软账户或网络护照、电子邮件账户、社交网络等)的设备被标识并且确定为与用户相关联。
如示例系统200所示,用户活动监视器280包括用户活动检测器282、上下文信息提取器284和活动特征确定器286。在一些实施例中,用户活动监视器280、其子部件中的一个或多个子部件、或系统200的其他部件(诸如活动模式消费者270或活动模式推断引擎260)可以根据所接收的用户数据确定解释性数据。解释性数据对应于由系统200的这些部件或用户活动监视器280的子部件使用的、用于解释用户数据的数据。例如,解释性数据可以用来为用户数据提供其他上下文,其可以支持由部件或子部件做出的确定或推断。而且,用户活动监视器280、其子部件和系统200的其他部件的实施例可以被设想使用用户数据和/或用户数据结合解释性数据来实现本文中所描述的子部件的目的。附加地,尽管本文中对用户活动监视器280及其子部件如何标识用户活动信息的几个示例进行了描述,但是在本公开的各种实施例中,用户活动标识和用户活动监视的许多变型是可能的。
一般而言,用户活动检测器282负责确定(或标识)已发生的用户动作或活动事件。活动检测器282的实施例可以用于确定当前用户活动或一个或多个历史用户动作。活动检测器282的一些实施例可以监视用户数据中与用户活动相对应的活动相关特征或变量,诸如所启动或访问的应用的指示、被访问、修改、复制等的文件、导航到网站、所下载和再现或播放的在线内容、或类似的用户活动。
附加地,用户活动检测器282的一些实施例从用户数据中提取关于用户活动的信息,该用户活动可以包括当前用户活动、历史用户活动和/或诸如上下文信息之类的相关信息。(可替代地或另外,在一些实施例中,上下文信息提取器284确定并且提取上下文信息。类似地,在一些实施例中,活动特征确定器286基于由用户活动检测器282确定的活动的标识来提取关于用户活动的信息,诸如用户活动相关特征)。所提取的用户活动信息的示例可以包括app使用、在线活动、搜索、呼叫、使用持续时间、应用数据(例如,电子邮件、消息、帖子、用户状态、通知等)、或者与用户设备的用户交互或经由用户设备的用户活动有关的几乎任何其他数据。除了系统200的其他部件之外,由用户活动检测器282确定的所提取的用户活动信息可以被提供给用户活动监视器280、活动模式推断引擎260或一个或多个活动模式消费者270的其他子部件。进一步地,所提取的用户活动可以被存储在与用户相关联的用户简档中,诸如存储在用户简档240的用户活动信息部件242中。在一些实施例中,用户活动检测器282或用户活动监视器280(或它的其他子部件)对所检测的用户活动信息执行归并。例如,重叠信息可以被合并和复制,或者消除冗余信息。
在一些实施例中,可以解释用户活动相关特征以确定用户活动已经发生。例如,在一些实施例中,用户活动检测器282采用用户活动事件逻辑,其可以包括规则、条件、关联、分类模型或其他准则,以标识用户活动。例如,在一个实施例中,用户活动事件逻辑可以包括将用户活动准则与用户数据进行比较以确定活动事件已经发生。依据用于标识活动事件的机制,活动事件逻辑可以采用许多不同的形式。例如,用户活动事件逻辑可以是用于训练用于评估用户数据以确定活动事件何时发生的神经网络的训练数据。活动事件逻辑可以包括模糊逻辑、神经网络、有限状态机、支持向量机、逻辑回归、聚类或机器学习技术、类似的统计分类过程、或这些的组合以从用户数据标识活动事件。例如,活动事件逻辑可以指定与活动事件(诸如导航到网站,撰写电子邮件或启动应用)相关联的用户设备交互(一个或多个)信息的类型。在一些实施例中,一系列或序列的用户设备交互可以被映射到活动事件,使得可以在确定用户数据指示用户已经执行了该系列或序列的用户交互时检测活动事件。
在一些实施例中,活动事件逻辑可以指定被认为是用户活动的用户设备相关活动的类型,诸如当用户登录到用户设备的时、当用户界面正在接收输入时(例如,当计算机鼠标、触摸板、屏幕、话音识别界面等活动时)发生的活动,或者诸如启动应用、使用应用修改文件、打开浏览器和导航到网站等某些类型的活动。这样,活动事件逻辑可以用于将真实用户活动与在用户设备上运行的过程的自动活动(诸如自动更新或恶意软件扫描)区分开来。一旦确定了用户活动,就可以检测这些特征或附加相关特征并且将其与检测到的活动相关联,以用于确定活动模式。
在一些实施例中,用户活动检测器282在用户的每个用户设备上运行或与其相关联地运行。用户活动检测器282可以包括轮询或分析操作系统的各方面以确定用户活动相关特征(诸如例如,已安装的或正在运行的应用或文件访问和修改)、网络通信和/或可经由用户设备检测到的包括动作序列在内的其他用户动作。
在一些实施例(诸如系统200中所示的实施例)中,用户活动检测器282包括子部件,其包括应用活动记录流水线283和浏览活动记录流水线285。这些记录流水线可以体现为客户端侧应用或服务,其在与用户相关联的每个用户设备上运行,并且在一些实施例中可以结合应用或在其内部(或作为应用的一部分)运行,诸如在浏览器内或作为浏览器插件或扩展运行。一般而言,应用活动记录流水线283管理用户的应用(或app)活动(诸如应用下载、启动、访问、使用(其可以包括持续时间)、经由应用的文件访问和应用内用户活动(其可以包括应用内容))的记录。一般而言,浏览活动记录流水线285管理用户的浏览活动的记录,诸如所访问的网站、社交媒体活动(其可以包括经由特定浏览器或诸如 等之类的app进行的浏览型活动)、所下载的内容、所访问的文件、以及其他浏览相关的用户活动。在一些实施例中,用户设备上的每个浏览器与浏览活动记录流水线285的实例相关联,或者可替代地向用户设备上的浏览活动记录流水线285的单个实例提供浏览信息的插件或服务。在一些实施例中,app和浏览活动记录流水线283和285还可以执行结合上下文信息提取器284所描述的功能,诸如记录时间戳、位置戳、用户设备相关信息或与所记录的app活动或浏览活动相关联的其他上下文信息。在一些实施例中,app和浏览活动记录流水线283和285将记录的用户活动信息上传到活动模式推断引擎260和/或将记录的活动信息存储在与用户相关联的用户简档中,诸如用户简档240的用户活动信息部件242中。
一般而言,上下文信息提取器284负责确定与(由用户活动检测器282或用户活动监视器280检测到的)用户活动有关的上下文信息,诸如与用户活动相关联的上下文特征或变量、相关信息、以及用户相关的活动,并且进一步负责将确定的上下文信息与检测到的用户活动相关联。在一些实施例中,上下文信息提取器284可以将所确定的上下文信息与相关的用户活动相关联,并且还可以将上下文信息与相关联的用户活动一起进行记录。可替代地,关联或记录可以由另一服务执行。例如,上下文信息提取器284的一些实施例向活动特征确定器286提供所确定的上下文信息,该活动特征确定器286确定用户活动的活动特征和/或相关上下文信息。
上下文信息提取器284的一些实施例确定与用户动作或活动事件(诸如用户活动中标识的或与该活动有关的实体(例如,用户所发送的群组电子邮件的收件人))有关的上下文信息,其可以包括用户使用的昵称(例如,“妈妈”和“爸爸”指代可以通过其实际名称在用户的联系人中标识的特定实体),该用户活动与用户的设备的位置或场所相关联。通过示例而非限制,这可以包括上下文特征,诸如位置数据,其可以被表示为与该活动相关联的位置戳;关于位置的上下文信息,诸如场所信息(例如,这是用户的办公室位置、家庭位置、学校、餐馆、移动剧院等)、黄页标识符(YPID)信息、时间、天和/或日期,其可以被表示为与活动相关联的时间戳;关于用户在其上执行活动的设备的用户设备特性或用户设备标识信息;用户活动的持续时间,用户活动之前和/或之后的一个其他用户活动/多个其他用户活动(诸如所访问的网站序列、所进行的在线搜索序列、应用序列以及网站使用序列,诸如浏览到银行然后访问Excel电子表格文件以记录财务信息等),关于活动(诸如与活动相关联的实体(例如,场所、人、对象等))的其他信息,其可以包括由该用户使用(并且在一些例子中,由用户创建的)昵称或个人的表达、或由该用户或用户的熟人所使用(并且在一些例子中,由他们创建的)术语(例如,特定于该用户(而不是每个人)的用于该场所的名称,诸如“Dikla的家”、“Shira的车”、“我的西雅图朋友们”等)、由与用户相关联的用户设备上的一个或多个传感器检测到的与用户活动并发或基本上并发的信息(例如,在健身追踪用户设备上检测到的运动信息或生理信息、收听音乐,如果音乐源不是用户设备,则该音乐可以经由麦克风传感器检测到)),或与可以用于确定用户活动模式的、可检测到的用户活动有关的任何其他信息。
在使用与用户设备有关的上下文信息的实施例中,用户设备可以通过检测和分析用户设备的特性来标识,诸如设备硬件、诸如操作系统(OS)的软件、网络相关特性、经由设备访问的用户帐户、以及类似的特点。例如,如先前所描述的,可以使用许多操作系统的功能来确定关于用户设备的信息,以提供关于硬件、OS版本、网络连接信息、安装的应用等的信息。在一些实施例中,可以为与用户相关联的每个设备确定设备名称或标识(设备ID)。关于与用户相关联的所标识的用户设备的该信息可以被存储在与用户相关联的用户简档中,诸如用户简档240的一个或多个用户账户和一个或多个设备244中。在实施例中,用户设备可以被轮询、询问或以其他方式分析以确定关于设备的上下文信息。该信息可以用于确定设备的标签或标识(例如,设备ID),使得一个用户设备上的用户活动可以被识别并且与另一用户设备上的用户活动区分开来。进一步地,如先前所描述的,在一些实施例中,用户可以声明或注册用户设备,诸如通过经由设备登录帐户、在设备上安装应用、连接到询问设备的在线服务、或者以其他方式向应用或服务提供关于设备的信息。在一些实施例中,登录到与用户相关联的账户(诸如账户或网络护照、电子邮件账户、社交网络等)的设备被标识并且被确定为与用户相关联。
在一些实现方式中,上下文信息提取器284可以从用户数据收集部件210接收用户数据,在一些实例中,解析数据,并且标识和提取上下文特征或变量(其还可以由活动特征确定器286执行)。上下文变量可以被存储为与用户活动相关联的上下文信息的相关集合,并且可以被存储在诸如用户活动信息部件242中的用户简档中。在一些情况下,上下文信息可以被一个或多个活动模式消费者使用,诸如用于个性化内容或用户体验,诸如何时、何地或如何呈现内容。在一些实施例中,代替或除了用于特定用户的用户活动信息之外,还可以从一个或多个用户的用户数据确定上下文信息,其可以由用户数据收集部件210来提供。
活动特征确定器286通常负责确定与可以用于标识用户活动模式的用户活动相关联的活动相关特征(或变量)。活动特征可以从关于用户活动的信息和/或从相关的上下文信息中确定。在一些实施例中,活动特征确定器286从用户活动监视器280(或其子部件)接收用户活动或相关信息,并且分析接收到的信息以确定与用户活动相关联的一个或多个特征的集合。
活动相关特征的示例包括但不限于位置相关特征,诸如用户活动期间一个或多个用户设备的位置、与位置相关联的场所相关信息、或其他位置相关信息;时间相关特征,诸如一天或多天中的一个或多个时间、用户活动在一周或一月的日期、或活动的持续时间;或相关持续时间信息,诸如用户使用与该活动相关联的应用多久;用户设备相关特征,诸如设备类型(例如,台式机、平板电脑、移动电话、健身追踪器、心率监视器等)、硬件属性或简档、OS或固件属性、设备ID或型号;网络相关信息(例如,mac地址、网络名称、IP地址、域、工作组、关于本地网络上检测到的其他设备的信息、路由器信息、代理或VPN信息、其他网络连接信息等);关于用户设备的位置/运动/方位相关信息;功率信息,诸如电池电量、连接/断开充电器的时间、以及用户访问/触摸信息;使用相关特征,诸如所访问的一个或多个文件、app使用(其还可以包括应用数据、app内使用、并发运行的应用)、网络使用信息、所访问或以其他方式使用的一个或多个用户帐户(诸如一个或多个设备帐户、一个或多个OS级帐户或在线/云服务相关帐户活动(诸如帐户或网络护照、一个或多个在线存储帐户、电子邮件、日历或社交网络帐户)等);内容相关特征,诸如在线活动(例如,搜索、浏览网站、购买、社交网络活动、所发送或接收的包括社交媒体帖子的通信);其他特征,其可以与用户活动同时或在用户活动的时间附近被检测到;或任何其他特征,其可以被检测或感测并且用于确定用户活动模式。特征还可以包括关于使用该设备的一个或多个用户的信息;标识用户的其他信息,诸如登录密码、可以由健身追踪器或生物测定扫描仪提供的生物测定数据;和/或使用设备的一个或多个用户的特性,其对于区分开由多于一个用户共享的设备上的用户可能是有用的。在一些实施例中,可以利用(结合用户活动检测器282进行描述的)用户活动事件逻辑根据用户活动信息来标识特定特征。
继续图2的系统200,活动模式推断引擎260通常负责基于从用户活动监视器280确定的用户活动信息来确定用户活动模式。在一些实施例中,活动模式推断引擎260可以在服务器上运行、作为跨多个设备的分布式应用运行、或者在云中运行。在高层次上,活动模式推断引擎260可以接收用户活动相关信息,其可以从来自与用户活动监视器280相关联的客户端侧应用或服务的用户活动日志上载。一个或多个推断算法可以应用于用户活动相关信息以确定可能的用户活动模式的集合。例如,可以基于用户活动或相关联的上下文信息的类似观察实例来确定模式,其可以被称为用户活动相关信息的“共同特征”。所推断的活动模式信息可以被提供给活动模式消费者270和/或用于生成关于一个或多个可能的未来用户动作的基于模式的预测。在一些实施例中,如本文中所描述的,还为模式(或基于模式的预测)确定对应的置信度。进一步地,活动模式(或基于模式的未来动作的预测)可以包括可能发生的单个(未来发生的)用户活动、未来用户动作的序列或者针对多于一个未来动作的概率,例如,下一个动作将浏览到网站A的似然性为百分之八十,下一个动作将启动音乐播放器应用的似然性为百分之十五,下一个动作将浏览到网站B的似然性为百分之五。
如示例系统200所示,活动模式推断引擎260包括语义信息分析器262、特征相似性标识器264和活动模式确定器266。语义信息分析器262通常负责确定与由用户活动监视器280所标识的用户活动相关特征相关联的语义信息。例如,虽然用户活动特征可以指示用户访问的特定网站,但是语义分析可以确定与网站或用户活动相关联的网站类别、相关网站、主题或题目或其他实体。语义信息分析器262可以确定语义上与用户活动有关的附加的用户活动相关特征,其可以用于标识用户活动模式。
具体地,如先前所描述的,对可以包括上下文信息的用户活动信息执行语义分析以表征用户动作或活动事件的各个方面。例如,在一些实施例中,与活动事件相关联的活动特征可以被分类或归类(诸如通过类型、时间范围或位置、工作相关的、家庭相关的、主题、相关实体、一个或多个其他用户(诸如作为去往或来自另一用户的通信)和/或另一用户与用户的关系(例如,家庭成员、亲密朋友、工作熟人、老板等)、或其他类别)或相关特征可以被标识为用于确定与其他用户活动事件的相似性或关系接近度,其可以指示模式。在一些实施例中,语义信息分析器262可以利用诸如关系知识图的语义知识表示。语义信息分析器262还可以利用语义分析逻辑,其包括规则、条件或关联来确定与用户活动有关的语义信息。例如,包括发送给与该用户一起工作的某人的电子邮件的用户活动事件可以被表征为与工作有关的活动。因此,如果用户在每周日晚上向和她一起工作的人(但不一定向同一人)发送电子邮件,则可以(使用活动模式确定器266)确定用户在每周日晚上执行与工作有关的活动。因而,由于用户在周日晚上具有工作模式,因此在周日晚上向用户展示与用户的工作有关的通知(诸如提醒)可能是适当的。(这里,通知服务是活动模式消费者270的一个示例)。
语义信息分析器262还可以用于表征与用户活动事件相关联的上下文信息,诸如基于用户访问的频率来确定与活动相关联的位置与用户感兴趣的中心或场所(诸如用户的家庭、工作、健身房等)相对应。例如,用户的家庭中心可以(使用语义分析逻辑)被确定为用户在晚上8点到上午6点之间花费大部分时间的位置。类似地,语义分析可以确定与工作时间、午餐时间、通勤时间等相对应的一天中的时间。类似地,基于活动的其他特点,语义分析可以将活动归类为与工作或家庭相关联(例如,在工作时间期间在与用户办公室相对应的位置处发生的关于卡方分布的一批在线搜索可以被确定为工作相关活动,而在周五晚上在与用户的家庭相对应的位置处流式传输电影可以被确定为家庭相关活动)。这样,由语义信息分析器262提供的语义分析可以提供可以用于确定用户活动模式的用户活动事件的其他相关特征。例如,在用户活动包括在午餐时间访问CNN.com并且语义分析确定用户在午餐时间访问了新闻相关网站的情况下,可以(通过活动模式确定器266)确定用户活动模式,该模式指示用户例行在午餐时间访问新闻相关网站,但仅偶尔会访问作为那些新闻相关网站中的一个网站的CNN.com。
特征相似性标识器264通常负责确定两个或更多个用户活动事件的活动特征的相似性(换言之,表征第一用户活动事件的活动特征,其与表征第二用户活动事件的活动特征类似)。活动特征可以包括与上下文信息和由语义信息分析器262确定的特征有关的特征。具有共同活动特征的活动事件可以用于标识活动模式,该活动模式可以使用活动模式确定器266来确定。
例如,在一些实施例中,特征相似性标识器264可以结合一个或多个基于模式的预测器267(活动模式确定器266的子部件)以确定具有共同特征的用户活动事件集合。在一些实施例中,如下文所描述的,该用户活动事件集合可以用作基于模式的预测器的输入。在一些实施例中,特征相似性标识器264包括用于确定基于周期性和基于行为的活动特征的相似性的功能。周期性特征包括例如可能周期性发生的特征;例如,一周或一月的某一天,偶数/奇数天(或周),每月,每年,每隔一天,每隔三天等的特征。行为特征可以包括诸如用户活动之类的行为,这些用户活动趋向于与例如在给定用户活动事件(或先前活动事件序列)之前或之后发生的某些位置或活动一起发生。
在活动特征具有值的实施例中,基于特定特征,可以在具有相同值或近似相同值的不同活动特征中确定相似性。(例如,周五上午9:01发生的第一活动的时间戳和周五上午9:07发生的第二活动的时间戳可能被确定为具有类似或共同的时间戳特征。)
活动模式确定器266通常负责基于在用户活动信息中标识的相似性来确定用户活动模式。具体地,活动模式确定器266(或活动模式推断引擎260)可以基于与多个观察到的活动事件相关联的类似活动特征的重复来确定用户活动模式。因此,例如,可以确定活动模式,其中与两个或更多个活动事件相对应的活动特征相类似。在一些实例中,活动事件可以具有许多对应的活动特征,其可以被表示为与特定活动事件相关联的特征向量。因而,由活动模式确定器266执行的分析可以涉及比较来自多个活动事件的特征向量的活动特征。
在一些实施例中,可以使用模式推断逻辑230来确定活动模式。模式推断逻辑可以包括规则、关联、条件、预测和/或分类模型、或模式推断算法。模式推断逻辑230可以依据用于标识活动模式或者标识观察到的活动事件之间的特征相似性以确定模式的特定活动模式或机制而采取许多不同的形式。例如,如下文进一步所描述的,模式推断逻辑230的一些实施例可以采用机器学习机制来确定特征相似性、或者用于确定属于支持所确定的活动模式的“示例用户动作”集合的活动事件的其他统计测量。可以从用户活动监视器280接收用户活动信息,并且可以从特征相似性标识器264接收关于标所识的类似特征的信息。在一些实施例中,由活动模式确定器266确定的一个或多个用户模式可以被存储为用户简档240中的所推断的用户例行工作248。
在一些实施例中,活动模式确定器266提供用户活动模式和关于用户模式的强度的相关联的置信度分数,其可以反映未来用户活动将遵循该模式的似然性。更具体地,在一些实施例中,可以确定关于所确定的用户活动模式的对应的置信度权重或置信度分数。置信度分数可以基于模式的强度,该模式的强度可以基于用于确定模式的(特定用户活动事件的)观察次数、用户的动作与活动模式相符的频率、活动观察的年龄或新鲜度、类似特征的数目、特征的类型和/或与构成该模式的活动观察共同的特征的类似程度、或类似的测量来确定。
在一些实例中,当向活动模式消费者270提供确定的活动模式时,可以考虑置信度分数。例如,在一些实施例中,在活动模式消费者270使用活动模式提供改进的用户体验或其他服务之前,可能需要最小置信度分数。在一个实施例中,利用0.6(或刚好超过50%)的阈值,使得仅可以提供具有预测用户活动的似然性为0.6(或更大)的活动模式。尽管如此,由于附加的观察可以增加用于特定模式的置信度,所以在使用置信度分数和阈值的情况下,仍然可以基于附加的活动观察来监视和更新所确定的具有小于阈值的置信度分数的用户活动模式。
活动模式确定器266的一些实施例根据下文所描述的示例途径来确定模式,其中用户活动事件的每个实例具有形成模式的所追踪的活动特征(变量)的对应历史值,并且其中活动模式确定器266可以评估用于模式的所追踪的变量的分布。在以下示例中,用户活动事件的所追踪的变量是与所观察到的用户活动事件的实例相对应的时间戳。然而,应当领会,在概念上,以下内容可以应用于追踪的活动特征(变量)的不同类型的历史值。
时间戳(即,给定所追踪的变量的值)包可以被表示为并且被映射到一周中的小时数和天数的二维直方图。二维直方图可以包括用户-设备交互实例的总和,诸如:
该直方图可以用来确定派生直方图。例如,周直方图的天可能对应于hj=∑ihij天直方图的小时可能对应于hi=∑jhij。作为进一步的示例,可以针对形式为hiC=∑j∈Chij的特定语义时间分辨率确定一个或多个直方图。可以采用各种语义时间分辨率中的任一种分辨率,诸如工作日和周末、或上午、下午和晚上。后者的示例是C∈{上午,下午,晚上},上午={9,10,11},下午={12,13,14,15,16}以及晚上={21,22,23,24}的情况。
用于表示事件的附加数据结构可以包括其中具有至少一个时间戳的每个日历周中的不同时间戳的数目,其可以被表示为:
作为示例,可以表示在可用时间戳的第二个三周时段期间不同时间戳的数目。N(j)可以用来表示追踪的数据中可用的j-周时间戳的数目;例如,N(3)表示时间戳中可用的三周时段的数目。
活动模式确定器266(或活动模式推断引擎260)可以生成置信度分数,其量化由所追踪的变量中的历史值形成的特定模式的确定性水平。在以下示例中,利用贝叶斯统计来应用上述原理。在一些实现方式中,可以针对由变化的分辨率的时间间隔所索引的对应的所追踪的变量生成置信度分数。对于时间戳,示例包括周二上午9点、工作日上午和周三下午。可以通过应用Dirchlet-多项式模型和计算每个时段直方图的后验预测分布来计算置信度分数。在这样做时,特定直方图中的每个仓的预测可以由下式给出:
其中K表示仓的数目,α0是编码先验知识的强度的参数,并且然后,模式预测是与i*相对应的直方图的仓,其置信度由xi*给出。作为示例,考虑直方图,其中上午=3,下午=4,晚上=3。使用α0=10模式预测是下午,并且置信度分数为按照各种实现方式,更多的观察导致置信度分数增加,指示预测的置信度增加。作为示例,考虑直方图,其中上午=3000,下午=4000,晚上=3000。使用类似的计算,置信度分数为
此外,在一些实现方式中,可以针对由时段和若干个时间戳所索引的对应所追踪的变量生成置信度分数。示例包括每周访问1次、以及每2周访问3次。使用高斯后验,可以针对每个时段分辨率的模式生成置信度分数,其被指示为j。这可以通过采用以下公式来实现:
其中
在前文中,σ2是样本方差,并且和μ0是公式的参数。可以通过在时间戳预测的数目周围采取固定间隔并且计算累积密度来计算置信度分数:
其中
作为示例,考虑以下观察:w1 (1)=10,w2 (1)=1,w3 (1)=10,w4 (1)=10,w4 (1)=0,w1 (2)=11,并且w2 (2)=10。N(1)=4和N(2)=2。使用μ0=1和σ02=10,μ(1)=4.075,conf1=0.25。更进一步地,μ(2)=10.31和conf2=0.99。在前面的示例中,尽管两周时段内有更少的时间戳可用,但用户信号中方差减少导致模式存在的置信度增加。
已经确定模式存在或者模式的置信度分数足够高(例如,满足阈值)之后,活动模式确定器266可以标识多个用户活动与用于用户的用户活动模式相对应。作为进一步的示例,活动模式确定器266可以确定用户可能跟随用户活动模式,其中一个或多个所追踪的变量的置信度分数中的一个或多个置信度分数满足阈值。
在一些实施例中,如先前所描述的,可以通过监视一个或多个活动特征来确定用户活动模式。这些监视的活动特征可以根据先前被描述为所追踪的变量的用户数据或者结合用户数据收集部件210所描述的用户数据来确定。在一些情况下,变量可以表示多个用户动作(活动事件)之中的上下文相似性和/或语义相似性。这样,可以通过检测多个用户动作共同的变量或特征来标识模式。更具体地,与第一用户动作相关联的特征可以与第二用户动作的特征相关以确定可能的模式。所标识的特征模式可能变得更强(即,更可能的或更可预测的),如果组成该模式的用户活动观察被重复得越频繁。类似地,特定特征可以在用户活动模式被重复时与用户活动模式更强地相关联。
在一些实施例(诸如系统200中所示的示例实施例)中,活动模式确定器266包括一个或多个基于模式的预测器267。基于模式的预测器267包括用于预测用户基于模式(诸如行为模式或相似性特征)而所采取的下一个用户动作或未来的用户动作的一个或多个预测器。在高层次上,基于模式的预测器267接收与用户活动相关联的用户活动信息和/或活动特征,并且确定对用户所采取的下一个动作或未来的动作的预测。在实施例中,基于模式的预测器267包括如下文进一步所描述的功能,其用于执行用户活动过滤、确定活动分数、基于分数来选择活动、以及确定特定的基于模式的预测。
在一个实施例中,基于模式的预测器267使用特征相似性标识器264来确定历史用户活动和最近用户活动之间共同的特征或模式。例如,可以从历史用户动作集合之中根据与当前用户动作或最近用户动作具有共同的周期性特征的那些历史动作确定周期性特征的相似性。因此,例如,如果最近用户动作发生在周一、每月的第一天、偶数周或工作日,则确定周期性特征相似性可能包括标识具有指示用户操作发生在周一的那些历史用户动作、具有对应于该月的第一天(任何第一天,而不仅仅是周一)的特征的历史用户动作、或者发生在偶数周或者工作日的那些用户动作。类似地,可以确定行为特征相似性以标识具有与当前用户动作或最近用户动作共同的特定行为特征的历史用户动作集合。例如,如果最近用户动作包括访问新闻相关网站,则确定行为特征相似性将包括标识具有指示用户访问新闻相关网站的特征的那些历史用户动作。
用户活动过滤可以使用特征相似性确定来过滤掉历史用户动作并且仅保留具有与当前用户动作或最近用户动作共同的特定特征(或多个特征)的那些历史用户动作。因此,在一些实施例中,每个基于模式的预测器267可以被设计(或调谐)为用于基于特定特征(或多个特征)来确定预测;例如,当特征指示工作日、周末或周一、或特定app访问或应用使用持续时间等时,可能存在用于确定预测的基于模式的预测器267的子集。这样的基于模式的预测器267可能只需要与其预测模型相对应的那些历史用户动作。(在一些实施例中,这样的基于模式的预测器可以基于它们的模式预测的类型(预测模型)来利用特定的预测算法或模型。这些算法或模型可以与模式推断逻辑230一起存储在存储装置225中。)
因而,在一些实施例中,对于每个基于模式的预测器267,可以执行用户活动过滤以确定与该特定的基于模式的预测器267相关的历史用户动作集合,该特定的基于模式的预测器267可以包括例如基于周期特征的预测器、基于行为特征的预测器(其可以包括行为序列或先前用户动作序列)、独特或罕见的行为特征(诸如当用户在与类似的历史用户活动相比不寻常的时间执行活动时)或其他类型的基于特征的预测器。(在一些实施例中,特征相似性标识器264可以通过确定历史用户动作序列与最近用户动作序列之间的列文斯坦距离来确定用户活动序列相似性(例如,当前动作(或特定的最近动作)之前的最后K个用户动作的序列))。
另外,在可以执行用户活动过滤使得每个预测器267确定具有与其预测准则相对应的特征的历史用户动作的子集的实施例中,对于每个预测器267,对于通过过滤器的历史用户动作的子集,可以对特征子集执行用户动作评分。用户动作评分通常比较当前用户动作或最近用户动作和历史用户动作的子集中的特征的相似性(其可以被认为是上下文的比较),并且针对其特征的相似性对每个用户动作进行评分。具体地,一些实施例不仅对用于确定历史用户动作的子集的那些特征进行评分,而且还对当前动作或最近动作和历史动作中可用于比较的所有(或较多数目的)特征进行评分。在一些实施例中,使用布尔逻辑过程(即,特征必须为真或具有相同的模式,并且如果满足,则确定特定特征之间的差异)。例如,差异可以包括时间相关特征、使用持续时间、序列距离等的差异。在实施例中,确定这些差异并且将其代入sigmoid函数。进一步地,在实施例中,使用相似性阈值,其可以是预先确定的、可调谐的或自适应的、或者可以初始地被设置为基于用户群体的值、或者可以例如基于关于特定用户获知的经验信息、并且基于历史观察的数目可以是自适应的。相似性阈值可以用于确定特定历史用户动作是否与特定当前用户动作或最近用户动作“足够类似”,以便被考虑用于确定预测。在一些实施例中,可以确定表示相似性差异(或相似性分数)的向量,例如,在针对相似性对多个特征进行评估的情况下。
可以选择来自历史用户动作的子集的与特定当前用户动作或最近用户动作最类似(或足够类似)的用户动作。在一些实施例中,选择过程使用诸如上文所描述的相似性阈值来确定满足相似性阈值的那些历史用户动作。(尽管使用术语“选择”,但是应当设想,选择由计算机相关过程来执行,其不需要人来执行选择。)所选择的历史用户动作包括“示例用户动作”集合。
可以基于(或根据)示例用户动作集合中的历史用户动作来推断用户的下一个动作(或未来动作)的预测。在实施例中,所预测的下一个用户动作(或未来动作)是具有最高观察计数的下一个用户动作(即,最好基于示例用户动作集合而预测的下一个用户动作)。与预测相符的示例用户动作集合中的那些历史用户动作包括“预测支持集合”。在一些实施例中,可以例如基于预测支持集合的大小与观察(由用户动作过滤确定的子集中的历史用户动作)的总数目的比例来确定与预测相对应的预测概率。而且,在一些实施例中,预测还可以包括与一个或多个预测用户动作有关的附加信息,诸如表征一个或多个预测动作的活动特征。通过示例而非限制,如果预测动作是用户将向工作同事发送电子邮件,则附加活动特征可以指示特定的电子邮件收件人、电子邮件的主题、用户将访问他的电子邮件程序以撰写电子邮件的大致时间、或与预测动作有关的其他信息。相关信息还可以基于预测支持集合观察的活动特征来确定。
一些实施例还确定可以基于置信度区间(例如,二项式置信度区间)或其他适当的统计测量来确定的预测显著性。又进一步地,在一些实施例中,预测置信度可以基于预测概率和预测显著性(例如,预测概率和预测显著性的乘积)。因而,活动模式确定器266的一些实施例为基于模式的预测器267中的每个基于模式的预测器提供所预测的下一个(或未来的)用户动作或下一个(或未来的)动作的系列。
一些实施例从一个或多个基于模式的预测器267确定特定预测。在实施例中,利用其中一个或多个基于模式的预测器267投票的系综(ensemble)过程,并且基于系综-成员预测来确定选择。进一步地,在一些实施例中,可以基于关于用户动作的学习信息来对系综-成员预测器进行加权。在一个实施例中,一旦每个基于模式的预测器267已经提供预测,具有最高对应置信度的预测被确定为下一个(或未来的)所预测的用户动作,并且可以被认为是基于模式的(或基于历史的)预测。在一些实施例中,活动模式确定器266的输出可以被存储为用户简档240中的推断用户例行工作248,并且在一些实施例中可以被提供给活动模式消费者270。
继续参考图2,示例系统200包括一个或多个活动模式消费者270,其包括消耗活动模式信息以提供改进的用户体验的应用或服务。活动模式消费者270的示例可以包括但不限于内容个性化服务、用户意图推断服务、自动语音识别服务、设备功率管理服务和语义理解服务。
具体地,第一示例活动模式消费者270包括内容个性化服务。在一个实施例中,提供内容个性化引擎271以便于提供个性化用户体验。因此,内容个性化引擎271可以被认为是可以消费关于用户活动模式的信息的应用或服务(或应用或服务的集合)的一个示例,其可以包括如由本公开的实现方式所确定的未来用户动作的预测。
在高层次上,示例性内容个性化引擎271负责生成并且提供个性化用户体验的各个方面,诸如个性化内容或定制的向用户递送的内容。内容可以作为(诸如结合呈现部件220所描述的)个性化通知提供给用户,、可以提供给用户的应用或服务(诸如日历或日程安排应用)、或者可以被提供作为API的一部分,其可能被又一应用或服务所消费。在一个实施例中,个性化内容包括建议用户在用户手动执行活动之前的恰当时间执行相关活动。例如,在活动模式指示用户在月初附近访问其银行网站并且将财务信息录入到Excel文件中,则可以向用户提供询问用户“您想访问您的银行网站吗?”的建议。在做出肯定回应后,可能会提供自动导航到用户银行网站的浏览器实例。进一步地,当用户认可建议或当用户导航到银行网站时,可以自动打开特定的Excel文件。又进一步地,可以在方便的时间(诸如当用户在他的家中、在晚上、在月初附近等时)向用户提供该内容(这里是通知建议)。
在一个实施例中,个性化内容可以包括通知,该通知包括提醒、推荐、建议、请求、通信相关数据(例如,电子邮件、即时消息或呼叫通知),以某种方式与用户有关的信息、或以个性化方式提供给用户的其他内容。例如,可以在用户最可能希望接收它的时间提供内容,诸如根据指示用户即将开始工作相关活动的用户模式,在某一时刻提供工作相关通知,而非在可能不被考虑、被忽视或引起麻烦的时刻提供内容。
在提供个性化内容的另一示例中,在活动模式指示用户在特定商店购物时通常在线检查优惠券的情况下,则当用户数据指示用户已进入该商店或可能去该商店(其可以基于预测的未来活动来确定),用户可以被自动提供在线优惠券。进一步地,所提供的特定优惠券可以基于用户活动模式信息(其可以包括用户的购买习惯)而用于用户通常购买的物品(或用于来自竞争者的类似物品)。
在一些实施例中,内容个性化引擎271定制针对用户的内容以提供个性化用户体验。例如,内容个性化引擎271可以生成要被呈现给用户的个性化通知,其可以被提供给呈现部件220。可替代地,在其他实施例中,内容个性化引擎271生成通知内容并且使其可用于呈现部件220,其基于用户数据或用户活动模式信息来确定何时以及如何(即,以何种格式)呈现通知。例如,如果用户活动模式指示用户可能在与呈现特定通知相关的时间开车上班,则可能适合以音频格式提供该通知,从而将其个性化为用户的上下文。在一些实施例中,与呈现部件220结合操作的其他服务或应用确定或促进确定何时以及如何呈现个性化内容。个性化内容可以被存储在用户简档240中,诸如在个性化内容部件249中。
内容个性化引擎271的一些实施例评估用户内容以确定如何以适当的方式提供内容。例如,被确定为与工作相关的内容可以被保持不向用户呈现,直到用户活动模式指示用户可能正在进行工作相关活动。
第二示例活动模式消费者270包括用户意图推断服务。用户的意图可以基于用户活动模式信息来推断。具体地,每当用户与计算设备交互时,诸如当用户参与用户活动时,可以假定用户具有意图。在一个实施例中,用户活动模式可以连同由用户设备收集的关于特定用户交互(诸如用户请求或推荐)的传感器数据一起分析。可以基于确定与用户活动模式相符的可能意图来推断用户的意图。例如,在用户的午餐时间期间,用户可以执行在线搜索,意图是查找关于用户最喜欢的乐队R.E.M的信息,而不是关于快速眼动(REM)睡眠的信息。指示用户通常在他的午餐时间浏览音乐娱乐相关网站的用户活动模式和/或指示用户最近收听了R.E.M.的音乐的关于用户的其他活动模式信息可以用于解析用户对查询的意图,即,与音乐团体R.E.M有关的搜索结果,而不是与快速眼动有关的结果。作为另一示例,假设在开车回家的同时,用户向用户设备发出口头请求以“呼叫Pat”。然而,用户在他的联系人列表上有多个“Pat”,例如,该用户的兄弟被命名为Pat,并且该用户的几个朋友也被命名为Pat。基于指示用户通常在开车回家的同时呼叫他的家人的用户活动的推断模式,可以确定用户的意图是打电话给他的兄弟Pat,因为该意图与活动模式相符。
第三示例活动模式消费者270包括自动语音识别(ASR)服务。在本公开的一个实施例中,提供了具有改进的语音识别和理解的ASR服务。改进的ASR服务可以使用来自推断的用户活动模式的信息来更精确地解析、消除歧义或理解用户语音。具体地,用户的语音可以被解析为与用户活动模式信息相符。例如,假设对于特定用户,用户活动模式指示在午餐时间用户通常浏览新闻相关网站。假设某一天的中午12点左右,用户会向诸如之类的个人助理服务说出转到CNN.com(例如,“转到see en en点com”)的请求。但是,用户的请求在发音上听起来类似于转到CMM.com或转到CMN.com。而且,如果存在背景噪声,则用户的口头请求可能更难以识别。然而,来自推断的用户活动模式的、指示用户通常浏览新闻相关网站的信息可以用于更准确地解析和理解用户语音。这里,改进的ASR服务可以确定用户可能说的是“CNN.com”而不是CMN.com或CMM.com,因为CMN.com和CMM.com不是新闻相关网站;CNN.com是新闻相关网站;以及在中午12:00左右导航到CNN.com与在午餐时间浏览新闻相关网站的用户活动模式相符。
第四示例活动模式消费者270包括设备功率管理服务。例如,在本公开的一个实施例中,提供了一种设备功率管理服务,其基于用户活动模式信息来调节用户设备的功耗。具体地,基于用户通常对他的移动设备充电的时间的模式,当确定直到通常充电时间为止的时间足够长,以至于基于电池能量的平均消耗,预计设备将在用户通常对设备充电的时间之前耗尽电池电量,则功率管理服务可以实现节电措施以减少电池消耗。例如,功率管理服务可以自动将设备切换到节电模式。类似地,如果确定用户位于或将位于用户先前对他的用户设备充电的位置(其可以基于与对用户设备充电有关的用户活动相关联的位置上下文信息来确定),则可以向用户提供推荐用户对其用户设备充电的通知。
第五示例活动模式消费者270包括通信管理服务。具体地,根据从用户活动模式导出的信息,可以更有效地利用网络带宽和其他通信相关资源。例如,假设用户在周五晚上具有观看流式传输的或下载的高清电影(例如,4k电影)的模式。通信管理服务的一个实施例可以在观看电影之前缓存或缓冲电影,以使其可以不中断地观看。(这对于与正在同时观看流式传输电影的其他用户共享网络带宽的用户特别有用,这种同时观看减少了可用的网络带宽。)在一些实施例中,特定电影(或者可能被用户观看的几个电影)可以从用户的观看列表中确定,或者可以基于从监视的用户活动(诸如用户品味、因特网搜索、由用户的社交媒体朋友所观看的电影等)导出的信息来推断。如先前所描述的,一些实施例可以使用上下文信息(诸如用户的日历信息)来确定用户将遵循该模式的似然性。因此,在用户的日历指示事件被安排在下周五晚上的情况下,则可以确定,因为用户不太可能观看电影,所以不需要在下周五晚上之前下载电影。进一步地,在一些实施例中,在用户具有数据封顶的情况下或者在网络速度被封顶或以其他方式被限制的情况下,可以在较早的时间下载电影,使得电影在周五晚上已经可供观看。又进一步地,在一些实施例中,可以在下载特定电影之前,提示用户用户是否有兴趣观看该电影。
活动模式消费者270的其他示例可以包括但不限于:(a)基于用户模式和上下文信息向用户建议新内容的推荐服务。例如,用户活动模式指示用户每周五晚上收听音乐。上下文信息指示用户偏好某些乐队或音乐风格。因而,在给定的周五晚上,向用户提供推荐以收听具有与用户的品味类似的风格的新的艺术家,(b)用户具有去音乐演唱会以观看演唱用户经常欣赏的歌曲的乐队的活动模式。个人助理应用服务监视本地音乐会,并且确定演唱用户所收听的歌曲的乐队要来本地了。个人助理应用当门票首次可用时,自动为用户购买门票。可替代地,个人助理服务检查用户的日历以确定用户在音乐会的日期有空,然后提示用户,向用户通知音乐会,并且在一些实施例中,询问用户是否希望个人助理服务来购买门票,(c)用户具有在周五晚上观看在线电影的活动模式。个人助理服务基于关于用户的书籍购买和/或电子阅读器活动的信息来确定用户阅读某些流派的书籍。基于用户对书籍的品味,可以向用户推荐用户可能喜欢的电影。所推荐的电影可能在周五晚上之前以节省带宽的方式被自动下载。
示例系统200还包括呈现部件220,其通常负责向用户呈现内容和相关信息,诸如来自内容个性化引擎271的个性化内容或来自其他活动模式消费者270的内容。呈现部件220可以包括用户设备上、跨多个用户设备或在云中的一个或多个应用或服务。例如,在一个实施例中,呈现部件220管理跨与用户相关联的多个用户设备向该用户呈现内容。基于内容逻辑、设备特征、相关联的中心、推断的用户的逻辑位置和/或其他用户数据,呈现部件220可以确定在哪个(哪些)用户设备上呈现内容以及该呈现的上下文,诸如如何呈现它(或以何种格式和多少内容,其可以取决于用户装置或上下文)、何时呈现等。具体地,在一些实施例中,呈现部件220将内容逻辑应用于设备特征、相关联的逻辑集线器、所推断的逻辑位置或感测到的用户数据,以确定内容呈现的各个方面。
在一些实施例中,呈现部件220生成与个性化内容相关联的用户界面特征。这些特征可以包括界面元素(诸如图形按钮、滑块、菜单、音频提示、警告、警报、振动、弹出窗口、通知栏或状态栏项目、app内通知或用于与用户对接的其他类似特征)、查询和提示。
如先前所描述的,在一些实施例中,结合呈现部件220操作的个人助理服务或应用确定何时以及如何呈现内容(例如,当确定用户处于特定逻辑位置时呈现)。在这样的实施例中,包括内容逻辑的内容可以被理解为对呈现部件220(和/或个人助理服务或应用)的、针对何时以及如何呈现通知的推荐,其可以被个人助理app或呈现部件220重载(override)。
示例系统200还包括存储装置225。存储装置225通常存储包括本文中所描述的实施例中使用的数据、计算机指令(例如,软件程序指令、例程或服务)、逻辑、简档和/或模型的信息。在实施例中,存储装置225包括数据存储装置(或计算机数据存储器)。进一步地,尽管被描绘为单个数据存储部件,但是存储装置225可以体现为一个或多个数据存储装置或者可以在云中。
如示例系统200所示,存储装置225包括如先前所描述的活动模式推断逻辑230和用户简档240。在图2中说明性地提供了用户简档240的一个示例实施例。示例用户简档240包括与特定用户相关联的信息,诸如用户活动信息242、关于用户账户和设备244的信息、用户偏好246、推断的用户例行工作248和个性化内容249。存储在用户简档240中的信息可用于活动模式推断引擎260或示例系统200的其他部件。
如先前所描述的,用户活动信息242通常包括关于用户动作或活动事件的用户信息、相关上下文信息、活动特征或经由用户活动监视器280确定的其他信息,并且可以包括历史或当前用户活动信息。用户账户和设备244通常包括关于所访问的、使用的或以其他方式与用户相关联的用户设备的信息,和/或和与用户相关联的用户账户有关的信息,例如,诸如网络护照之类的在线或基于云的账户(例如,电子邮件、社交媒体),诸如娱乐或游戏相关账户之类的其他账户(例如,Xbox Live、Netflix、在线游戏订阅账户等),与这些账户有关的用户数据(诸如用户电子邮件、文本、即时消息、通话、其他通信和其他内容);社交网络账户和数据,诸如新闻馈源;在线活动;以及日历、约会、应用数据、其他用户帐户等。用户账户和设备244的一些实施例可以跨一个或多个数据库、知识图或数据结构存储信息。如先前所描述的,可以从用户数据收集部件210或用户活动监视器280(包括其子部件中的一个子部件)确定存储在用户帐户和设备244中的信息。
用户偏好246通常包括与用户活动监视相关联的用户设置或偏好。通过示例而非限制,如本文中所描述的,这样的设置可以包括关于用户期望被明确地监视或不被监视的特定活动(和相关信息)的用户偏好,或者要被监视或不被监视的活动的类别;众包偏好,诸如是否使用众包的信息;或者用户的活动模式信息是否可以共享为众包数据;关于哪些活动模式消费者可能消费用户的活动模式信息的偏好;以及阈值和/或通知偏好。如先前所描述的,推断的用户例行工作248可以包括由活动模式确定器266确定的一个或多个用户模式,并且还可以包括与模式相关联的置信度分数和/或与活动模式有关的信息,诸如上下文信息或语义信息。个性化内容249包括从内容个性化引擎271确定的诸如未决或计划的通知的个性化内容。
现在参考图3,提供了用于确定用户活动模式的示例系统的各方面并且通常将其称为系统300。示例系统300可以基于来自跨多个设备的浏览活动和应用活动来确定用户活动模式。如所示出的,示例系统300包括一个或多个客户端设备302、推断系统350、以及一个或多个活动模式消费者370。在各种实施例中,客户端设备302可以体现为用户设备,诸如图1所描述的用户设备102a。客户端设备302包括app活动记录流水线383和浏览活动记录流水线385。这些记录流水线可以体现为在与用户相关联的每个用户设备上运行的客户端侧应用或服务,并且在一些实施例中可以结合应用或在应用内部(或作为应用的一部分)运行,诸如在浏览器内运行或作为浏览器插件或扩展运行。一般而言,app活动记录流水线383管理用户的应用(或app)活动的记录,诸如应用下载、启动、访问、使用(其可以包括持续时间)、经由应用的文件访问和应用内用户活动(其可能包括应用内容)。一般而言,浏览活动记录流水线385管理用户的浏览活动的记录,诸如所访问的网站、社交媒体活动(其可以包括经由特定浏览器或如等之类的app进行的浏览型活动)、所下载的内容、所访问的文件以及其他浏览相关用户活动。在一些实施例中,app活动记录流水线383和浏览活动记录流水线385进一步包括结合图2中的系统200的应用活动记录流水线283和浏览活动记录流水线285所描述的实施例的功能。
如系统300所示,推断系统350包括活动模式推断引擎360,其从一个或多个客户端设备302接收app活动和浏览活动并且使用该信息来推断活动模式。活动模式推断引擎360可以体现为结合图2描述的活动模式推断引擎260的实施例。进一步地,推断系统350的一些实施例还可以包括其他推断引擎(未示出)。例如,其他推断引擎可以包括部件,其用于确定场所访问推断(即,推断未来的场所访问或场所访问的模式);位置推断(即,当明确的位置信息不可用时,推断用户的位置);或阴影日历,其可以包括关于用户空闲性的、基于明确的和推断的计划的事件的推断。
推断系统350可以向活动模式消费者370提供推断的用户活动模式信息(包括预测的未来动作)。在一些实例中,活动模式消费者370可以体现为结合图2描述的活动模式消费者270。系统300的另一示例活动模式消费者370包括浏览器A 372(或与浏览器A相关联的服务),其根据预测的用户活动模式导航到网站;例如,在月初附近自动导航到用户的银行网站,其中用户具有在月初访问该网站的模式。再一个示例活动模式消费者370包括app B373,其可以根据预测的用户活动模式启动和/或加载文件,或者执行某些功能(例如,播放歌曲、撰写电子邮件等)。
现在参考图4,提供了流程图,其图示了用于推断用户活动模式的一个示例方法400。本文中所描述的方法400和其他方法的每个框或步骤包括可以使用硬件、固件和/或软件的任何组合来执行的计算过程。比如,各种功能可以由执行存储在存储器中的指令的处理器所执行。该方法还可以体现为存储在计算机存储介质上的计算机可用指令。这些方法可以由独立应用、服务或托管服务(独立或与其他托管服务组合)或到另一产品的插件等等提供。因而,方法400可以由一个或多个计算设备(诸如智能手机或其他用户设备、服务器、或由分布式计算平台(诸如云中的))执行。可以通过分析从与用户相关联的一个或多个用户设备收集的信号数据(或用户数据)来推断活动模式。
在步骤410处,标识与用户相关联的用户设备集合。步骤410的实施例可以基于监视用户数据中的用户设备相关信息来确定用户设备集合。在一些实施例中,在步骤410中标识的用户设备集合包括一个用户设备或多个用户设备,诸如结合图1所描述的用户设备102a至102n。
在一个实施例中,关于与用户相关联的用户设备的信息可以根据经由用户数据收集部件210提供的用户数据来确定,诸如结合图2的用户活动监视器280所描述的。例如,如先前所描述的,关于用户设备的信息可以诸如通过与用户设备相关联的一个或多个传感器感测或者以其他方式从用户数据中检测,或者可以通过检测和分析用户数据中的用户设备相关信息确定以确定用户设备的特性,诸如设备硬件、诸如操作系统(OS)之类的软件、网络相关特性、经由设备访问的用户账户、以及类似特性。在一个实施例中,可以以轮询、询问或以其他方式分析检测到的用户设备(诸如用户设备102a至102n)以确定关于设备的信息。在一些实现方式中,该信息可以用于确定设备的标签或标识(例如,设备ID),使得用户与一个设备的交互可以根据另一设备上的用户交互被识别。在步骤410的一些实施例中,可以基于用户提供的信息来标识用户设备,诸如用户声明或注册设备的情况,例如,通过经由用户设备登录账户,在设备上安装应用,连接到询问该设备的在线服务,或以其他方式向应用或服务提供关于该设备的信息。
在步骤420处,监视用户设备集合以检测用户活动事件。步骤420的实施例监视与在步骤410中标识的用户设备集合相关联的用户数据,以标识或检测用户活动事件(在本文中有时被称为用户动作)。在一些实例中,活动事件可以包括与一个或多个用户设备的用户交互系列或序列。
步骤420的一些实施例可以包括:使用与用户设备集合相关联的一个或多个传感器来监视传感器数据。如结合用户活动检测器282所描述的,步骤420的一些实施例可以使用活动事件逻辑来检测用户活动事件。进一步地,可以使用用户活动检测器部件(诸如图2的系统200中所描述的用户活动检测器部件)来执行步骤420的一些实现方式。结合图2中的用户活动检测器282提供步骤420的实施例的附加细节。
在步骤430处,确定与活动事件相关联的活动特征集合。当在步骤420中检测或以其他方式标识用户活动事件时,步骤430的实施例确定与检测到的活动事件相关联的活动特征集合。步骤430的一些实施例至少部分地基于由与用户设备集合相关联的一个或多个传感器提供的传感器数据(包括可以从诸如解释性数据的传感器数据导出的数据)来确定活动特征集合。在一些实施例中,传感器数据可以经由如图2中所描述的用户数据收集部件来提供。具体地,接收用户数据并且对其进行分析以确定与用户活动相关联的一个或多个特征的集合,该用户数据与检测到的活动事件有关,可以至少部分地根据传感器数据来确定,并且可以包括与所检测到的活动事件有关的解释性数据、上下文数据和/或语义信息。
如先前结合图2的用户活动监视器280和活动特征确定器286所描述的,与用户活动相关联的活动相关特征(或变量)可以用于标识用户活动模式。活动特征可以根据关于用户活动的信息来确定,该信息在一些实施例中可以包括关于所检测到的活动的相关上下文信息。下文结合图2的上下文信息提取器284对确定与检测到的活动事件有关的上下文信息的附加细节进行描述。进一步地,在一些实施例中,上下文信息可以包括根据对所检测到的活动事件和/或与活动事件相关联的一个或多个活动特征执行的语义分析所确定的语义信息。例如,虽然用户活动特征可以指示用户访问的特定网站,但是语义分析可以确定网站的类别、相关网站、主题或题目、或与网站或用户活动相关联的其他实体。根据语义分析,可以确定与用户活动语义上有关的附加的用户活动相关特征并且将其用于标识用户活动模式。结合图2的语义信息分析器262对确定包括与检测到的活动事件有关的语义信息的活动特征的附加细节进行描述。
活动相关特征的示例可以包括但不限于位置相关特征,诸如在用户活动期间、用户活动之前和/或之后一个或多个用户设备的位置、与位置相关联的场所相关信息、或其他位置相关信息;时间相关特征,诸如一天或多天的时间,用户活动的一周或一月中的一天、或者活动的持续时间,或者相关的持续时间信息,诸如用户使用与活动相关联的应用多久;内容相关特征,诸如用户的在线活动(例如,搜索、浏览的网站、网站的类型或类别、购买、社交网络活动、包括社交媒体帖子在内的所发送或接收的通信,其可以包括发生在在检测到的活动事件之前或之后的在线活动);可以与用户活动并发或在用户活动时间附近检测到的其他特征;或可以被检测或感测并且用于确定用户活动的模式的任何其他特征,其包括可以表征活动的各方面、活动的性质或类型、和/或构成活动的用户交互的语义特征。特征还可以包括关于使用该设备的一个或多个用户的信息;以及其他上下文特征,诸如用户设备相关特征、使用相关特征;或关于用户的其他信息。通过示例而非限制,用户设备相关特征可以包括关于设备类型(例如,桌面、平板电脑、移动电话、健身追踪器、心率监视器等)、硬件属性或简档、OS或固件属性、设备ID或型号;网络相关信息(例如,mac地址、网络名称、IP地址、域、工作组、关于本地网络上检测到的其他设备的信息、路由器信息、代理或VPN信息、其他网络连接信息等);关于用户设备的位置/运动/方位相关信息;功率信息,诸如电池电量、连接/断开充电器的时间、以及用户访问/触摸信息;使用相关特征可以包括关于以下各项的信息:所访问的一个或多个文件、app使用(其还可以包括应用数据、app内使用、并发运行的应用)、网络使用信息、所访问或以其他方式使用的一个或多个用户帐户(诸如一个或多个设备帐户、一个或多个OS级帐户或一个或多个在线/云服务相关帐户的活动(诸如帐户或网络护照、一个或多个在线存储帐户、电子邮件、日历或社交网络帐户)等);标识用户的其他信息可以包括登录密码、可以由健身追踪器或生物测定扫描仪提供的生物测定数据、和/或使用设备的一个或多个用户的特性,其对于区分开由多于一个用户共享的设备上的用户可能是有用的。
在步骤430的一些实施例中,可以利用(结合用户活动检测器282描述的)用户活动事件逻辑来标识与检测到的用户活动事件相关联的特定特征。步骤430的一些实现方式可以使用活动特征确定器部件(诸如图2的系统200中所描述的)来执行。结合图2中的活动特征确定器部件286来提供步骤430的实施例的附加细节。
在步骤440处,检测到的活动事件的记录和与该事件相关联的活动特征被存储在活动事件数据存储装置中。活动事件数据存储装置可以包括关于活动事件的多个记录,其中每个记录可以包括关于特定活动事件的信息,其包括与活动事件相关联的一个或多个活动特征。在一些实施例中,活动事件数据存储装置中的多个记录包括根据方法400的步骤410至430确定的其他活动事件的记录。在一些实例中,如先前所描述的,一些其他记录可以包括关于从被确定为与特定用户类似的其他用户导出的活动事件(包括关联的活动特征)的信息。在实施例中,活动事件数据存储装置包括用户简档,并且可以存储在用户活动信息部件(诸如结合图2描述的用户简档240的用户活动信息部件242)中。
在步骤450处,活动模式推断引擎用于标识活动模式。在步骤450的实施例中,可以基于对多个活动事件记录的至少一部分的分析来检测活动模式,以标识具有类似活动特征的活动事件集合。因此,步骤450的实施例可以包括确定具有共同特征的用户活动事件集合,其可以使用特征相似性标识器部件(诸如图2的系统200中描述的特征相似性标识器264)来确定。
在实施例中,如先前结合活动模式确定器266所描述的,具有类似活动特征的活动事件集合可以包括形成模式的基础的两个或更多个活动事件。在一些实施例中,如先前所描述的,类似活动特征可以与活动事件中的两个或更多个活动事件相同、可以基本上类似、或者可以根据相似性阈值足够类似。进一步地,一些实施例可以确定与活动模式相关联的对应置信度分数。在一些实例中,置信度分数可以指示用户将根据该模式表现的似然性,并且可以用于确定是否向活动模式消费者服务(诸如结合图2所描述的活动模式消费者服务)提供活动模式信息。在一些实施例中,可以利用一个或多个基于模式的预测器,诸如结合图2所描述的基于模式的预测器。
步骤450可以由活动模式推断引擎执行,诸如结合图2的系统200描述的活动模式推断引擎260或其子部件中的一个子部件。结合图2的活动模式推断引擎260,提供了步骤450的实施例的附加细节。
在步骤460处,活动模式被存储在活动模式数据存储装置中。在实施例中,活动模式数据存储装置包括用户简档,并且可以存储在推断的用户例行工作部件(诸如结合图2描述的用户简档240的推断用户例行工作248)中。活动模式可以由一个或多个计算应用访问,该一个或多个计算应用为用户提供增强或改进的计算体验,诸如提供个性化服务(例如,个性化内容或定制向用户递送内容,如本文中所描述的)、改进语音识别,更有效率地消耗带宽或功率,或者改进用户的语义理解,其可以用于执行消除歧义或理解来自用户的输入的其他方面。
在一些实施例中,一旦确定了活动模式,它就可以用于通过分析运用模式和/或关于用户活动的当前信息或最近信息来确定可能的未来活动事件将在从当前时间开始的阈值时间的未来时间(例如,在从当前时间开始的3小时、12小时、一天、五天、两周等时,或这些时间之内)发生。可能的未来活动事件可以与位置、时间、条件和/或情况(例如,未来活动可能发生在特定类型的事件之后,诸如在用户执行另一活动之后发生)以及可以用于促进改进的用户体验的其他上下文数据相关联。进一步地,如先前所描述的,在一些实施例中,用户活动模式或推断的用户意图或从其确定的未来活动的预测可以被提供给消费该信息并且提供改进的用户体验的一个或多个应用和服务,诸如结合图2和图3描述的活动模式消费者270,271,372或373。例如,在实施例中,提供修改的用户体验,其可以包括以个性化方式(诸如结合系统200(图2)的内容个性化引擎271描述的方式)向用户呈现(或隐藏、或延迟)内容。
在一些实施例中,可以利用云系统(诸如上文所描述的云系统)和/或云服务来执行方法400,以向多个服务提供改进或增强的用户体验(诸如个性化内容),这些服务可能在许多不同的用户设备上运行。如此,系统200可以通过集中某些功能来节省显著的处理、带宽、存储和计算资源。例如,用户数据收集部件210(图2)可以为多个用户或用户设备累积用户数据和解释性数据,使得每个用户设备不需要单独和冗余的数据收集和存储。附加地,通过从与用户密切相关的用户设备解除关联,可以使用户简档数据的处理和存储更加安全。
现在参考图5,提供了流程图,其图示了用于基于用户活动模式来确定可能的未来用户动作的一个示例方法500。在步骤510处,访问用于用户的所推断的活动模式。所推断的运用模式可以如先前参照图2、图3或图4所描述的那样确定。在实施例中,活动模式可以从活动模式数据存储装置(诸如结合图2描述的用户简档240的推断用户例行工作248)访问。如所提及的,用户可以与多种活动模式相关联。特定的经推断的模式可以与指示模式将被遵循的可能性(即,基于该模式的预测有多大可能性是正确的)的置信度水平或置信度分数相关联。
在步骤520处,基于活动模式来确定可能的未来活动事件。步骤530的实施例预测未来活动事件,其可以包括可能发生或用户可能期望发生的一个或一系列(或序列)未来的用户交互。在一些实施例中,步骤520还可以确定与所确定的可能的未来活动相关联的置信度分数,该置信度分数指示活动事件将发生或者被用户期望发生的似然性。在一些实施例中,可能的未来活动可以包括上下文,该上下文可以由位置、时间、用户行为或其他条件来限定,并且可以至少部分地基于传感器数据来确定。
例如,在一些实例中,如先前所描述的,着眼于周期性上下文或行为上下文来确定可能的未来活动事件,该周期性上下文或行为上下文可以根据周期性特征或行为特征定义。因此,周期性上下文定义何时可能发生与活动模式相关联的活动事件。例如,如果模式指示用户每周一、周三和周五执行特定活动,则可以针对任何周一、周三或周五确定未来活动事件。类似地,行为上下文定义当活动模式可能发生时呈现的上下文特征。例如,如果模式指示用户当访问某个场所时、在另一活动之后或另一条件显现时,执行特定活动(例如,用户每次访问特定商店时都会检查在线优惠券)。行为上下文还可以定义为否定的,以标识定义周期性上下文的例外的上下文特征。例如,用户可能不会在假期或者当用户不在中心或经常访问的场所时(诸如当用户正在旅行或度假时)执行某些活动。在针对可能的未来活动确定置信度分数的一些实施例中,可以基于上下文来进一步确定置信度分数。
在一些实施例中,可以部分地基于当前活动事件或最近发生的活动事件来确定上下文。具体地,在步骤520的一些实施例中,还可以基于当前用户活动事件或最近发生的用户活动事件来确定可能的未来活动。步骤520的一些实施例可以监视与用户相关联的一个或多个用户设备以检测当前用户活动事件或最近发生的用户活动事件。检测到的活动事件可以用于确定与上下文(例如,用户的当前情况)相关的特定用户活动模式和/或模式中的下一个活动事件或未来的活动事件。因而,在步骤520的这样的实施例中检测到的活动事件的新近度(recency)可以基于时间长度,使得上下文(例如,用户的当前情况)仍然与活动模式相关。因此,新近度可以根据特定的活动模式而变化。
在一些实施例中,当前活动事件或最近发生的活动事件基于来自一个或多个用户设备的传感器数据来确定。例如,步骤520的一些实施例可以包括使用与用户设备集合相关联的一个或多个传感器来监视传感器数据。可以如方法400的步骤420中所描述的那样执行步骤520的一些实施例,或者可以使用图2的系统200中所描述的用户活动检测器282来执行步骤520的一些实施例。
在步骤530处,基于所确定的可能的未来活动,可以向用户提供增强型用户体验。步骤530的实施例提供增强型用户体验,其可以采用至少部分地基于在步骤520中确定的可能的未来活动来确定的针对用户的定制的、修改的或个性化的服务的形式,并且还可以是基于相关联的置信度分数来确定。步骤530的实施例可以包括通过结合图2描述的一个或多个活动模式消费者270向用户提供服务。例如,在实施例中,增强型用户体验包括与可能的未来活动有关的推荐、通知、请求或建议中的一个。在一个实施例中,它包括在与所推断的活动模式相符的时间或位置处自动执行与可能的未来活动有关的动作。例如,在用户通常在月初附近浏览她的银行账户并且将来自银行网站的财务信息复制到电子表格的情况下,步骤530的实施例可以自动执行以下操作:启动浏览器,导航到银行网站,以及将电子表格文件加载到电子表格应用中。在一些实施例中,基于上下文,可以在适当时间(诸如在用户在家使用她通常用来访问银行网站的计算设备(用户设备)的时候、或者在用户不是正在驾驶时,因此无法从个性化用户体验中受益的时候)执行自动操作。本文中描述了增强型用户体验的其他示例,并且通过示例而非限制,包括个性化服务(例如,如本文中所描述的提供个性化内容或定制向用户递送的内容)、改进的语音识别、更有效的带宽或功率消费、或者改进的用户的语义理解,其可以用于执行消除歧义或理解来自用户的输入的其他方面。
现在转到图6,提供了流程图,该流程图图示了用于执行消除歧义以确定用户意图的一个示例方法600。
在步骤610处,接收与用户设备的用户交互的指示。用户交互的指示可以至少部分地基于由与用户设备相关联的一个或多个传感器提供的传感器数据。用户交互可以与特定用户活动相关联,该特定用户活动与用户意图(用户意向)相关联,诸如例如,进行搜索查询,请求发起与某人的呼叫(或电子邮件、即时消息、其他通信)、或发出语音命令。
在步骤620处,确定与用户交互相关联的可能的用户意图集合。步骤620的实施例标识可能的用户意图集合,其使得有必要执行消除歧义以便确定用户的实际意图。例如,在用户交互与语音命令相关的情况下,该意图集合可以与用户话语的不同计算机解释(例如,是讲出“CNN.com”并且因此意图导航到新闻网站,还是讲出“CMN.com并且意图导航到消费者媒体网络(Consumer Media Network)网站)相对应。相似地,在用户正在执行搜索查询的情况下,用户的意图为搜索结果(例如,在用户的搜索项是R.E.M.的情况下,用户意图是对该音乐乐队还是对REM睡眠进行搜索)。
在步骤630处,访问所推断的用户活动模式。步骤630的实施例可以访问如方法500的步骤510中所描述的所推断的用户活动模式。进一步地,可以基于上下文(诸如步骤520中所描述的上下文)来确定所访问的特定的所推断的用户活动模式。具体地,可以根据与用户的当前情况相关的位置、时间、用户行为或活动和/或在步骤610中所指示的用户交互来确定上下文。在步骤630的一些实施例中,访问多个用户活动模式。如本文中所描述的,每个用户活动模式可以包括反映该模式将被遵循的似然性的相关联的置信度分数。
在步骤640处,基于在步骤630中确定的活动模式来确定可能的未来活动事件。步骤640的一些实施例进一步基于结合步骤630所描述的上下文来确定可能的未来活动事件。步骤640的一些实施例可以如方法500的步骤520中所描述的那样被执行。
在步骤650处,选择与可能的未来活动最相符的用户意图。步骤650的实施例根据在步骤620中确定的与可能的未来活动最相符的可能用户意图集合来确定用户意图。具体地,相符性可以通过进行分析以确定根据意图集合中的每个意图执行操作是否会导致具有与在步骤630中所访问的活动模式相同的活动特征的活动来确定。例如,假设用户具有在下班开车回家的同时浏览呼叫家庭成员的习惯,用户有一个兄弟和几个叫Pat的朋友,并且发出语音命令以“呼叫Pat”。上下文指示用户正在开车,刚刚离开他的办公室,并且这是工作日的结束。因而,该意图集合包括意图呼叫名为Pat的用户的联系人中的每个联系人。但是只有意图中的其中一个——呼叫其兄弟的意图与用户在下班开车回家的同时呼叫家庭成员的活动模式相符。因此,这个意图将被选中。通过这样的方式,执行歧义消除。
在一些实施例中,根据与可能的未来活动的相符性,在步骤650中对在步骤620中所确定的可能的用户意图集合进行排序。具体地,在方法600的一些实施例中,访问多于一个用户活动模式,其中每个模式具有相关联的置信度分数,可以根据是正确的用户意图的似然性来对该可能的用户意图集合进行排序。然后,可以在步骤650中选择排序最高的意图并且在步骤660中使用。
在步骤660处,基于所选择的意图来执行与用户交互相关联的活动。步骤660的实施例执行与在步骤650中所选择的用户意图相关联的用户活动。因此,例如,继续在步骤650中所描述的示例,活动包括呼叫用户的兄弟Pat。
因而,我们已经描述了涉及用于推断用户意图并且预测与用户的计算设备相关联的未来用户活动的系统和方法的技术的各个方面,其可以用于提供增强的用户体验。应当理解,本文中所描述的实施例的各种特征、子组合和修改具有实用性,并且可以在其他实施例中采用,而不参考其他特征或子组合。而且,示例方法400,500和600中示出的步骤的次序和顺序并不意味着以任何方式限制本公开的范围,并且实际上,这些步骤可以在其实施例内以多种不同的顺序发生。这样的变型及其组合也被认为是在本公开的实施例的范围内。
已经描述了各种实现方式,现在对适用于实现本公开的实施例的示例性计算环境进行描述。参考图9,示例性计算设备被提供并且通常被称为计算设备900。计算设备900仅仅是合适的计算环境的一个示例,并不旨在对于本公开的实施例的使用范围或功能提出任何限制。计算设备900也不应被解释为具有与所图示的部件的任一个或任一组合有关的任何依赖或要求。
可以在计算机代码或机器可用指令的一般上下文中对本公开的实施例进行描述,这些计算机代码或机器可用指令包括由计算机或其他机器(诸如个人数据助理、智能手机、平板PC或其他手持式设备)执行的计算机可用指令或计算机可执行指令(诸如程序模块)。通常,包括例程、程序、对象、部件、数据结构等的程序模块指代执行特定任务或实现特定抽象数据类型的代码。本公开的实施例可以以多种系统配置来实践,其包括手持式设备、消费电子产品、通用计算机、更专业的计算设备等。本公开的实施例还可以在分布式计算环境中实践,其中任务由通过通信网络链接的远程处理设备执行。在分布式计算环境中,程序模块可以位于包括存储器存储设备的本地计算机存储介质和远程计算机存储介质二者中。
现在转到图7,提供了流程图,其图示了用于执行语音识别以确定用户期望执行的动作的一个示例方法700。用户操作可以是口头请求或命令(例如,“Cortana,请转到CNN网站”或“Cortana,请给Ed发消息,我快迟到了”)、问题或查询(例如,“Cortana,哪些餐馆靠近剧院?”或“Cortana,现在交通有多繁忙?”),或者与用户的愿望或意图相对应的其他方式。在高层次上,方法700的实施例可以识别并且理解与动作相关联的用户的话语。具体地,在基于用户的特定话语而可能存在歧义的情况下,方法700的实施例可以以与用户的活动模式相符的方式解析歧义,然后标识与当前所理解的话语相对应的动作,并且执行该动作。因此,使用上文的示例,方法700的实施例可以确定用户可能说出“CNN.com”而不是“CMN.com”,其中在说话时用户具有观看新闻相关内容的模式。基于这种理解,个人助理应用或服务(或浏览器)可以导航到CNN.com网站。相似地,在用户具有指示用户可能正在会见朋友Ed的活动模式的情况下,方法700的实施例可以确定用户可能说出“text Ed(给Ed发消息)”而不是“text Ted(给Ted发消息)”。相似地,方法700的一些实施例基于个性化表达或词语集合的语音识别来确定用户期望执行的动作。例如,说出“呼叫妈妈”的用户可以被确定为呼叫用户标识为“妈妈”的该用户的特定联系人,其可以基于上下文信息来确定。进一步地,可以从监视的活动中标识并且学习这样的昵称或个性化术语和表达,该监视的活动包括关于活动事件所提取的上下文信息(诸如结合图2的上下文信息提取器284或用户活动监视器280所描述的)。
因而,在步骤710处,接收与用户的话语相关联的信息。该信息可以至少部分地基于由与用户设备相关联的一个或多个传感器所提供的传感器数据来接收。话语可以与用户希望经由用户设备所执行的动作(诸如例如,进行搜索查询、请求发起与某人的呼叫(或电子邮件、即时消息、其他通信)、或者发出语音命令)相对应。
在步骤720处,确定与话语相对应的可能词语集合。步骤720的实施例标识可能由用户说出的词语集合。在一些实例中,该集合可以仅包括单个词语(或词语集合的每个成员可以仅包括单个词语)、短语、词语系列或短语系列。因此,该集合可以表示用户说出的可能的备选话语的集合。比如,使用上文的示例,该集合可以包括{“text Ed”,“text Ted”,“text Red”,“texted”等)。在步骤720的一些实施例中,可以基于可能词语的集合来确定上下文。比如,在先前示例中,上下文可以包括用户发短信给另一个人或与另一个人通信。在一些实施例中,上下文可以如结合图2中的上下文信息提取器284所描述的那样而被确定。
在步骤730处,访问所推断的用户活动模式。步骤730的实施例可以访问如方法500的步骤510或方法600的630中所描述的所推断的用户活动模式。进一步地,可以基于上下文(诸如步骤520中所描述的上下文)来确定所访问的特定的所推断用户活动模式。具体地,可以根据与用户的当前情况有关的位置、时间、用户行为或活动和/或与步骤710中的话语相关联的信息来确定上下文。
在步骤740处,基于在步骤730中确定的活动模式来确定可能的未来活动事件。步骤740的一些实施例进一步基于结合步骤730所描述的上下文来确定可能的未来活动事件。步骤740的一些实施例可以如方法500的步骤520中所描述的那样被执行。
在步骤750处,选择与可能的未来活动事件最相符的词语的子集。步骤750的实施例根据在步骤720中确定的可能的口头词语集合确定最可能由用户讲出的词语,该词语与在步骤750中确定的可能的未来活动最相符。具体地,相符性可以通过进行分析以确定根据与词语集合相关联的每个动作执行操作是否将导致具有与在步骤730中访问的活动模式相同的活动特征的动作来确定。例如,假设用户具有在下班开车回家的同时呼叫家庭成员的习惯,用户有名叫Pat的兄弟和名叫Matt的朋友,并且发出话音命令“呼叫Pat”。上下文指示用户正在开车、刚刚离开他的办公室、并且这是工作日的结束。因而,与用户话语相对应的词语集合至少包括“呼叫Pat”和“呼叫Matt”。但是这些词语中仅有一个——呼叫兄弟的词语与在下班开车回家的同时呼叫家庭成员的用户活动模式相符。因此,该词语子集(即,“呼叫Pat”)被选中。这样,对语音执行更准确的解析。
在步骤760处,确定与词语子集相对应的动作。步骤760的实施例确定与在步骤750中确定的词语子集相对应的动作。该动作可以包括由用户设备执行或促进的一个或多个服务、过程、例程、功能或相似活动,或者发起控制信号以使得部件执行该动作。比如,在先前示例中,该动作包括发起对Pat的呼叫(或者发起用于呼叫Pat的、针对电话上的通信部件的控制信号)。非限制性地,在步骤760中所确定的动作的其他示例可以包括其他通信(例如,发短信、发送电子邮件、即时消息传送、发帖等,其还可以包括撰写或创建用于通信的内容,诸如起草电子邮件消息),其执行查询、启动应用、导航到网站、播放特定多媒体内容、控制设备、服务、例程或功能的操作、执行命令、请求或能够经由用户设备执行或促进的任何其他动作。在步骤760的一些实施例中,根据用户设备能够执行或促进的动作的集合或库来确定动作。
在步骤770处,执行在步骤760中确定的动作。步骤770的实施例执行与在步骤750中所确定的词语子集相对应的动作。因此,例如,继续步骤750中所描述的示例,动作包括发起电话呼叫用户的兄弟Pat。步骤770的一些实施例包括发起控制信号以便于执行动作。比如,在用户要求开灯或将恒温器调整为更暖的情况下,步骤770可以向光控制器部件或智能恒温器发出控制信号(或请求或指定该动作的类似通信)。
现在转到图8,说明性地提供了描绘了根据本公开的实施例的计算机执行的语音识别(或自动语音识别(ASR))和理解系统的示例的透视图801。图8所示的ASR系统仅是适用于与本公开的用于确定所识别的语音的实施例一起使用的ASR系统的一个示例。应当设想,可以使用ASR系统或口语理解(SLU)系统(未示出)的其他变型,其包括比这里示出的示例ASR系统包括更少的部件的ASR系统、或者包括图8中未示出的附加部件的ASR系统。
透视图801示出了传感器850,其感测由用户扬声器895提供的声学信息(可听地讲出的词语或语音890)。传感器850可以包括一个或多个麦克风或声学传感器,其可以被体现为传感器103a或107或者在诸如图1中描述的用户设备102或104之类的用户设备上体现。传感器850将语音890转换为可以被提供给特征提取器855(或者在一些实施例中,可以被直接提供给解码器860)的声学信号信息853。在一些实施例中,声学信号可以在特征提取器855之前经历预处理(未示出)。特征提取器855通常执行特征分析以确定语音信号的参数化的有用特征,同时减少噪声或以其他方式丢弃冗余信息或不想要的信息。特征提取器855将声学信号变换成适合由解码器860使用的模型的特征858(其可以包括语音语料库)。
解码器860包括一个或多个声学模型(AM)865和语言模型(LM)870。在结合ASR(或SLU)系统实现的本公开的实施例中,特定实施例可以被实现为解码器860、LM 870、AM 865的子部件,或被实现为示例ASR(或SLU)系统中的单独部件(未示出)。
AM 865包括构成词语的不同声音的统计表示,其可以被指派被称为“表型组(phenome)”的标签。AM 865基于语音特征对phenome进行建模并且向LM 870提供语料库或词语集合,其可以包括与语音语料库相对应的词语序列,或者在一些实例中,包括备选序列集合,每个序列与用户讲话者895的可能话语相对应。LM 870接收词语语料库,并且确定所识别的语音880,其可以包括来自备选解释(或识别)集合的词语子集(其可以是单个词语、短语或多个词语或短语),该词语集合包括对话语的一个解释(或识别)。这样,可以确定表示由用户讲出的可能话语的词语子集。
因而,我们已经描述了涉及用于推断用户意图并且预测与用户的计算设备相关联的未来用户活动的系统和方法的技术的各个方面,其可以用于提供增强的用户体验。应当理解,本文中所描述的实施例的各种特征、子组合和修改具有实用性,并且可以在其他实施例中采用,而不参考其他特征或子组合。而且,示例方法400,500,600和700中所示的步骤的次序和顺序并不意味着以任何方式限制本公开的范围,并且实际上,这些步骤可以在其实施例内以各种不同的顺序发生。这样的变型及其组合也被认为是在本公开的实施例的范围内。
已经描述了各种实现方式,现在对适用于实现本公开的实施例的示例性计算环境进行了描述。参考图9,示例性计算设备被提供并且通常被称为计算设备900。计算设备900仅仅是合适的计算环境的一个示例,并不旨在对于本公开的实施例的使用范围或功能提出任何限制。计算设备900也不应被解释为具有与所图示的部件的任一个或任一些组合有关的任何依赖或要求。
可以在计算机代码或机器可用指令的一般上下文中对本公开的实施例进行描述,这些计算机代码或机器可用指令包括由计算机或其他机器(诸如个人数据助理、智能手机、平板PC或其他手持式设备)执行的计算机可用指令或计算机可执行指令(诸如程序模块)。通常,包括例程、程序、对象、部件、数据结构等的程序模块指代执行特定任务或实现特定抽象数据类型的代码。本公开的实施例可以以多种系统配置来实践,其包括手持式设备、消费电子产品、通用计算机、更专业的计算设备等。本公开的实施例还可以在分布式计算环境中实践,其中任务由通过通信网络链接的远程处理设备执行。在分布式计算环境中,程序模块可以位于包括存储器存储设备的本地计算机存储介质和远程计算机存储介质二者中。
如图9所示,计算设备900包括总线910,其直接或间接耦合以下设备:存储器912、一个或多个处理器914、一个或多个呈现部件916、一个或多个输入/输出(I/O)端口918、一个或更多I/O(I/O)部件920和说明性的电源922。总线910可以是表示一个或多个总线(诸如地址总线、数据总线或其组合)。尽管图9的各个框为了清楚起见用线条示出,但是实际上,这些框表示逻辑部件,不一定是实际部件。例如,可以将诸如显示设备之类的呈现部件看作是I/O部件。此外,处理器有存储器。本发明人认识到,这是本领域的性质,并且重申图9的图仅仅是说明性的、可以结合本公开的一个或多个实施例使用的示例性计算设备。在诸如“工作站”、“服务器”、“膝上型计算机”、“手持式设备”等的类别之间没有进行区分,因为它们均被涵盖在图9的范围内和对“计算设备”的引用范围内。
计算设备900通常包括多种计算机可读介质。计算机可读介质可以是任何可用介质,其可以由计算设备900访问,并且包括易失性介质和非易失性介质、可移除介质和不可移除介质。通过示例而非限制,计算机可读介质可以包括计算机存储介质和通信介质。计算机存储介质包括以用于存储诸如计算机可读指令、数据结构、程序模块或其他数据之类的信息的任何方法或技术实现的易失性介质和非易失性介质、可移除介质和不可移除介质。计算机存储介质包括但不限于RAM、ROM、EEPROM、闪存或其他存储器技术、CD-ROM、数字多功能盘(DVD)或其他光盘存储装置、磁带盒、磁带、磁盘存储装置或其他磁存储设备、或可以用于存储所需信息并且可以由计算设备900访问的任何其他介质。计算机存储介质本身不包含信号。通信介质通常以经调制的数据信号(诸如载波或其他传输机制)来体现计算机可读指令、数据结构、程序模块或其他数据,并且包括任何信息传递介质。术语“经调制的数据信号”意指具有以对信号中的信息进行编码的方式设置或改变其特性中的一个或多个特性的信号。通过示例而非限制,通信介质包括有线介质(诸如有线网络或直接有线连接)以及无线介质(诸如声学、RF、红外线和其他无线介质)。上述内容的任何组合也应当包括在计算机可读介质的范围内。
存储器912包括易失性存储器和/或非易失性存储器形式的计算机存储介质。存储器可以是可移除的、不可移除的或其组合。示例性硬件设备包括固态存储器、硬盘驱动器、光盘驱动器等。计算设备900包括从各种实体(诸如存储器912或I/O部件920)读取数据的一个或多个处理器914。一个或多个呈现部件916向用户或其他设备呈现数据指示。在一些实现方式中,系统200的呈现部件220可以被体现为呈现部件916。呈现部件的其他示例可以包括显示设备、扬声器、打印部件、振动部件等。
I/O端口918允许计算设备900逻辑地耦合到其他设备,其包括I/O部件920,其中一些可以被内置在其中。说明性部件包括麦克风、操纵杆、游戏手柄、卫星天线、扫描仪、打印机、无线设备等。I/O部件920可以提供处理由用户生成的空中手势、话音或其他生理输入的自然用户界面(NUI)。在一些实例中,输入可以被传送到适当的网络元件以供进一步处理。NUI可以实现语音识别、触摸和触笔识别、面部识别、生物测定识别、屏幕上和邻近屏幕的手势识别、空中手势、头部和眼睛追踪、以及与计算设备900上的显示相关联的触摸识别9的任意组合。计算设备900可以配备有深度相机,诸如立体相机系统、红外相机系统、RGB相机系统以及它们的组合,用于手势检测和识别。附加地,计算设备900可以配备有使得能够检测运动的加速度计或陀螺仪。加速度计或陀螺仪的输出可以被提供给计算设备900的显示器以再现沉浸式增强现实或虚拟现实。
计算设备900的一些实施例可以包括一个或多个无线电924(或类似的无线通信部件)。无线电924传送和接收无线电或无线通信。计算设备900可以是适于通过各种无线网络接收通信和介质的无线终端。计算设备900可以经由诸如码分多址(“CDMA”)、全球移动系统(“GSM”)或时分多址(“TDMA”)等之类的无线协议来通信,以与其他设备进行通信。无线电通信可以是短距离连接、远距离连接、或短距离无线电信连接和长距离无线电信连接的组合。当我们提到“短”和“长”类型的连接时,我们并不意指两个设备之间的空间关系。相反,我们通常将短距离和长距离称为不同类别或类型的连接(即,主要连接和次要连接)。通过示例而非限制,短距离连接可以包括到提供对无线通信网络(诸如使用802.11协议的WLAN连接)的接入的设备(例如,移动热点)的连接;到另一计算设备的蓝牙连接是短距离连接或近场通信连接的第二示例。通过示例而非限制,远距离连接可以包括使用以下各项中的一项或多项的连接:CDMA协议、GPRS协议、GSM协议、TDMA协议和802.16协议。
在不背离以下权利要求的范围的情况下,所描绘的各种部件的许多不同的布置以及未示出的部件都是可能的。已经描述了本公开的实施例,意图是说明性的而非限制性的。备选实施例在阅读本公开之后并且因为阅读它而变得明显。在不背离下文的权利要求的范围的情况下,可以完成上述内容的实施的备选方式。某些特征和子组合具有实用性,并且可以在不参考其他特征和子组合的情况下采用,并且被认为在权利要求的范围内。
因而,在一个方面中,本公开的实施例涉及一种计算机化系统,其包括一个或多个传感器,其被配置为提供传感器数据;用户活动监视器,其被配置为标识和监视用户设备和与该用户设备相关联的用户活动;活动模式推断引擎,其被配置为从多个活动事件中确定活动模式;一个或多个处理器;以及计算机存储存储器,其上存储有计算机可执行指令,这些计算机可执行指令在由处理器执行时,实现推断用户活动模式的方法。该方法包括:(a)标识与用户相关联的用户设备集合;(b)使用用户活动监视器监视用户设备集合以检测用户活动事件;(c)在检测到用户活动事件时,确定与活动事件相关联的活动特征集合,该活动特征集合至少部分地基于传感器数据而被确定;(d)将活动事件和相关活动特征的记录存储在包括多个活动事件的记录的活动事件数据存储库中;(e)使用活动模式推断引擎基于对多个活动事件的分析来标识活动模式以确定具有类似活动特征的活动事件集合;以及(f)将活动模式的描述存储在活动模式数据存储库中。
在该系统的一些实施例中,活动事件包括以下各项中的一项或多项:浏览网站、启动应用、发起通信、执行搜索查询、设置提醒或在日历上安排事件,并且相关活动特征集合包括与以下各项有关的一个或多个特征:与活动事件(内容特征)相关联的内容、活动事件的日期或时间(日期-时间特征)、活动事件的位置(位置特征)、与活动事件(设备使用特征)相关联的设备使用相关特征、或与活动事件相关联的上下文信息。进一步地,在一些实施例中,使用根据比较的活动特征的类别而预先确定的相似性阈值、基于相同类别的活动特征的比较,来确定活动特征是相似的,这些类别包括(通过示例而非限制)本文中所描述的内容特征、日期-时间特征、位置特征、设备使用特征或其他类型的活动特征。
在另一方面中,本公开的实施例涉及一种计算机化系统,其包括一个或多个传感器,被配置为提供传感器数据;一个或多个处理器;以及计算机存储存储器,其上存储有计算机可执行指令,这些计算机可执行指令当由处理器执行时,实现推断可能的未来用户动作的方法。该方法包括:(a)访问用户的经推断的用户活动模式;(b)基于活动模式和至少部分地根据传感器数据而被确定的上下文,来预测可能的未来活动事件;以及(c)基于所确定的可能的未来活动事件,来提供增强的用户体验。
在该系统的一个实施例中,所提供的增强的用户体验包括与可能的未来活动有关的推荐、通知、请求或建议中的一个。在另一实施例中,所提供的增强型用户体验包括在与所推断的用户活动模式相符的时间或位置处自动执行可能的未来活动。在又一实施例中,所预测的可能未来活动事件包括在未来的时刻将具有电池的用户设备连接到电源以对电池充电,并且增强的用户体验包括电池电量管理服务,其基于未来的时刻来减少用户设备的功耗。
在该系统的又一实施例中,所提供的增强型用户体验包括语音识别服务,并且一个或多个传感器中的至少一个传感器包括用户设备上的声学传感器,其配置为将语音转换为声学信息。用于语音识别服务实施例的方法进一步包括:(i)接收用户与用户设备的口头交互相对应的声学信息;(ii)基于声学信息的分析,确定与口头交互相对应的多个词语序列;(iii)选择与预测的可能的未来活动事件最相符的词语序列;以及(iv)提供所选择的词语序列作为与口头交互相对应的识别的语音。
在又一方面中,本公开的实施例涉及一种用于执行消除歧义以确定用户的用户意图的方法。该方法包括:(a)接收与用户设备的用户交互的指示,该用户交互与由用户设备执行的活动相关联,该指示至少部分地基于来自与用户设备相关联的一个或多个传感器的传感器数据;(b)确定与用户交互相对应的可能的用户意图集合;(c)访问用户的推断活动模式;(d)基于推断活动模式来确定可能的未来活动事件;(e)从可能的用户意图集合中选择与可能的未来活动事件最相符的用户意图;以及(f)基于所选择的意图来执行与用户交互相关联的活动。在该方法的一些实施例中,与用户交互相关联的活动包括搜索查询,并且还包括基于所选择的用户意图对要提供给用户的搜索结果进行过滤。

Claims (14)

1.一种计算机化系统,包括:
一个或多个传感器,被配置为提供传感器数据,所述传感器数据至少包括声学信息;
一个或多个处理器;以及
计算机存储存储器,其上存储有计算机可执行指令,所述计算机可执行指令在由所述处理器执行时实现一种语音识别方法,所述方法包括:
(1)从所述传感器数据接收与用户的话语相关联的信息,所述话语与所述用户所期望的动作相对应;
(2)确定与所述话语相对应的词语集合;
(3)访问针对所述用户的经推断的用户活动模式;
(4)基于所述活动模式和至少部分地根据所述词语集合所确定的上下文,来确定可能的未来活动事件;
(5)基于所确定的所述可能的未来活动事件,从所述词语集合确定词语子集;
(6)确定与所述词语子集相对应的动作;以及
(7)发起控制信号以执行所述动作。
2.根据权利要求1所述的计算机化系统,其中所述词语子集被确定为与所确定的所述可能的未来活动事件相符。
3.根据权利要求1所述的计算机化系统,其中所述活动事件包括以下一项或多项:浏览网站、启动应用、发起通信、执行搜索查询、设置提醒或在日历上安排事件。
4.根据权利要求1所述的计算机化系统,其中所述词语集合包括多个备选词语子集,每个子集与备选的可能用户动作相对应。
5.根据权利要求1所述的计算机化的系统,其中向所述用户提供所确定的所述词语子集的指示。
6.根据权利要求1所述的计算机化系统,还包括:部分基于所述可能的未来活动事件来确定所述动作。
7.根据权利要求1所述的计算机化系统,其中所述传感器数据进一步包括以下一项或多项:位置相关数据、时间相关数据、使用相关数据、或关于所述用户的数据,并且其中所述上下文进一步基于所述位置相关数据、所述时间相关数据、所述使用相关数据或所述关于所述用户的数据而被确定。
8.根据权利要求1所述的计算机化系统,其中所述话语包括口头要求、命令、或者将要经由用户计算设备执行的查询。
9.一种用于执行消除歧义以确定针对用户的用户意图的方法,包括:
接收与用户设备的用户交互的指示,所述用户交互与由所述用户设备执行的活动相关联,所述指示至少部分地基于来自与所述用户设备相关联的一个或多个传感器的传感器数据;
确定与所述用户交互相对应的可能的用户意图集合;
访问针对所述用户的经推断的活动模式;
基于所述经推断的活动模式来确定可能的未来活动事件;
基于所述可能的未来活动事件,从所述可能的用户意图集合确定特定的用户意图;以及
基于所选择的意图来执行与所述用户交互相关联的所述活动。
10.根据权利要求9所述的方法,其中与所述用户交互相关联的所述活动包括搜索查询,并且还包括基于所选择的用户意图来过滤要被提供给所述用户的搜索结果。
11.根据权利要求9所述的方法,其中确定特定的用户意图包括:从所述意图集合确定与所确定的可能的未来活动事件最相符的所述意图。
12.根据权利要求9所述的方法,其中所述传感器数据包括与所述用户说出的话语相对应的声学信息。
13.根据权利要求9所述的方法,其中所述可能的未来活动事件进一步基于与所述用户交互相关联的上下文而被确定。
14.根据权利要求13所述的方法,其中所述上下文基于所述传感器数据而被确定。
CN201680066544.5A 2015-11-13 2016-11-04 根据活动模式的计算机语音识别和语义理解 Active CN108351870B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111222376.3A CN113963697A (zh) 2015-11-13 2016-11-04 根据活动模式的计算机语音识别和语义理解

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US14/941,155 2015-11-13
US14/941,155 US11429883B2 (en) 2015-11-13 2015-11-13 Enhanced computer experience from activity prediction
US15/087,224 2016-03-31
US15/087,224 US10769189B2 (en) 2015-11-13 2016-03-31 Computer speech recognition and semantic understanding from activity patterns
PCT/US2016/060531 WO2017083191A1 (en) 2015-11-13 2016-11-04 Computer speech recognition and semantic understanding from activity patterns

Related Child Applications (1)

Application Number Title Priority Date Filing Date
CN202111222376.3A Division CN113963697A (zh) 2015-11-13 2016-11-04 根据活动模式的计算机语音识别和语义理解

Publications (2)

Publication Number Publication Date
CN108351870A true CN108351870A (zh) 2018-07-31
CN108351870B CN108351870B (zh) 2021-10-26

Family

ID=57485866

Family Applications (2)

Application Number Title Priority Date Filing Date
CN201680066544.5A Active CN108351870B (zh) 2015-11-13 2016-11-04 根据活动模式的计算机语音识别和语义理解
CN202111222376.3A Pending CN113963697A (zh) 2015-11-13 2016-11-04 根据活动模式的计算机语音识别和语义理解

Family Applications After (1)

Application Number Title Priority Date Filing Date
CN202111222376.3A Pending CN113963697A (zh) 2015-11-13 2016-11-04 根据活动模式的计算机语音识别和语义理解

Country Status (4)

Country Link
US (2) US10769189B2 (zh)
EP (1) EP3374939A1 (zh)
CN (2) CN108351870B (zh)
WO (1) WO2017083191A1 (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111814012A (zh) * 2020-07-10 2020-10-23 泰康保险集团股份有限公司 活动匹配方法、装置、介质及电子设备
CN111858936A (zh) * 2020-07-21 2020-10-30 龙马智芯(珠海横琴)科技有限公司 一种意图识别方法、装置、识别设备及可读存储介质
CN112335205A (zh) * 2018-08-22 2021-02-05 谷歌有限责任公司 用减少的用户输入自动解析一组用户的活动实例集合
CN112997171A (zh) * 2018-09-27 2021-06-18 谷歌有限责任公司 分析网页以促进自动导航

Families Citing this family (96)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9318108B2 (en) 2010-01-18 2016-04-19 Apple Inc. Intelligent automated assistant
US8977255B2 (en) 2007-04-03 2015-03-10 Apple Inc. Method and system for operating a multi-function portable electronic device using voice-activation
US8676904B2 (en) 2008-10-02 2014-03-18 Apple Inc. Electronic devices with voice command and contextual data processing capabilities
US10255566B2 (en) 2011-06-03 2019-04-09 Apple Inc. Generating and processing task items that represent tasks to perform
US10417037B2 (en) 2012-05-15 2019-09-17 Apple Inc. Systems and methods for integrating third party services with a digital assistant
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
US10652394B2 (en) 2013-03-14 2020-05-12 Apple Inc. System and method for processing voicemail
US10748529B1 (en) 2013-03-15 2020-08-18 Apple Inc. Voice activated device for use with a voice-based digital assistant
US10176167B2 (en) 2013-06-09 2019-01-08 Apple Inc. System and method for inferring user intent from speech inputs
CN106471570B (zh) 2014-05-30 2019-10-01 苹果公司 多命令单一话语输入方法
US10170123B2 (en) 2014-05-30 2019-01-01 Apple Inc. Intelligent assistant for home automation
US9715875B2 (en) 2014-05-30 2017-07-25 Apple Inc. Reducing the need for manual start/end-pointing and trigger phrases
US9338493B2 (en) 2014-06-30 2016-05-10 Apple Inc. Intelligent automated assistant for TV user interactions
US9886953B2 (en) 2015-03-08 2018-02-06 Apple Inc. Virtual assistant activation
US10200824B2 (en) 2015-05-27 2019-02-05 Apple Inc. Systems and methods for proactively identifying and surfacing relevant content on a touch-sensitive device
US20160378747A1 (en) 2015-06-29 2016-12-29 Apple Inc. Virtual assistant for media playback
US10671428B2 (en) 2015-09-08 2020-06-02 Apple Inc. Distributed personal assistant
US10331312B2 (en) 2015-09-08 2019-06-25 Apple Inc. Intelligent automated assistant in a media environment
US10747498B2 (en) 2015-09-08 2020-08-18 Apple Inc. Zero latency digital assistant
US10740384B2 (en) 2015-09-08 2020-08-11 Apple Inc. Intelligent automated assistant for media search and playback
US10691473B2 (en) 2015-11-06 2020-06-23 Apple Inc. Intelligent automated assistant in a messaging environment
US10956666B2 (en) 2015-11-09 2021-03-23 Apple Inc. Unconventional virtual assistant interactions
US11429883B2 (en) 2015-11-13 2022-08-30 Microsoft Technology Licensing, Llc Enhanced computer experience from activity prediction
US10223066B2 (en) 2015-12-23 2019-03-05 Apple Inc. Proactive assistance based on dialog communication between devices
US10586535B2 (en) 2016-06-10 2020-03-10 Apple Inc. Intelligent digital assistant in a multi-tasking environment
DK179415B1 (en) 2016-06-11 2018-06-14 Apple Inc Intelligent device arbitration and control
DK201670540A1 (en) 2016-06-11 2018-01-08 Apple Inc Application integration with a digital assistant
AU2017100670C4 (en) 2016-06-12 2019-11-21 Apple Inc. User interfaces for retrieving contextually relevant media content
US10474946B2 (en) * 2016-06-24 2019-11-12 Microsoft Technology Licensing, Llc Situation aware personal assistant
US10250706B2 (en) * 2016-08-01 2019-04-02 Bank Of America Corporation Hierarchical Clustering
US10938927B2 (en) * 2016-08-31 2021-03-02 Oracle International Corporation Machine learning techniques for processing tag-based representations of sequential interaction events
US11574207B2 (en) * 2016-09-16 2023-02-07 Oracle International Corporation Proximal factorization machine interface engine
US11146933B2 (en) * 2016-09-20 2021-10-12 Samsung Electronics Co., Ltd. Activity driven smart home system
US10785328B2 (en) * 2016-11-15 2020-09-22 International Business Machines Corporation Efficient collaborations in global enterprise environment
US10296586B2 (en) * 2016-12-23 2019-05-21 Soundhound, Inc. Predicting human behavior by machine learning of natural language interpretations
US10574825B2 (en) * 2017-02-15 2020-02-25 Microsoft Technology Licensing, Llc Assisted-communication with intelligent personal assistant
US10929818B2 (en) * 2017-02-16 2021-02-23 Seoul National University R&Db Foundation Wearable sensor-based automatic scheduling device and method
US10394954B2 (en) * 2017-02-27 2019-08-27 Intel Corporation Natural language intent and location determination method and apparatus
DK180048B1 (en) 2017-05-11 2020-02-04 Apple Inc. MAINTAINING THE DATA PROTECTION OF PERSONAL INFORMATION
US10726832B2 (en) 2017-05-11 2020-07-28 Apple Inc. Maintaining privacy of personal information
DK179745B1 (en) 2017-05-12 2019-05-01 Apple Inc. SYNCHRONIZATION AND TASK DELEGATION OF A DIGITAL ASSISTANT
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
US20180336275A1 (en) 2017-05-16 2018-11-22 Apple Inc. Intelligent automated assistant for media exploration
US20180336892A1 (en) 2017-05-16 2018-11-22 Apple Inc. Detecting a trigger of a digital assistant
US11481603B1 (en) * 2017-05-19 2022-10-25 Wells Fargo Bank, N.A. System for deep learning using knowledge graphs
US10176808B1 (en) 2017-06-20 2019-01-08 Microsoft Technology Licensing, Llc Utilizing spoken cues to influence response rendering for virtual assistants
US11699039B2 (en) 2017-06-28 2023-07-11 Microsoft Technology Licensing, Llc Virtual assistant providing enhanced communication session services
US10585991B2 (en) 2017-06-29 2020-03-10 Microsoft Technology Licensing, Llc Virtual assistant for generating personalized responses within a communication session
US10783149B2 (en) 2017-08-02 2020-09-22 Microsoft Technology Licensing, Llc Dynamic productivity content rendering based upon user interaction patterns
US20190065993A1 (en) * 2017-08-25 2019-02-28 Samsung Electronics Co., Ltd. Method for automating actions for an electronic device
US11081106B2 (en) 2017-08-25 2021-08-03 Microsoft Technology Licensing, Llc Contextual spoken language understanding in a spoken dialogue system
US10824647B2 (en) * 2017-11-17 2020-11-03 Accenture Global Solutions Limited Real-time prediction and explanation of sequences of abnormal events
US11803919B2 (en) * 2017-12-05 2023-10-31 International Business Machines Corporation Dynamic collection and distribution of contextual data
CN109933773B (zh) * 2017-12-15 2023-05-26 上海擎语信息科技有限公司 一种多重语义语句解析系统及方法
SG10201801749PA (en) * 2018-03-05 2019-10-30 Kaha Pte Ltd Methods and system for determining and improving behavioural index
US10818288B2 (en) 2018-03-26 2020-10-27 Apple Inc. Natural assistant interaction
US11416740B2 (en) * 2018-04-13 2022-08-16 Adtran, Inc. Artificial intelligence optimized telecommunications systems
US10928918B2 (en) 2018-05-07 2021-02-23 Apple Inc. Raise to speak
US11145294B2 (en) * 2018-05-07 2021-10-12 Apple Inc. Intelligent automated assistant for delivering content from user experiences
DK179822B1 (da) 2018-06-01 2019-07-12 Apple Inc. Voice interaction at a primary device to access call functionality of a companion device
US10892996B2 (en) 2018-06-01 2021-01-12 Apple Inc. Variable latency device coordination
DK180639B1 (en) 2018-06-01 2021-11-04 Apple Inc DISABILITY OF ATTENTION-ATTENTIVE VIRTUAL ASSISTANT
JP6944594B2 (ja) * 2018-06-08 2021-10-06 株式会社Nttドコモ 対話装置
CN108881466B (zh) * 2018-07-04 2020-06-26 百度在线网络技术(北京)有限公司 交互方法和装置
US10885905B2 (en) * 2018-07-13 2021-01-05 Samsung Electronics Co., Ltd. Predicting user actions on ubiquitous devices
US20200082288A1 (en) * 2018-09-11 2020-03-12 ZineOne, Inc. Network computing system for real-time event analysis
JP7182969B2 (ja) * 2018-09-20 2022-12-05 ヤフー株式会社 コミュニケーション支援装置、ユーザデバイス、コミュニケーション支援方法、およびプログラム
US11462215B2 (en) 2018-09-28 2022-10-04 Apple Inc. Multi-modal inputs for voice commands
WO2020062175A1 (en) * 2018-09-29 2020-04-02 Orange Discovery of internet-of-things resources
US10831442B2 (en) 2018-10-19 2020-11-10 International Business Machines Corporation Digital assistant user interface amalgamation
US11436293B2 (en) * 2019-02-21 2022-09-06 Microsoft Technology Licensing, Llc Characterizing a place by features of a user visit
US11348573B2 (en) 2019-03-18 2022-05-31 Apple Inc. Multimodality in digital assistant systems
US11222061B2 (en) * 2019-03-28 2022-01-11 Facebook, Inc. Generating digital media clusters corresponding to predicted distribution classes from a repository of digital media based on network distribution history
US10805173B1 (en) 2019-04-03 2020-10-13 Hewlett Packard Enterprise Development Lp Methods and systems for device grouping with interactive clustering using hierarchical distance across protocols
DK201970509A1 (en) 2019-05-06 2021-01-15 Apple Inc Spoken notifications
US11307752B2 (en) 2019-05-06 2022-04-19 Apple Inc. User configurable task triggers
US11140099B2 (en) 2019-05-21 2021-10-05 Apple Inc. Providing message response suggestions
DK180129B1 (en) 2019-05-31 2020-06-02 Apple Inc. USER ACTIVITY SHORTCUT SUGGESTIONS
DK201970511A1 (en) 2019-05-31 2021-02-15 Apple Inc Voice identification in digital assistant systems
US11227599B2 (en) 2019-06-01 2022-01-18 Apple Inc. Methods and user interfaces for voice-based control of electronic devices
CN110442391A (zh) * 2019-06-28 2019-11-12 华为技术有限公司 一种调用服务的方法及装置
US20210011887A1 (en) * 2019-07-12 2021-01-14 Qualcomm Incorporated Activity query response system
US11258814B2 (en) 2019-07-16 2022-02-22 Hewlett Packard Enterprise Development Lp Methods and systems for using embedding from Natural Language Processing (NLP) for enhanced network analytics
US11601339B2 (en) 2019-09-06 2023-03-07 Hewlett Packard Enterprise Development Lp Methods and systems for creating multi-dimensional baselines from network conversations using sequence prediction models
US11887600B2 (en) * 2019-10-04 2024-01-30 Disney Enterprises, Inc. Techniques for interpreting spoken input using non-verbal cues
US11256526B2 (en) * 2019-10-11 2022-02-22 Lenovo (Singapore) Pte. Ltd. Contextual item management
US11289086B2 (en) 2019-11-01 2022-03-29 Microsoft Technology Licensing, Llc Selective response rendering for virtual assistants
US11846749B2 (en) 2020-01-14 2023-12-19 ZineOne, Inc. Network weather intelligence system
CN113555021A (zh) 2020-04-06 2021-10-26 三星电子株式会社 用于对IoT设备执行动作的设备、方法及计算机程序
US11038934B1 (en) 2020-05-11 2021-06-15 Apple Inc. Digital assistant hardware abstraction
US11061543B1 (en) 2020-05-11 2021-07-13 Apple Inc. Providing relevant data items based on context
US11755276B2 (en) 2020-05-12 2023-09-12 Apple Inc. Reducing description length based on confidence
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
TWI799822B (zh) * 2021-03-26 2023-04-21 卓騰語言科技股份有限公司 自然語言對話意圖分析方法

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110022443A1 (en) * 2009-07-21 2011-01-27 Palo Alto Research Center Incorporated Employment inference from mobile device data
US20120089605A1 (en) * 2010-10-08 2012-04-12 At&T Intellectual Property I, L.P. User profile and its location in a clustered profile landscape
US20130179441A1 (en) * 2012-01-09 2013-07-11 Oü Eliko Tehnoloogia Arenduskeskus Method for determining digital content preferences of the user
US20140128105A1 (en) * 2012-11-06 2014-05-08 Intertrust Technologies Corporation Activity Recognition Systems and Methods
US20140310595A1 (en) * 2012-12-20 2014-10-16 Sri International Augmented reality virtual personal assistant for external representation
US20140354529A1 (en) * 2013-05-28 2014-12-04 The Boeing Company Tracking a user to support tasks performed on complex-system components
CN105009203A (zh) * 2013-03-12 2015-10-28 纽昂斯通讯公司 用于检测语音命令的方法和装置

Family Cites Families (42)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6567778B1 (en) 1995-12-21 2003-05-20 Nuance Communications Natural language speech recognition using slot semantic confidence scores related to their word recognition confidence scores
US8019602B2 (en) 2004-01-20 2011-09-13 Microsoft Corporation Automatic speech recognition learning using user corrections
US20060206333A1 (en) 2005-03-08 2006-09-14 Microsoft Corporation Speaker-dependent dialog adaptation
US20110106614A1 (en) * 2005-11-01 2011-05-05 Jumptap, Inc. Mobile User Characteristics Influenced Search Results
US8332218B2 (en) 2006-06-13 2012-12-11 Nuance Communications, Inc. Context-based grammars for automated speech recognition
US20070299631A1 (en) 2006-06-27 2007-12-27 Microsoft Corporation Logging user actions within activity context
US8185524B2 (en) 2006-12-22 2012-05-22 Yahoo! Inc. Method and system for locating events in-context
US8886540B2 (en) 2007-03-07 2014-11-11 Vlingo Corporation Using speech recognition results based on an unstructured language model in a mobile communication facility application
US7941383B2 (en) 2007-12-21 2011-05-10 Yahoo! Inc. Maintaining state transition data for a plurality of users, modeling, detecting, and predicting user states and behavior
US8606889B2 (en) 2010-01-21 2013-12-10 Microsoft Corporation Roaming application settings across multiple computing devices
US8738377B2 (en) 2010-06-07 2014-05-27 Google Inc. Predicting and learning carrier phrases for speech input
US8731902B2 (en) 2010-12-23 2014-05-20 Sap Ag Systems and methods for accessing applications based on user intent modeling
US20120209839A1 (en) 2011-02-15 2012-08-16 Microsoft Corporation Providing applications with personalized and contextually relevant content
US20130006678A1 (en) 2011-06-28 2013-01-03 Palo Alto Research Center Incorporated System and method for detecting human-specified activities
EP2541474A1 (en) 2011-06-29 2013-01-02 France Telecom Monitoring a user activity using a mobile device
US20130018659A1 (en) 2011-07-12 2013-01-17 Google Inc. Systems and Methods for Speech Command Processing
US8880652B2 (en) 2011-09-14 2014-11-04 Hewlett-Packard Development Company, L.P. Heuristic browser predictive pre-caching
US20130097246A1 (en) 2011-10-12 2013-04-18 Cult, Inc. Multilocal implicit social networking
US9600834B2 (en) 2011-10-26 2017-03-21 Yahoo! Inc. Aggregating data from multiple devices belonging to one user for directed ad targeting
US9189252B2 (en) 2011-12-30 2015-11-17 Microsoft Technology Licensing, Llc Context-based device action prediction
US9542956B1 (en) * 2012-01-09 2017-01-10 Interactive Voice, Inc. Systems and methods for responding to human spoken audio
US10474728B2 (en) 2012-03-21 2019-11-12 Oath Inc. Seamless browsing between devices
US8930294B2 (en) 2012-07-30 2015-01-06 Hewlett-Packard Development Company, L.P. Predicting user activity based on usage data received from client devices
US20140122697A1 (en) 2012-11-01 2014-05-01 Google Inc. Providing content to linked devices associated with a user
WO2014102722A1 (en) * 2012-12-26 2014-07-03 Sia Technology Ltd. Device, system, and method of controlling electronic devices via thought
US10417567B1 (en) * 2013-02-14 2019-09-17 Verint Americas Inc. Learning user preferences in a conversational system
US9117179B2 (en) 2013-03-11 2015-08-25 International Business Machines Corporation Predicting user activity in social media applications
US9015045B2 (en) 2013-03-11 2015-04-21 Nuance Communications, Inc. Method for refining a search
US9508040B2 (en) 2013-06-12 2016-11-29 Microsoft Technology Licensing, Llc Predictive pre-launch for applications
US9427185B2 (en) 2013-06-20 2016-08-30 Microsoft Technology Licensing, Llc User behavior monitoring on a computerized device
US9305554B2 (en) 2013-07-17 2016-04-05 Samsung Electronics Co., Ltd. Multi-level speech recognition
US9633669B2 (en) * 2013-09-03 2017-04-25 Amazon Technologies, Inc. Smart circular audio buffer
US8768712B1 (en) 2013-12-04 2014-07-01 Google Inc. Initiating actions based on partial hotwords
US10928976B2 (en) * 2013-12-31 2021-02-23 Verint Americas Inc. Virtual assistant acquisitions and training
US9939868B2 (en) 2014-05-12 2018-04-10 Gary Stephen Shuster Device power and resource management
US11228653B2 (en) * 2014-05-15 2022-01-18 Samsung Electronics Co., Ltd. Terminal, cloud apparatus, driving method of terminal, method for processing cooperative data, computer readable recording medium
US20180183243A1 (en) 2014-07-02 2018-06-28 Humavox Ltd. Cloud Based Power Management System For Electronic Devices
US20160050589A1 (en) 2014-08-13 2016-02-18 Samsung Electronics Co., Ltd. Ambient network sensing and handoff for device optimization in heterogeneous networks
DE102015113931A1 (de) 2014-08-21 2016-02-25 Affectomatics Ltd. Berechnung von Nachwirkung aus affektiven Reaktionen
US11887164B2 (en) 2015-05-26 2024-01-30 Microsoft Technology Licensing, Llc Personalized information from venues of interest
US20170031575A1 (en) 2015-07-28 2017-02-02 Microsoft Technology Licensing, Llc Tailored computing experience based on contextual signals
US11429883B2 (en) 2015-11-13 2022-08-30 Microsoft Technology Licensing, Llc Enhanced computer experience from activity prediction

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110022443A1 (en) * 2009-07-21 2011-01-27 Palo Alto Research Center Incorporated Employment inference from mobile device data
US20120089605A1 (en) * 2010-10-08 2012-04-12 At&T Intellectual Property I, L.P. User profile and its location in a clustered profile landscape
US20130179441A1 (en) * 2012-01-09 2013-07-11 Oü Eliko Tehnoloogia Arenduskeskus Method for determining digital content preferences of the user
US20140128105A1 (en) * 2012-11-06 2014-05-08 Intertrust Technologies Corporation Activity Recognition Systems and Methods
US20140310595A1 (en) * 2012-12-20 2014-10-16 Sri International Augmented reality virtual personal assistant for external representation
CN105009203A (zh) * 2013-03-12 2015-10-28 纽昂斯通讯公司 用于检测语音命令的方法和装置
US20140354529A1 (en) * 2013-05-28 2014-12-04 The Boeing Company Tracking a user to support tasks performed on complex-system components

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112335205A (zh) * 2018-08-22 2021-02-05 谷歌有限责任公司 用减少的用户输入自动解析一组用户的活动实例集合
US11575729B2 (en) 2018-08-22 2023-02-07 Google Llc Automatically resolving, with reduced user inputs, a set of activity instances for a group of users
US11843655B2 (en) 2018-08-22 2023-12-12 Google Llc Automatically resolving, with reduced user inputs, a set of activity instances for a group of users
CN112997171A (zh) * 2018-09-27 2021-06-18 谷歌有限责任公司 分析网页以促进自动导航
CN111814012A (zh) * 2020-07-10 2020-10-23 泰康保险集团股份有限公司 活动匹配方法、装置、介质及电子设备
CN111858936A (zh) * 2020-07-21 2020-10-30 龙马智芯(珠海横琴)科技有限公司 一种意图识别方法、装置、识别设备及可读存储介质

Also Published As

Publication number Publication date
CN108351870B (zh) 2021-10-26
EP3374939A1 (en) 2018-09-19
CN113963697A (zh) 2022-01-21
WO2017083191A1 (en) 2017-05-18
US20170140041A1 (en) 2017-05-18
US10769189B2 (en) 2020-09-08
US20200401612A1 (en) 2020-12-24

Similar Documents

Publication Publication Date Title
CN108351870A (zh) 根据活动模式的计算机语音识别和语义理解
CN108351992A (zh) 根据活动预测的增强型计算机体验
US10819811B2 (en) Accumulation of real-time crowd sourced data for inferring metadata about entities
EP3577610B1 (en) Associating meetings with projects using characteristic keywords
US10748121B2 (en) Enriching calendar events with additional relevant information
US20170277993A1 (en) Virtual assistant escalation
US10599390B1 (en) Methods and systems for providing multi-user recommendations
US10380208B1 (en) Methods and systems for providing context-based recommendations
US20180285827A1 (en) Distinguishing events of users for efficient service content distribution
CN108241520B (zh) 提供用户的待办事项列表的系统和方法
US11194796B2 (en) Intuitive voice search
CN107924311A (zh) 基于上下文信号的定制化计算体验
US20140244266A1 (en) Interaction with a Portion of a Content Item through a Virtual Assistant
KR20170020841A (ko) 통신 개시를 위한 사용자 신호 레버리징
KR20160137556A (ko) 유저의 명시적 선언에 기초한 개인맞춤된 추천 기법
CN105320726A (zh) 降低对手动开始/结束点和触发短语的需求
US9871876B2 (en) Sequential behavior-based content delivery
CN106663120A (zh) 扩展存储器系统
US10943603B2 (en) Systems and methods for a neighborhood voice assistant
US10043069B1 (en) Item recognition using context data
US10592832B2 (en) Effective utilization of idle cycles of users
CN110389759A (zh) 一种目标界面生成方法及装置
JP7327161B2 (ja) 情報処理装置、情報処理方法、およびプログラム
US20230385778A1 (en) Meeting thread builder

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