CN110799946B - 多应用用户兴趣存储器管理 - Google Patents

多应用用户兴趣存储器管理 Download PDF

Info

Publication number
CN110799946B
CN110799946B CN201880043315.0A CN201880043315A CN110799946B CN 110799946 B CN110799946 B CN 110799946B CN 201880043315 A CN201880043315 A CN 201880043315A CN 110799946 B CN110799946 B CN 110799946B
Authority
CN
China
Prior art keywords
interest
user
application
entity
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201880043315.0A
Other languages
English (en)
Other versions
CN110799946A (zh
Inventor
R·古普塔
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Technology Licensing LLC
Original Assignee
Microsoft Technology Licensing LLC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Microsoft Technology Licensing LLC filed Critical Microsoft Technology Licensing LLC
Publication of CN110799946A publication Critical patent/CN110799946A/zh
Application granted granted Critical
Publication of CN110799946B publication Critical patent/CN110799946B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9535Search customisation based on user profiles and personalisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/901Indexing; Data structures therefor; Storage structures
    • G06F16/9024Graphs; Linked lists
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2457Query processing with adaptation to user needs
    • G06F16/24575Query processing with adaptation to user needs using context
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/248Presentation of query results
    • 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
    • G06F16/337Profile generation, learning or modification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/541Interprogram communication via adapters, e.g. between incompatible applications
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/542Event management; Broadcasting; Multicasting; Notifications
    • 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
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • 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
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0241Advertisements
    • G06Q30/0251Targeted advertisements
    • G06Q30/0255Targeted advertisements based on user history
    • 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
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/01Social networking

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Strategic Management (AREA)
  • Databases & Information Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Finance (AREA)
  • Development Economics (AREA)
  • Accounting & Taxation (AREA)
  • Software Systems (AREA)
  • Marketing (AREA)
  • General Business, Economics & Management (AREA)
  • Economics (AREA)
  • Data Mining & Analysis (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Game Theory and Decision Science (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Tourism & Hospitality (AREA)
  • Primary Health Care (AREA)
  • Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • Human Resources & Organizations (AREA)
  • Multimedia (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本文中描述的技术允许应用访问由多个应用生成的用户兴趣信息。当用户与应用交互时,可以由应用生成用户兴趣数据。本文中描述的技术允许应用向系统提交用户兴趣,该系统使用户兴趣可用于其他应用。该技术允许每个应用订阅可由该应用消耗的用户兴趣。以这种方式,每个应用可以控制哪些用户兴趣信息被接收。

Description

多应用用户兴趣存储器管理
背景技术
在最近的过去,在线服务提供方的数目呈指数增长。随着智能电话的出现,应用和应用提供方的数目也出现了类似的增长。对于每个任务(例如,播放音乐),存在可以使用的多个应用和/或服务,从而导致用户针对每个任务在设备上拥有多个应用。部分地由于不兼容的数据模式,应用经常无法彼此共享用户兴趣信息。当前,在逐个应用的基础上收集和存储用户兴趣。
发明内容
提供本“发明内容”以便以简化的形式介绍下面在“具体实施方式”中进一步描述的概念的选择。本“发明内容”既不旨在标识所要求保护的技术方案的关键特征或必要特征,也不旨在用于帮助确定所要求保护的技术方案的范围。
本文中描述的技术允许应用访问由多个应用生成的用户兴趣信息。当用户与应用交互时,可以由应用生成用户兴趣数据。交互可以包括明确地陈述兴趣,诸如提供音乐偏好、电影偏好或其他喜好或厌恶。交互可以包括可以从其中推断出用户兴趣的用户查询。交互还可以包括各种事件,诸如进行购买、逛商店、度假旅行等。
本文中描述的技术允许应用向系统提交用户兴趣,该系统使用户兴趣可用于其他应用。该技术允许每个应用订阅可由该应用消耗的用户兴趣。以这种方式,每个应用可以控制接收哪些用户兴趣信息。该技术允许没有用户兴趣数据的新应用使用来自其他应用的用户兴趣数据来提供定制的用户体验。
附图说明
在附图中,以示例而非限制的方式图示了本文中描述的技术,在附图中,相同的附图标记指示相似的元件,并且在附图中:
图1是适合于本公开的实现的示例操作环境的框图;
图2是描绘适合于实现本公开的方面的示例计算架构的示图;
图3-图5是示出根据本文中描述的技术的一个方面的在应用之间共享用户兴趣信息的附加示例性方法的流程图;以及
图6是适合用于实现本文中描述的技术的方面的示例性计算环境的框图。
具体实施方式
本文中描述的各种技术以足够的特异性来阐述以满足法定要求。然而,说明书本身并不旨在限制本专利的范围。相反,发明人已经预料到,所要求保护的技术方案还可以结合其他当前或未来技术以其他方式实施,以包括与本文档中描述的步骤不同的步骤或步骤的组合。此外,尽管本文中可以使用术语“步骤”和/或“框”来表示所采用的方法的不同元素,但是除非和当明确地描述了各个步骤的顺序时,否则这些术语不应解释为暗示本文中公开的各个步骤之中或之间的任何特定顺序。
本文中描述的技术允许应用访问由多个应用生成的用户兴趣信息。当用户与应用交互时,可以由应用生成用户兴趣数据。交互可以包括明确地陈述兴趣,诸如提供音乐偏好、电影偏好或其他喜好或厌恶。交互可以包括可以从其中推断出用户兴趣的用户查询。交互还可以包括各种事件,诸如进行购买、逛商店、度假旅行等。
本文中描述的技术允许应用向系统提交用户兴趣,该系统使用户兴趣可用于其他应用。该技术允许每个应用订阅可由该应用消耗的用户兴趣。例如,音乐流应用可以订阅音乐兴趣。可以通过动作来分解兴趣。如上所述,可以从用户动作中推断出用户兴趣。使用音乐示例,应用可以订阅音乐收听和音乐购买动作。订阅这些动作使得应用接收与音乐收听和购买相关的用户兴趣信息。在没有订阅的情况下,将不转发其他用户动作,诸如播放列表生成。
用户兴趣数据可以指定与用户兴趣相关的各种实体。继续音乐示例,当用户收听Alan Jackson的歌曲“Remember When”时发生了收听事件。该事件包括艺术家“AlanJackson”和歌曲名称“Remember When”。不同的应用可以以独特的方式标识这些实体,诸如利用独特的标识号。该技术可以访问包括以通用形式的实体的知识库,该实体被映射到事件信息并且针对订阅该系统的每个应用还链接到实体ID。以这种方式,每个应用可以接收具有兼容实体ID的用户兴趣信息。
可以通过分析上下文信号数据(包括针对用户的事件数据)来确定用户的兴趣。分析信号信息以检测对应于用户兴趣的模式。例如,可以将经常拜访鱼餐厅的用户分类为对鱼餐厅感兴趣。拜访餐厅可以是被传送给应用的事件。个人可以与多个兴趣和兴趣事件相关联。
如本文中使用的,“上下文信号”可以反映用户的任何属性(例如,身体特性)、用户与系统的历史交互(例如,行为、习惯和系统交互模式)和/或用户与系统的最近交互(其中根据相对于给定时间点的预定时间范围来定义“最近度”),这可能影响用户希望参与特定活动的可能性或概率。仅作为示例而非限制,这样的上下文信号可以包括计算设备的用户的位置(利用例如全球定位系统(GPS)信号、互联网协议(IP)地址等确定的)、一天中的时间(大致时间(例如,早晨或下午)或确切时间(例如,6:00pm))、日期(确切或通常是特定的月份、季节等)、用户的身体特性(例如,用户是否瘫痪并且仅能进行语音输入等)、用户当前在计算设备上参与的任务、用户最近在计算设备上参与的任务(再次其中根据相对于给定时间点的预定时间范围来定义“最近度”)、用户当前正在计算设备上从事于的对象(例如,诸如联系人、文件、图像等实体)、用户最近在计算设备上从事于的对象、当前由用户在计算设备上执行的功能、最近由用户在计算设备上执行的功能、计算设备上当前所利用的硬件、计算设备上最近所利用的硬件、计算设备上当前所利用的软件、以及在计算设备上最近所利用的软件。
该技术可以通过事件将兴趣信息传送给应用。与兴趣相关的每个事件可以被分类为兴趣类型。事件记录可以包括实体和所采取的动作。该技术可以分析信号数据以建立与不同兴趣相关的事件记录。然后可以将事件记录传送给订阅与事件相关联的兴趣的应用。
可以从自诸如可穿戴设备、个人计算机、智能电话、平板计算机、电子阅读器、增强现实眼镜、虚拟现实眼镜等计算设备接收的各种信号中检测事件。由这些设备收集的相关信号可以包括用户浏览历史、查询数据、购买数据、音乐交互、GPS和其他位置数据、旅行时间、应用使用情况、电话记录、消息发送记录等。可以将各种上下文信号组合以确定事件数据。事件数据可以包括锻炼事件、饮食事件、工作事件、运输事件、社交事件、娱乐事件、浏览事件、搜索事件、购物事件以及与兴趣点使用情况相关的其他事件。
在一个方面,饮食事件用于确定对不同类型的食物和餐厅的兴趣。预订应用和食物/锻炼应用可能对饮食相关的用户兴趣信息特别感兴趣。将饮食相关的兴趣数据显露给各种应用可以帮助应用更好地为用户服务。可以使用日历数据、位置数据、日记条目、卡路里应用和其他信号源来检测饮食事件。例如,用户在餐厅的位置可以指示饮食事件。在另一方面,用户在杂货店的购买可以用于确定例如一周内用户所吃食物的类型。一些用户使用食物程序、日记、卡路里计数应用或其他应用来明确跟踪卡路里。来自这些应用的信号可以用于确定发生了饮食事件以及饮食事件的内容。如上所述,可以确定饮食事件的持续时间、消耗的食物的量以及消耗的食物的风格或类别。例如,用户的饮食事件可以指示对墨西哥食品感兴趣。可以分析饮食事件以确定用户的食品兴趣。例如,可以将用户分类为对烧烤、印度食品和牛排馆感兴趣。这些兴趣可以用于选择针对用户的兴趣点数据。
在一个方面,工作事件可以是兴趣数据。诸如个人助理等生产力应用可以使用工作相关的用户兴趣事件来生成针对用户的个性化体验。可以通过各种信号来检测用户的工作事件,各种信号包括指示用户的位置处于工作地点的GPS数据、指示用户正在通过其计算设备执行工作的计算机使用数据、指示用户正在与已知的工作伙伴通信的通信记录等。用户的工作事件可以用于推断对工作场所附近的位置的兴趣。
在一个方面,运输或通勤事件可以是用户兴趣数据的组成部分。导航应用和地理搜索应用可能对了解用户感兴趣的地理区域感兴趣。可以使用用户数据(诸如GPS数据)检测运输事件,该用户数据可以指示移动的长度和速度。运输事件可以被分类为上班通勤或以其他方式由开始位置和结束位置来描绘。还可以记录运输事件的在一天中的时间和持续时间。另外,可以通过分析移动模式来确定交通的手段(例如,汽车、公共汽车、火车、自行车等)。
在一个方面,社交事件可以是用户兴趣数据的组成部分。社交活动可以包括朋友和家人的聚会以进行社交互动。可以使用指示社交事件的日历信息以及指示与社交事件一致的位置(诸如朋友的房子)的GPS或其他位置数据来检测社交事件。还可以通过以下方式来检测社交事件:针对图片、图像和帖子来挖掘社交网络数据(诸如签到),传送有关诸如生日聚会、婚礼、野餐等特定社交事件的信息等。社交事件可以用于确定社交关系和兴趣。例如,用户可能对一天中的不同时间的社交事件感兴趣。当用户通常对社交感兴趣时,应用可以使用该模式来计划或建议社交事件。
在一个方面,购物事件可以是兴趣点使用数据的组成部分。可以通过位置数据、信用卡信息、浏览历史、查询历史等来确定购物事件。购物事件可以指示已经购买了物品和该物品的分类。例如,物品可以分类为服装、食品、家居用品等。用户的购买历史可以用于确定兴趣。
每个所标识的事件可以与上下文信息和外围上下文信息相关联,上下文信息以相关联的实体和动作的形式与事件直接相关,外围上下文信息描述与事件不直接相关的用户在一天中的其他活动。与事件相关联的直接上下文信息可以包括事件发生的位置(实体)、进行的购买(购买是动作,购买的物品是实体)、事件期间其他人的存在(实体)等。可以通过对事件期间所捕获的用户数据的分析来了解直接上下文信息。外围上下文信息可以包括对事件之前或之后的一天、几天和几小时内用户活动的描述。
本文中描述的技术的方面还可以使用描述用户的语义数据来确定用户兴趣和相关的兴趣点。语义信息可以包括用户的社交联系人、工作联系人、兴趣、家庭位置、工作地址、日历数据、任务和其他信息。语义数据可以用于标识或定义用户兴趣。
如上所述,可以存储各种用户兴趣事件以用于与订阅应用进行通信。
在简要描述了本文中描述的技术的方面的概述之后,下面描述了可以在其中实现本文中描述的技术的方面的示例性操作环境,以便为各个方面提供一般性上下文。
现在转向图1,提供了示出其中可以采用本公开的一些方面的示例操作环境100的框图。应当理解,本文中描述的这种和其他布置仅作为示例阐述。除了或代替所示出的那些布置或要素,还可以使用其他布置和要素(例如,机器、接口、功能、命令和功能的分组等),并且为了清楚起见,可以完全省略一些要素。此外,本文中描述的很多元件是可以被实现为离散或分布式组件或与其他组件相结合实现并且以任何合适的组合和位置来实现的功能实体。本文中被描述为由一个或多个实体执行的各种功能可以由硬件、固件和/或软件来执行。例如,一些功能可以由处理器执行存储在存储器中的指令来执行。
除了未示出的其他组件,示例操作环境100包括:多个用户设备,诸如用户设备102a和102b至102n;多个数据源,诸如数据源104a和104b至104n;服务器106;以及网络110。图1所示的组件中的每个组件可以通过任何类型的计算设备(诸如,例如结合图6描述的计算设备600)来实现。这些组件可以经由网络130彼此通信,网络110可以包括但不限于一个或多个局域网(LAN)和/或广域网(WAN)。在示例性实现中,在各种可能的公共和/或私有网络中的任何一个中,网络110包括因特网和/或蜂窝网络。
用户设备102a和102b至102n可以是在操作环境100的客户端侧的客户端设备,同时服务器106可以位于操作环境100的服务器侧。用户设备可以运行很多不同的应用。这些设备可以属于很多不同的用户,并且单个用户可以使用多个设备。可以分析由应用执行的用户活动以确定用户的兴趣,包括感兴趣的地理区域、娱乐兴趣、阅读兴趣、购物兴趣、旅行兴趣等。可以为用户事件分配兴趣。诸如查询提交或购物购买等事件可以与动作和实体相关联。例如,可以通过购买(动作)艺术家(实体)的专辑(实体)来表现出对乡村音乐的兴趣。
服务器106可以包括服务器侧软件,该服务器侧软件被设计为与用户设备102a和102b至102n上的客户端软件结合工作以便实现本公开中讨论的特征和功能的任何组合。例如,服务器106可以运行数据共享引擎260,数据共享引擎260帮助应用共享意图数据。服务器106可以从属于很多用户的大量用户设备接收活动记录,诸如搜索结果和购买历史。数据可以被存储在数据存储库中并且与用户相关联,作为用户记录的一部分。该数据可以描述为众包数据。提供操作环境100的这种划分以说明合适环境的一个示例,并且对于每种实现均不需要服务器106与用户设备102a和102b至102n的任何组合保持为分离的实体。
用户设备102a和102b至102n可以包括能够由用户使用的任何类型的计算设备。例如,在一个方面,用户设备102a至102n可以是本文中关于图6描述的类型的计算设备。作为示例而非限制,用户设备可以被实施为个人计算机(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使得可用的感测到的用户数据的示例。数据源104a至104n可以包括知识图,该知识图存储关于实体以及实体ID与应用之间的关系的信息。数据源还可以存储应用订阅信息。
可以利用操作环境100来实现图2中描述的系统200的组件中的一个或多个组件,包括用于收集用户数据、标识用户兴趣、接收与任务相关的用户查询、用有效的后续问题来对查询进行响应、标识任务以及帮助用户完成任务的组件。
现在与图1一起参考图2,提供了框图,该框图示出了适合于实现一方面并且总体上被指定为系统200的示例计算系统架构的各方面。系统200仅表示合适的计算系统架构的一个示例。除了或代替所示出的那些布置和要素,可以使用其他布置和要素,并且为了清楚起见,可以完全省略一些要素。另外,如操作环境100那样,本文中描述的很多元件是功能实体,其可以被实现为离散或分布式组件或与其他组件相结合实现,并且以任何合适的组合和位置来实现。
示例系统200包括网络110,网络110结合图1进行了描述并且通信地连接系统200的组件,包括用户数据收集组件210、数据共享引擎260(包括其组件262、264、266、267和268)、事件监测器280、客户端设备290和数据存储装置225。例如,这些组件可以被实施为一组编译的计算机指令或功能、程序模块、计算机软件服务、或在一个或多个计算机系统(诸如结合图6描述的计算设备600)上执行的进程的布置。
在一个方面,由系统200的组件执行的功能与一个或多个个人助理应用、服务或例程相关联。特别地,这样的应用、服务或例程可以在一个或多个用户设备(诸如用户设备102a)、服务器(诸如服务器106)上操作,可以跨一个或多个用户设备和服务器分布,或者在云中实现。此外,在一些方面,系统200的这些组件可以跨包括一个或多个服务器(诸如服务器106)和客户端设备(诸如用户设备102a)的网络分布,分布在云中,或者可以驻留在诸如用户设备102a的用户设备上。此外,这些组件、由这些组件执行的功能或由这些组件执行的服务可以在计算系统的适当的(多个)抽象层实现,抽象层诸如操作系统层、应用层、硬件层等。备选地或另外地,这些组件的功能和/或本文中描述的方面可以至少部分由一个或多个硬件逻辑组件执行。例如而非限制,可以使用的说明性类型的硬件逻辑组件包括现场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、片上系统(SOC)、复杂可编程逻辑器件(CPLD)等。另外,尽管本文中关于示例系统200中示出的特定组件来描述功能,但是可以预期,在一些方面,这些组件的功能可以跨其他组件而共享或分布。
继续图2,用户数据收集组件210通常负责从诸如图1的数据源104a和104b至104n的一个或多个数据源访问或接收(并且在一些情况下还标识)用户数据。在一些方面,可以采用用户数据收集组件210来促进特定用户(或者在一些情况下,包括众包数据的多个用户)的用户数据的累积,以用于用户事件监测器280、数据共享引擎260或应用270。数据可以由用户数据收集组件210接收(或访问)并且可选地累积、重新格式化和/或组合并且存储在一个或多个数据存储库中,其中其可以可用于系统200的其他组件。例如,用户数据可以作为兴趣记录而存储在用户简档中或与用户简档相关联。如所解释的,每个兴趣记录可以标识兴趣、一个或多个实体以及相关于该兴趣而采取的一个或多个动作。在一些方面,任何个人标识数据(即,专门标识特定用户的用户数据)不会被上传或以其他方式与用户数据一起从一个或多个数据源被提供,不会被永久存储,和/或不可用于用户事件监测器280和/或数据共享引擎260。
可以从各种来源接收用户数据,其中数据可以以各种格式可用。例如,在一些方面,经由用户数据收集组件210接收的用户数据可以经由一个或多个传感器来确定,一个或多个传感器可以在一个或多个用户设备(诸如用户设备102a)、服务器(诸如服务器106)和/或其他计算设备上或与之相关联。如本文中使用的,传感器可以包括用于感测、检测或以其他方式从数据源104a获取诸如用户数据等信息的功能、例程、组件或其组合,并且可以被实施为硬件、软件或两者。作为示例而非限制,用户数据可以包括从一个或多个传感器感测或确定的数据(在本文中称为传感器数据),诸如(多个)移动设备的位置信息、(多个)用户设备的性质或特性(诸如设备状态、充电数据、日期/时间或从诸如移动设备等用户设备得出的其他信息)、用户活动信息(例如:应用使用情况;在线活动;搜索;语音数据,诸如自动话音识别;活动日志;通信数据,包括电话、文本、即时消息和电子邮件;网站帖子;与通信事件相关联的其他用户数据;等等),用户活动信息在一些方面包括在多于一个的用户设备上发生的用户活动、用户历史、会话日志、应用数据、联系人数据、日历和日程表数据、通知数据、社交网络数据、新闻(包括搜索引擎或社交网络上的热门或趋势项目)、在线游戏数据、电子商务活动(包括来自诸如视频流服务、游戏服务或/>等在线账号的数据)、(多个)用户账号数据(其可以包括来自与个人助理应用或服务相关联的用户偏好或设置的数据)、家庭传感器数据、家电数据、全球定位系统(GPS)数据、车辆用户数据、交通数据、天气数据(包括预报)、可穿戴设备数据(其可以包括有关用户的生理数据,诸如心率、脉搏血氧仪或血氧水平、血压、皮肤电反应或能够被感测或检测的其他生理数据)、其他用户设备数据(其可以包括设备设置、简档、网络相关的信息(例如,网络名称或ID、域信息、工作组信息、连接数据、Wi-Fi网络数据或配置数据、与型号、固件或装备、设备配对相关的数据,诸如在用户拥有与Bluetooth耳机配对的手机的情况下,或其他与网络相关的信息))、陀螺仪数据、加速计数据、付款或信用卡使用情况数据(其可以包括来自用户的PayPal账号的信息)、购买历史数据(诸如来自用户的Xbox Live、Amazon.com或eBay账号的信息)、可以由(多个)传感器(或其他检测器)组件感测或以其他方式检测的其他传感器数据,包括从与用户相关联的传感器组件得出的数据(包括位置、运动、取向、定位、用户访问、用户活动、网络访问、用户设备充电、或能够由一个或多个传感器组件提供的其他数据)、基于其他数据得出的数据(例如,可以从Wi-Fi、蜂窝网络或IP地址数据得出的位置数据)、以及可以如本文所述感测或确定的几乎任何其他数据源得出的数据。
在一些方面,用户数据可以被提供在用户数据流或信号中。“用户信号”可以是来自对应数据源的用户数据的馈送或流。例如,用户信号可以来自智能电话、家庭传感器设备、GPS设备(例如,用于位置坐标)、车辆传感器设备、可穿戴设备、用户设备、陀螺仪传感器、加速度计传感器、日历服务、电子邮件账号、信用卡账号或其他数据源。在一些方面,用户数据收集组件210连续地、周期性地或根据需要接收或访问数据。
用户事件监测器280通常负责监测用户数据以用于可以用于标识和限定用户兴趣事件的信息,这可以包括标识和/或跟踪关于与实体的特定用户交互的特征(在本文中有时称为“变量”)或其他信息。可以将用户兴趣事件用作输入来计算对实体类别(诸如中式餐厅)的兴趣。“事件”是一种格式化相关信息以供兴趣分类器或应用消耗的方式。换言之,事件记录可以遵循允许兴趣分类器从事件记录确定兴趣的数据模式。在一些情况下,可以从用户数据推断事件的发生和细节。例如,可以将位置指定为用户的工作地点,因为用户在工作时间期间定期在该位置花费时间。使用事件来代替实际数据作为输入,可以通过提供跨用户更统一的输入来简化计算兴趣的过程。
用户事件监测器280的方面可以从所监测的用户数据来确定用户何时参加锻炼事件、睡眠事件、饮食事件、工作事件、社交事件、娱乐消费事件或与用户兴趣相关联的其他事件。换言之,用户事件监测器280可以接收用户数据并且生成事件数据,诸如工作事件或社交事件。然后,事件数据可以用于计算用户的兴趣或纪念用户的兴趣,以供订阅应用消耗。可以从事件记录来推断兴趣。例如,即使事件不在健身房或体育用品商店发生,示出用户跑步的锻炼事件也可以用于确定对诸如健身房和体育用品商店等健身商店的兴趣。
在一些方面,用户事件监测器280可以标识当前或接近实时的用户事件信息,并且还可以标识历史用户事件信息,其可以基于随时间来收集对用户数据的观察或访问过去的事件数据的用户日志(诸如社交事件数据存储库)来确定。历史用户事件信息可以用于检测与兴趣相关的模式。曾经访问中式餐厅的用户可能对中餐真正感兴趣或不感兴趣,但是定期访问中餐厅的用户很可能对中餐感兴趣。
在一些方面,由用户事件监测器280确定的信息可以被提供给数据共享引擎260,该信息包括关于当前上下文和历史事件(历史观察)的信息。例如,用户事件监测器280可以提供事件记录以供数据共享引擎260使用。
在一些方面,可以通过机器分类过程来解释用户兴趣,以确定用户兴趣事件已经发生。例如,在一些方面,用户事件监测器280采用用户事件逻辑来按兴趣标识或分类用户事件,该用户事件逻辑可以包括规则、条件和/或关联。事件的分类(例如,饮食、睡眠、工作、社交、运动、运输)可以基于特征匹配或确定特征相似度,这属于模式识别。这种类型的分类可以使用模式识别、模糊逻辑、神经网络、有限状态机、支持向量机、逻辑回归、聚类或机器学习技术、类似的统计分类过程、或这些的组合来从用户数据标识事件。例如,锻炼逻辑可以结合位置或移动数据来指定与锻炼事件相关联的生理信息的类型,诸如用户的心率在指明的持续时间内保持高于基线的阈值量。不同的活动模式可以映射到不同的事件和兴趣。例如,跑步、骑自行车、游泳、高尔夫、网球和足球都可以具有不同的活动模式。
在一些方面,用户可以指定用于检测事件或甚至特定类型的事件的特征。例如,在检测到可能的社交事件时,个人助理应用可以询问用户以确认她刚刚与朋友A、B和C一起观看了电影,并且可以询问用户观看了什么电影。基于这个反馈,活动模式可以针对用户被学习,并且用于标识未来的社交事件。类似地,来自其他用户的事件模式可以用于标识针对特定用户的事件。
在使用与用户设备相关的上下文信息的方面中,可以通过检测和分析用户设备的特性来标识用户设备,用户设备的特性诸如设备硬件、诸如操作系统(OS)等软件、与网络相关的特征、经由设备访问的用户账户、和类似特征。例如,可以使用很多操作系统的功能来确定关于用户设备的信息,以提供关于硬件、OS版本、网络连接信息、已安装应用等的信息。在一些方面,可以针对与用户相关联的每个设备确定设备名称或标识(设备ID)。关于与用户相关联的所标识的用户设备的该信息可以被存储在与该用户相关联的用户简档中,诸如在(多个)用户账户中。在一个方面,可以对用户设备进行轮询、询问或以其他方式进行分析以确定关于设备的上下文信息。该信息可以用于确定设备的标签或标识(例如,设备ID),使得关于在一个设备上捕获的锻炼事件的上下文信息可以被识别,并且与由另一用户设备捕获的数据区分开。在一些方面,用户可以声明或注册用户设备,诸如通过经由该设备登录账号,在该设备上安装应用,连接到询问该设备的在线服务,或者以其他方式向应用或服务提供关于该设备的信息。在一些方面,登录到与用户相关联的账号的设备被标识和确定与用户相关联,与用户相关联的账号诸如账号或Net Passport、电子邮件账号、社交网络等。
继续图2的系统200,数据共享引擎260通常负责在应用270之间共享用户兴趣信息。在一些方面,数据共享引擎260可以在服务器上运行,作为跨多个设备的分布式应用运行,或者在云中运行。
如示例系统200中所示,数据共享引擎260包括语义信息分析器262、兴趣确定器264、实体解析器266、应用兴趣管理器267和通用存储器管理器268。语义信息分析器262通常负责确定与由用户事件监测器280标识的事件相关特征相关联的语义信息。例如,虽然事件特征可以指示特定类型的锻炼(例如,网球),但是语义分析可以确定用户所属的网球俱乐部、在俱乐部的玩伴、用户已注册的即将到来的网球比赛、或与兴趣事件记录相关联的其他实体。这允许实体和兴趣之间与直接可观察的关系相比更多的关系。语义信息分析器262可以确定附加事件或与事件在语义上相关的动作相关特征,其可以用于标识用户兴趣模式和/或兴趣记录。例如,GPS数据可以指示用户参加了音乐会场地。语义信息分析器262可以取回关于在访问时发生的音乐会的信息。然后,用户兴趣记录可以包括动作(音乐会出席)与艺术家表演(实体)。此外,可以从其他源取回艺术家的流派以基于音乐会形成鲁棒的用户兴趣记录。在没有语义信息分析器262的情况下,可能甚至无法分辨出对音乐的兴趣。
在一些方面,语义信息分析器262可以利用诸如关系知识图的语义知识表示来将兴趣与实体和动作联系起来。语义信息分析器262还可利用包括规则、条件或关联的语义分析逻辑来确定与兴趣交互模式相关的语义信息。
兴趣确定器264接收用户数据,并且确定用户具有可以映射到兴趣知识库中的兴趣的一个或多个兴趣,并且完成用户兴趣记录。兴趣确定器264可以周期性地(诸如每小时、每天或每周)评估数据并且生成兴趣记录。可以启发式地或通过使用机器学习(诸如经过专门训练的机器分类器)来确定用户兴趣。启发式方法可以基于从用户数据得出的用户活动和事件为变量分配值。例如,一个月内两次拜访中式餐厅可能使得用户被分类为对中式食物感兴趣。然后可以创建中式食物兴趣事件。可以以类似的方式将其他事件数据映射到其他兴趣。可以为每个变量分配权重,然后可以将该权重与所分配的值组合以确定兴趣。
分类器可以被训练为接收用户输入并且将事件分类为兴趣类别。通常,可以通过将代表性的用户数据输入到分类器中并且迫使分类器计算与分类相对应的特定得分来训练分类器。例如,一批用户数据可以被输入到分类器中,并且被约束为对棒球的兴趣。第二批用户数据可以被输入到分类器中,并且被约束为对网球的兴趣。可以重复这个过程,直到为分类器的节点或特征被分配了如下的值,该值导致在输入相似数据时计算出相似分类。在被训练后,分类器可以接收用户数据并且生成兴趣分类。兴趣分类可以与也从输入得出的置信因子相关联。分类器可以接收与不同变量相关联的大范围的值。在一些情况下,将没有数据可用于各种变量。数据量和数据类型以及与数据相关联的值的差异可能导致不同的置信度得分。在一些情况下,置信度得分可以确定应用兴趣管理器267如何使用数据。例如,应用可以订阅具有高于阈值置信度得分的兴趣事件记录。与低置信度值相关联的得分可能会被一些应用排除在外。其他应用可以设置不同的置信度得分阈值并且接收记录。
应用兴趣管理器267管理应用订阅信息。应用兴趣管理器267可以接收和存储来自各种应用的兴趣订阅。订阅可以被存储在知识库中,该知识库包括多个兴趣、动作和其他特征,诸如置信度得分。订阅将应用与对应的兴趣、动作和与用户兴趣记录相关的其他功能相关联。在由通用存储器管理器268或某个其他组件请求时,应用兴趣管理器267取回应用已经订阅的兴趣。除了兴趣,还可以返回并向请求组件提供可以修改兴趣的相关动作和其他特性。
通用存储器管理器268可以从数据存储装置225添加和取回用户兴趣记录。每次用户兴趣记录由兴趣确定器264、事件监测器280或某个其他组件生成时,其都可以被存储在数据存储装置225中以供以后取回。诸如兴趣记录240的每个兴趣记录与一个或多个兴趣242相关联。单个记录可以包括单个域内的多个兴趣。例如,对爵士音乐的兴趣可以与对一种或多种特定爵士流派的兴趣相组合。兴趣记录240可以包括应用ID 245,其指示形成记录240的数据所源自的应用。例如,应用ID可以指定音乐播放器应用,来自该音乐播放器应用的收听数据被分析以生成兴趣记录240。
兴趣记录240还可以包括与兴趣记录相关联的一个或多个动作。兴趣记录240包括动作一247和动作二249。使用音乐示例,收听事件可以引起所列举的动作与兴趣记录相关联。购买音乐可以引起第二动作与兴趣记录相关联。用户ID 244用于将兴趣记录240与用户相关联。第一实体记录246和第二实体记录248保持与兴趣相关联的实体。在音乐示例中,第一实体记录246可以是用户所收听的艺术家,而第二实体记录248可以是歌曲。
实体解析器266将一般性实体标识转换为应用特定标识。例如,不同的应用可以针对同一实体使用不同的标识。知识库可以用于跟踪不同实体的实体ID,并且在将兴趣记录传递给特定应用时替换针对该应用的正确实体ID。
继续图2,示例系统200包括一个或多个应用270,一个或多个应用270包括消耗用户兴趣记录以提供用户体验的应用或服务。可以通过API将用户记录数据传送给应用270。应用270的示例可以包括但不限于健身监测和训练应用、导航应用、搜索应用、个人助理应用、购物应用、社交媒体应用、游戏和预订应用。
现在转向图3,提供了一种在应用之间共享用户兴趣信息的方法300。可以将应用安装在与用户相关联的一个或多个计算设备上。可以通过从多个应用接收用户兴趣信息的服务来促进共享。
在步骤310,从第一应用接收兴趣注册。兴趣注册标识第一应用和兴趣共享系统内的兴趣。例如,注册可以包括应用ID和兴趣ID。该请求还可以指定与兴趣相关联的动作。例如,应用可能只想要与购买动作或搜索动作相关联的兴趣数据。
在步骤320,存储兴趣注册。兴趣注册可以存储在知识图中,其中每个应用是节点,并且每个兴趣是节点。动作也可以是节点。通过在图内的节点之间进行链接来存储注册。
在步骤330,接收针对用户的用户兴趣记录。该记录是从与第二应用的用户交互而生成的。用户兴趣记录包括兴趣和与兴趣相关联的实体。例如,搜索查询的提交可以生成用户兴趣记录。用于处理查询的分类器可以分配查询意图。例如,可以为查询“最近的花店”分配以花卉为实体的购物意图。
在步骤340,确定已经订阅兴趣共享系统内的兴趣的多个应用。
在步骤350,针对多个应用中的每个应用,在用户兴趣记录中取回针对实体的实体ID。
在步骤360,向第一应用传送用户兴趣通知。用户兴趣通知包括特定于第一应用的实体ID和兴趣的标识。
现在转向图4,提供了一种在应用之间共享用户兴趣信息的方法400。可以将应用安装在与用户相关联的一个或多个计算设备上。可以通过从多个应用接收用户兴趣信息的服务来促进共享。
在步骤410,从第一应用接收针对用户兴趣信息的请求。该请求包括针对第一应用的用户的用户标识。
在步骤420,确定第一应用在兴趣共享系统内所订阅的兴趣。兴趣共享系统跟踪针对多个应用的兴趣订阅。另外,可以取回用户兴趣记录的动作或其他特性。
在步骤430,从数据存储中取回与用户相关联的针对兴趣的兴趣记录。兴趣记录包括与兴趣相关联的实体。兴趣记录是响应于与第二应用的用户交互而被生成的。所取回的兴趣记录满足由应用最初提供的订阅准则。
在步骤440,取回针对实体的实体ID。实体ID向第一应用标识实体。可以通过将知识库中的实体与由应用使用的实体ID进行匹配来确定实体ID。
在步骤450,向第一应用传送用户兴趣通知。用户兴趣通知包括特定于第一应用的实体ID和兴趣的标识。兴趣记录的其他特性可以被包括在用户兴趣通知中。
现在转向图5,提供了一种在应用之间共享用户兴趣信息的方法500。可以将应用安装在与用户相关联的一个或多个计算设备上。可以通过从多个应用接收用户兴趣信息的服务来促进共享。
在步骤510,从第一应用接收针对用户兴趣信息的请求。该请求包括针对第一应用的用户的用户标识。
在步骤520,确定第一应用在兴趣共享系统内所订阅的兴趣和动作。兴趣共享系统跟踪针对多个应用的兴趣订阅。
在步骤530,接收针对兴趣的兴趣记录和与用户相关联的动作。兴趣记录是响应于与第二应用的用户交互而生成的。
在步骤540,向第一应用传送用户兴趣通知。用户兴趣通知指定兴趣和动作。
示例性操作环境
总体上参考附图,并且首先具体地参考图6,示出了用于实现本文中描述的技术的方面的示例性操作环境,并且其总体上被指定为计算设备600。计算设备600只是合适的计算环境的一个示例,而非旨在暗示对本文中描述的技术的使用范围的任何限制。计算设备600也不应当被解释为具有与所示出的组件中的任何一个或组合相关的任何依赖性或要求。
本文中描述的技术可以在计算机代码或机器可用指令的一般性上下文中描述,计算机代码或机器可用指令包括由诸如个人数据助手或其他手持设备的计算机或其他机器执行的计算机可执行指令,诸如程序组件。通常,包括例程、程序、对象、组件、数据结构等的程序组件是指执行特定任务或实现特定抽象数据类型的代码。本文中描述的技术可以在各种系统配置中实践,包括手持式设备、消费电子产品、通用计算机、专用计算设备等。本文中描述的技术的方面也可以在分布式计算环境中实践,其中由通过通信网络而链接的远程处理设备执行任务。
继续参考图6,计算设备600包括直接或间接耦合以下设备的总线610:存储器612、一个或多个处理器614、一个或多个呈现组件616、输入/输出(I/O)端口618、I/O组件620和说明性电源622。总线610表示可以是一个或多个总线(诸如地址总线、数据总线或其组合)的总线。尽管为了清楚起见,图6的各个框用线示出,但是实际上,描绘各个组件不是很清楚,并且隐喻地,线将更准确地是灰色和模糊的。例如,可以将诸如显示设备的呈现组件视为I/O组件。另外,处理器具有存储器。发明人认识到,这是本领域的本质,并且重申图6的示图仅是可以与本文中描述的技术的一个或多个方面结合使用的示例性计算设备的说明。在诸如“工作站”、“服务器”、“膝上型计算机”、“手持设备”的类别之间未进行区分,因为所有这些都在图6的范围内并且指代“计算机”或“计算设备”。
计算设备600通常包括各种计算机可读介质。计算机可读介质可以是可以由计算设备600访问的任何可用介质,并且包括易失性和非易失性、可移除和不可移除介质。作为示例而非限制,计算机可读介质可以包括计算机存储介质和通信介质。计算机存储介质包括以用于存储诸如计算机可读指令、数据结构、程序模块或其他数据等信息的任何方法或技术实现的易失性和非易失性、可移除和不可移除介质。
计算机存储介质包括RAM、ROM、EEPROM、闪存或其他存储器技术、CD-ROM、数字多功能磁盘(DVD)或其他光盘存储、磁带盒、磁带、磁盘存储或其他磁性存储设备。计算机存储介质不包括传播的数据信号。
通信介质通常以诸如载波或其他传输机制的调制数据信号来实施计算机可读指令、数据结构、程序模块或其他数据,并且包括任何信息递送介质。术语“调制数据信号”意指以便于在信号中对信息进行编码的方式设置或改变其特性中的一个或多个特性的信号。作为示例而非限制,通信介质包括诸如有线网络或直接有线连接等有线介质,以及诸如声学、RF、红外和其他无线介质等无线介质。上述的任何组合也应当被包括在计算机可读介质的范围内。
存储器612包括以易失性和/或非易失性存储器形式的计算机存储介质。存储器612可以是可移除的、不可移除的或其组合。示例性存储器包括固态存储器、硬盘驱动器、光盘驱动器等。计算设备600包括从诸如总线610、存储器612或I/O组件620等各种实体读取数据的一个或多个处理器614。(多个)呈现组件616向用户或其他设备呈现数据指示。示例性呈现组件616包括显示设备、扬声器、打印组件、振动组件等。I/O端口618允许计算设备600逻辑地耦合到其他设备,包括I/O组件620,其中的一些可以是内置的。
说明性I/O组件包括麦克风、操纵杆、游戏板、卫星天线、扫描仪、打印机、显示设备、无线设备、控制器(诸如触笔、键盘和鼠标)、自然用户界面(NUI)等。在各方面中,提供了笔数字化器(未示出)和伴随的输入工具(也未示出但是仅作为示例可以包括笔或触笔),以便数字地捕获徒手的用户输入。笔数字化器与(多个)处理器614之间的连接可以是直接的或经由利用串行端口、并行端口和/或本领域已知的其他接口和/或系统总线的耦合。此外,数字化器输入组件可以是与诸如显示设备等输出组件分离的组件,或者在一些方面,数字化器的可用输入区域可以与显示设备的显示区域共存,与显示设备集成在一起,或者可以作为覆盖显示设备或以其他方式附加到显示设备的单独设备而存在。任何和所有这样的变体及其任何组合都被认为在本文中描述的技术的方面的范围内。
NUI处理由用户生成的空中手势、语音或其他生理输入。适当的NUI输入可以被解释为用于与计算设备600相关联地呈现的墨迹笔划。这些请求可以被传输到适当的网络元件以用于进一步处理。NUI实现话音识别、触摸和触笔识别、面部识别、生物特征识别、屏幕上和与屏幕相邻的手势识别、空中手势、头部和眼睛跟踪、以及与计算设备600上的显示器相关联的触摸识别的任何组合。计算设备600可以配备有深度相机,诸如立体相机系统、红外相机系统、RGB相机系统及这些的组合,以用于手势检测和识别。另外,计算设备600可以配备有支持对运动的检测的加速度计或陀螺仪。加速度计或陀螺仪的输出可以被提供给计算设备600的显示器,以绘制沉浸式的增强现实或虚拟现实。
计算设备可以包括无线电624。无线电624发射和接收无线电通信。计算设备可以是适于通过各种无线网络接收通信和媒体的无线终端。计算设备600可以经由诸如码分多址(“CDMA”)、全球移动系统(“GSM”)或时分多址(“TDMA”)等无线协议以及其他协议进行通信,以与其他设备通信。无线电通信可以是短距离连接、长距离连接、或者是短距离和长距离无线电信连接两者的组合。当提到“短”和“长”类型的连接时,并不意味着是指两个设备之间的空间关系。相反,通常将短距离和长距离称为连接的不同类别或类型(即,主连接和辅连接)。短距离连接可以包括与提供对无线通信网络的访问的设备(例如,移动热点)的连接,诸如使用802.11协议的WLAN连接。与另一计算设备的蓝牙连接是短距离连接的第二示例。长距离连接可以包括使用CDMA、GPRS、GSM、TDMA和802.16协议中的一种或多种的连接。
已经关于特定方面描述了本文中描述的技术,这些特定方面在所有方面都旨在是说明性的而不是限制性的。尽管本文中描述的技术易于进行各种修改和替代构造,但是其中一些说明的方面在附图中示出并且已经在上面进行了详细描述。然而,应当理解,并非旨在将本文中描述的技术限于所公开的特定形式,而是相反,意图是涵盖落入本文中描述的技术的精神和范围内的所有修改、替代构造以及等同物。

Claims (20)

1.一种或多种计算机存储介质,包括计算机可执行指令,所述计算机可执行指令在由计算设备执行时使得所述计算设备执行在应用之间共享用户兴趣信息的方法,所述方法包括:
在兴趣共享系统处从第一应用接收兴趣注册,所述兴趣注册标识所述第一应用和所述兴趣共享系统内的兴趣;
在所述兴趣共享系统处存储所述兴趣注册;
在所述兴趣共享系统处接收从与第二应用的用户交互而生成的针对用户的用户兴趣记录,所述用户兴趣记录包括所述兴趣和与所述兴趣相关联的实体;
在所述兴趣共享系统处确定已经订阅所述兴趣共享系统内的所述兴趣的多个应用,所述多个应用包括所述第一应用;
针对所述多个应用中的每个应用,取回针对所述用户兴趣记录中的所述实体的实体ID;以及
从所述兴趣共享系统向所述第一应用传送用户兴趣通知,所述用户兴趣通知包括特定于所述第一应用的实体ID和所述兴趣的标识。
2.根据权利要求1所述的介质,其中所述兴趣注册还包括针对与所述兴趣相关联的动作的动作ID。
3.根据权利要求1所述的介质,其中通过在兴趣/动作图中将兴趣ID节点与应用ID节点链接,所述兴趣注册被存储在所述兴趣/动作图中,所述兴趣/动作图是知识图。
4.根据权利要求1所述的介质,其中所述用户兴趣记录包括与所述兴趣相关联的动作,并且所述方法还包括确定已经订阅所述兴趣共享系统内的所述兴趣和所述动作的所述多个应用。
5.根据权利要求4所述的介质,其中所述兴趣注册还标识兴趣共享系统内的所述动作。
6.根据权利要求1所述的介质,其中取回针对所述实体的所述实体ID包括:在知识图中查找针对所述实体的实体节点;以及通过跟随从所述实体节点到与所述第一应用相关联的节点的边来寻找针对所述第一应用的所述实体ID。
7.根据权利要求1所述的介质,其中所述方法还包括从所述第一应用接收针对用户兴趣信息的请求,所述请求包括应用ID和针对所述第一应用的所述用户的用户ID。
8.一种在应用之间共享用户兴趣信息的方法,所述方法包括:
从第一应用接收针对用户兴趣信息的请求,所述请求包括针对所述第一应用的用户的用户标识;
确定所述第一应用在兴趣共享系统内所订阅的兴趣,所述兴趣共享系统跟踪针对多个应用的兴趣订阅;
从数据存储库中取回与所述用户相关联的针对所述兴趣的兴趣记录,所述兴趣记录包括与所述兴趣相关联的实体,所述兴趣记录是响应于与第二应用的用户交互而生成的;
取回针对所述实体的实体ID,其中所述实体ID向所述第一应用标识所述实体;以及
向所述第一应用传送用户兴趣通知,所述用户兴趣通知包括特定于所述第一应用的实体ID和所述兴趣的标识。
9.根据权利要求8所述的方法,还包括:
从所述第一应用接收兴趣注册,所述兴趣注册标识所述第一应用和所述兴趣共享系统内的所述兴趣;以及
存储所述兴趣注册。
10.根据权利要求8所述的方法,还包括:接收从与所述第二应用的用户交互而生成的针对用户的所述用户兴趣记录,所述用户兴趣记录包括所述兴趣和与所述兴趣相关联的实体;以及存储所述用户兴趣记录。
11.根据权利要求8所述的方法,其中通过在兴趣/动作图中将兴趣ID节点与应用ID节点链接,所述兴趣注册被存储在所述兴趣/动作图中,所述兴趣/动作图是知识图。
12.根据权利要求8所述的方法,所述请求包括所述第一应用的应用ID和针对所述第一应用的所述用户的用户ID。
13.根据权利要求8所述的方法,其中取回针对所述实体的所述实体ID包括:在知识图中查找针对所述实体的实体节点;以及通过跟随从所述实体节点到与所述第一应用相关联的节点的边来寻找针对所述第一应用的所述实体ID。
14.根据权利要求8所述的方法,其中所述用户兴趣记录包括与所述兴趣相关联的动作,并且所述方法还包括确定所述第一应用在兴趣共享系统内已经订阅所述动作。
15.根据权利要求14所述的方法,其中所述用户兴趣通知标识所述动作。
16.一种在应用之间共享用户兴趣信息的方法,所述方法包括:
从第一应用接收针对用户兴趣信息的请求,所述请求包括针对所述第一应用的用户的用户标识;
确定所述第一应用在兴趣共享系统内所订阅的兴趣和动作,所述兴趣共享系统跟踪针对多个应用的兴趣订阅;
取回与所述用户相关联的针对所述兴趣和所述动作的兴趣记录,所述兴趣记录是响应于与第二应用的用户交互而生成的;
向所述第一应用传送用户兴趣通知,所述用户兴趣通知指定所述兴趣和所述动作。
17.根据权利要求16所述的方法,还包括:
从所述第一应用接收兴趣注册,所述兴趣注册标识所述第一应用、所述兴趣共享系统内的所述动作和所述兴趣;以及
存储所述兴趣注册。
18.根据权利要求16所述的方法,其中所述兴趣记录包括与所述兴趣相关联的实体,并且所述方法还包括取回针对所述实体的实体ID,其中所述实体ID向所述第一应用标识所述实体。
19.根据权利要求18所述的方法,其中取回针对所述实体的所述实体ID包括:在知识图中查找针对所述实体的实体节点;以及通过跟随从所述实体节点到与所述第一应用相关联的节点的边来寻找针对所述第一应用的所述实体ID。
20.根据权利要求16所述的方法,其中所述用户交互是查询。
CN201880043315.0A 2017-06-30 2018-06-27 多应用用户兴趣存储器管理 Active CN110799946B (zh)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
IN201741023176 2017-06-30
IN201741023176 2017-06-30
US15/651,905 2017-07-17
US15/651,905 US10565274B2 (en) 2017-06-30 2017-07-17 Multi-application user interest memory management
PCT/US2018/039642 WO2019005893A1 (en) 2017-06-30 2018-06-27 USER INTEREST MEMORY MANAGEMENT WITH MULTIPLE APPLICATIONS

Publications (2)

Publication Number Publication Date
CN110799946A CN110799946A (zh) 2020-02-14
CN110799946B true CN110799946B (zh) 2023-10-13

Family

ID=64738808

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201880043315.0A Active CN110799946B (zh) 2017-06-30 2018-06-27 多应用用户兴趣存储器管理

Country Status (4)

Country Link
US (1) US10565274B2 (zh)
EP (1) EP3646181A1 (zh)
CN (1) CN110799946B (zh)
WO (1) WO2019005893A1 (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3745275A4 (en) * 2018-01-23 2020-12-09 Sony Corporation INFORMATION PROCESSING DEVICE, INFORMATION PROCESSING PROCESS AND RECORDING MEDIA
US11743155B2 (en) * 2019-11-14 2023-08-29 Trideum Corporation Systems and methods of monitoring and controlling remote assets
EP3839772A1 (en) * 2019-12-18 2021-06-23 Université Libre de Bruxelles A method for extracting data associated with a view of an application, a related analysis device and a related mobile computing device
CN111092808B (zh) * 2019-12-27 2022-03-25 北京华为数字技术有限公司 一种信息分享的方法及终端设备

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101681459A (zh) * 2007-06-12 2010-03-24 费斯布克公司 个性化的社交网络应用内容
CN103069413A (zh) * 2010-03-19 2013-04-24 标记公司 基于另一个用户的用户偏好为一个用户定制显示内容
CN104704522A (zh) * 2012-08-17 2015-06-10 谷歌公司 推荐原生应用

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020073241A1 (en) 2000-08-24 2002-06-13 Spx Corporation Global signaling memory
US20030140058A1 (en) 2002-01-18 2003-07-24 Vitria Technology, Inc. Method and apparatus for sharing information between applications using common objects
US20050160458A1 (en) * 2004-01-21 2005-07-21 United Video Properties, Inc. Interactive television system with custom video-on-demand menus based on personal profiles
US7546335B2 (en) 2004-09-02 2009-06-09 Broadway Technology, Llc System and method for a data protocol layer and the transfer of data objects using the data protocol layer
US8683334B2 (en) 2005-08-19 2014-03-25 Intervoice Limited Partnership System and method for sharing access to service provider controls and subscriber profile data across multiple applications in a user interactive system
CN102006321B (zh) * 2006-08-01 2016-05-18 三星电子株式会社 管理用户优选简档的方法、共享服务器和客户端
KR20100057028A (ko) * 2007-08-08 2010-05-28 삼성전자주식회사 네트워크에서 사용자 선호도 프로파일을 관리하기 위한 방법 및 시스템
US8572161B2 (en) 2008-03-12 2013-10-29 Oracle International Corporation Simplifying synchronization of copies of same data used by multiple applications
US8839384B2 (en) 2010-09-01 2014-09-16 Microsoft Corporation Propagating user privacy preferences across multiple applications
US20120209839A1 (en) * 2011-02-15 2012-08-16 Microsoft Corporation Providing applications with personalized and contextually relevant content
US9173055B2 (en) 2012-08-03 2015-10-27 Blackberry Limited Managing of application access to centrally stored place-related data on a mobile device
US9430211B2 (en) 2012-08-31 2016-08-30 Jpmorgan Chase Bank, N.A. System and method for sharing information in a private ecosystem
US10528385B2 (en) * 2012-12-13 2020-01-07 Microsoft Technology Licensing, Llc Task completion through inter-application communication
US20140330647A1 (en) * 2013-05-03 2014-11-06 International Business Machines Corporation Application and service selection for optimized promotion
US20160224637A1 (en) 2013-11-25 2016-08-04 Ut Battelle, Llc Processing associations in knowledge graphs
WO2016172027A1 (en) * 2015-04-21 2016-10-27 Wal-Mart Stores, Inc. Inventory information distribution systems, devices and methods
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
US20170104799A1 (en) * 2015-10-08 2017-04-13 Cyanogen Inc. System and method for communicating information about interesting occurrences at a data node to a subscriber application
US10499209B2 (en) * 2016-07-15 2019-12-03 Facebook, Inc. Installation identification for family applications
US11095732B2 (en) * 2017-05-08 2021-08-17 Branch Metrics, Inc. Matching and attribution of user device events

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101681459A (zh) * 2007-06-12 2010-03-24 费斯布克公司 个性化的社交网络应用内容
CN103069413A (zh) * 2010-03-19 2013-04-24 标记公司 基于另一个用户的用户偏好为一个用户定制显示内容
CN104704522A (zh) * 2012-08-17 2015-06-10 谷歌公司 推荐原生应用

Also Published As

Publication number Publication date
CN110799946A (zh) 2020-02-14
US10565274B2 (en) 2020-02-18
WO2019005893A1 (en) 2019-01-03
US20190005137A1 (en) 2019-01-03
EP3646181A1 (en) 2020-05-06

Similar Documents

Publication Publication Date Title
CN110476176B (zh) 用户目标辅助技术
US10528572B2 (en) Recommending a content curator
US20210374579A1 (en) Enhanced Computer Experience From Activity Prediction
US10726438B2 (en) Personalized contextual coupon engine
TWI636416B (zh) 內容個人化之多相排序方法和系統
US10185973B2 (en) Inferring venue visits using semantic information
CN110799946B (zh) 多应用用户兴趣存储器管理
US20100082427A1 (en) System and Method for Context Enhanced Ad Creation
US10013462B2 (en) Virtual tiles for service content recommendation
US20130204813A1 (en) Self-learning, context aware virtual assistants, systems and methods
US20170309196A1 (en) User energy-level anomaly detection
US20170116285A1 (en) Semantic Location Layer For User-Related Activity
US11573988B2 (en) Storage of point of interest data on a user device for offline use
US11436293B2 (en) Characterizing a place by features of a user visit
JP2016136355A (ja) 情報処理装置、情報処理方法、及び、プログラム
US20170249325A1 (en) Proactive favorite leisure interest identification for personalized experiences
US20190342401A1 (en) Hybrid Sensor Centric Recommendation Engine
CN113420209A (zh) 基于天气搜索的推荐方法、装置、设备及存储介质

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