首页> 中国专利> 从用户数据推断用户特定的位置语义

从用户数据推断用户特定的位置语义

摘要

基于诸如用户活动和/或用户通信之类的用户数据,确定位置的语义。捕捉并分析用户数据,以标识包括位置的关键字。获取描述位置的位置数据,并将其与用户和关键字相关联。关联表示位置的用户上下文。关联被用来在诸如当用户接近或进入特定位置时之类的各种时间向用户递送服务和/或产品。

著录项

  • 公开/公告号CN102483835A

    专利类型发明专利

  • 公开/公告日2012-05-30

    原文格式PDF

  • 申请/专利权人 微软公司;

    申请/专利号CN201080033362.0

  • 发明设计人 J-H·林;

    申请日2010-07-30

  • 分类号G06Q50/00(20120101);G06F17/30(20060101);

  • 代理机构31100 上海专利商标事务所有限公司;

  • 代理人黄嵩泉

  • 地址 美国华盛顿州

  • 入库时间 2023-12-18 05:17:10

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2015-05-20

    专利权的转移 IPC(主分类):G06N5/04 变更前: 变更后: 登记生效日:20150506 申请日:20100730

    专利申请权、专利权的转移

  • 2013-09-04

    授权

    授权

  • 2012-07-11

    实质审查的生效 IPC(主分类):G06Q50/00 申请日:20100730

    实质审查的生效

  • 2012-05-30

    公开

    公开

说明书

背景技术

电子日历数据、待办事项列表及其他用户特定的数据常常标识特定位 置。现有的系统按照诸如商店、餐厅的名称之类的位置名称、街道地址, 或纬度/经度坐标来标识位置。然而,在某些情况下,取决于诸如一天中的 时间之类的因素,相同位置对于同一个用户可以具有不同的意义。例如, 一家本地咖啡屋可以是用户早晨吃早餐的位置,以及用户在晚上出席读书 俱乐部会议的同一个位置。类似地,用户可以在一天在一家本地宴会厅参 加婚宴,然后在另一天在同一宴会厅参加一场婴儿送礼会。在此示例中, 位置对于同一个用户具有多种含义。现有的系统不能标识和区分适用于特 定用户的同一个位置的不同的上下文。

发明内容

本发明的各实施例推断位置特定的用户上下文。从一个或多个计算设 备接收用户数据。接收到的用户数据描述用户活动和/或用户通信。分析用 户数据,以标识与用户数据相关联的位置关键字。位置关键字包括,例如, 位置。位置的用户、位置关键字以及位置数据被存储为表示位置的用户上 下文的一个或多个关联。

提供本发明内容以便以简化形式介绍将在以下的具体实施方式中进一 步描述的一些概念。本发明内容并不旨在标识出所要求保护的主题的关键 特征或必要特征,也不旨在用于帮助确定所要求保护的主题的范围。

附图说明

图1是示出了由多个设备从多个用户收集用户数据的示例性框图。

图2是示出了基于用户活动和用户通信生成位置语义和智能的示例性 框图。

图3是示出了对收集的用户数据进行分析以推断用户上下文的示例性 框图。

图4是示出了具有用于从用户数据推断位置特定的用户上下文的计算 机可执行的组件的计算设备的示例性框图。

图5是示出了收集和分析用户数据以推断位置的用户上下文的示例性 流程图。

在附图中,对应的附图标记指示对应的部分。

具体实施方式

参考附图,本公开的各实施例至少允许确定位置的用户上下文。通过 推断用户上下文,本公开的各方面允许将相关的服务与各位置处的用户102 进行上下文知晓的匹配,并将相关的服务递送给用户102。例如,除向用户 102提供位置的所确定的或推断的用户上下文之外,用户上下文可以被开发 人员利用来为位置语义212和位置智能214提供web服务和应用程序编程 接口(API)。

再次参考图1,示例性框图示出了由多个设备104从多个用户102收 集诸如用户活动202和/或用户通信204之类的用户数据408。在某些实施 例中,用户数据408是瞬时的。多个设备104从用户102检测和/或收集用 户数据408。例如,设备104包括,但不仅限于,移动电话、膝上型计算机、 上网本、数码相机、数字摄像机、游戏控制台(包括手持式游戏控制台)、 便携式音乐播放器、个人数字助理、信息设备、个人通信器以及用户102 的任何其他计算设备。在某些实施例中,设备104包括远离用户102、但是 可被用户102访问的计算设备。这样的计算设备包括,例如,服务器计算 设备、对等计算设备、本地或远程网络数据包传感器等等。

设备104检测用户活动202和/或用户通信204,并收集检测到的活动 和/或通信的至少一部分。收集到的数据被存储在与设备104相关联的存储 器区域中、与分析收集到的数据(例如,挖掘)的设备108相关联的存储 器区域110中、和/或一个或多个其他存储器区域中。设备108挖掘由检测 设备104收集到的用户数据408,以推断用户上下文。用户上下文被存储在 存储器区域110中。存储器区域110包括设备108内部的、外部的、或可 被设备108访问的任何存储器区域。

网络106连接检测设备104和挖掘设备108。在用户102和检测设备 104之间,以及在挖掘设备108和存储器区域110之间还可有网络(未示出)。 网络106包括任何有线或无线网络,包括但不仅限于,蜂窝网络、内联网、 因特网,以及蓝牙无线网络。

接下来参考图2,示例性框图示出了基于用户活动202和用户通信204 生成位置语义212和位置智能214。检测、访问、接收、获取用户活动202 等,以便进行位置数据挖掘206。用户活动202可以是显式的或隐式的。示 例性显式的用户活动202包括下列各项中的一项或多项:日历条目、任务 条目、待办事项列表以及购物列表。示例性隐式的用户活动202包括但不 仅限于,商业交易(例如,购买商品、购买电影票等等),以及消费领域 特定的移动服务。领域特定的移动服务包括逐个转弯的(turn-by-turn)导 航、点到浏览(point-to-browse)房地产信息检索、点到商店(point-to-shop) 价格比较、照片拍摄、照片标记,等等。

类似地,检测、访问、拦截、接收、获取用户通信204等以便进行位 置数据挖掘206。示例性用户通信204包括下列各项中的一项或多项:电子 邮件消息、即时消息、文本消息、博客贴子、微博贴子(例如,“tweet”)、 照片贴子、网站贴子、语音电话呼叫,以及视频电话呼叫。用户通信204 包括其中用户102是始发者的通信和其中用户102是接收者的通信。

位置数据挖掘206基于用户活动202和用户通信204来从一个或多个 数据源208获取位置数据。数据源208包括数据库、网站(例如,用户简 档网页、社交联网网站),或任何其他信息储存库。位置数据描述或提供 与用户活动202和用户通信204相关的更多信息。

在某些实施例中,位置数据挖掘206被实现为在一个或多个计算设备 108上执行的应用程序。例如,位置数据挖掘206的功能可以跨多个计算设 备108分布(例如,云计算)。

位置数据挖掘206输出位置语义212、位置智能214及其他挖掘的数 据。位置语义212基于输入用户活动202和/或用户通信204来描述与特定 位置相关联的含义。例如,位置数据挖掘206访问数据源208以将从用户 活动202和/或用户通信204导出的特定位置匹配到地标、商店、旅游名胜 等等。位置智能214包括,例如,描述了特定位置的信息。例如,如果位 置中的一个对应于餐厅,则位置数据挖掘206访问数据源208,以获取诸如 评论、分级、菜单或可用的预约时间的列表之类的位置智能214。

接下来参考图3,示例性框图示出了对收集的用户数据408进行分析 以推断用户上下文。数据收集302模块捕捉、拦截、接收或以其他方式访 问用户活动202和/或用户通信204。被访问的活动和/或通信被输入到图像、 音频、视频和/或文本分析304模块。图像、音频、视频和/或文本分析304 模块执行分析以标识关键字(例如,位置关键字)。关键字包括,例如, 人的姓名、位置、项,以及时间。位置数据挖掘206使用关键字来从数据 源208提取位置数据。位置数据包括,例如,图2中所示出的位置语义212 和位置智能214。

在图3的示例中,数据收集302和图像、音频、视频和/或文本分析304 功能被示为与位置数据挖掘206分开的元件。然而,由数据收集302,图像、 音频、视频和/或文本分析304以及位置数据挖掘206执行的各种功能可以 被分成任意数量的元件,或由单个功能元件来执行。

在用户102、关键字以及所提取的位置数据之间创建一个或多个关联 310。例如,用户102中的每一个对于每一个位置都可以具有一个关联310。 这导致了对于用户102中的每一个的多个关联310。在某些实施例中,关联 310表示从用户活动202和/或用户通信204标识的位置的用户上下文。

所创建的关联310作为用户上下文被存储在存储器区域110中。例如, 关联310可以被存储为符合下列格式<用户,位置,标记>的n元组。一个 示例包括<Jane,大街2411号,咖啡屋,上午6点-下午5点,上午9点之 后拿铁买一送一(BOGO)>。在此示例中,位置是街道地址大街2411号, 有三个标记。一个标记标识在街道地址处机构的名称,另一个标记标识机 构的营业时间,而另一个标记标识买一送一(BOGO)优惠。标记中的数据 反映从数据源208获得的位置数据。

在某些实施例中,关联310中的标记采用名称-值对或键-值对的形式。 例如,关联310可以按下列格式<用户,位置,名称=值,名称=值……> 来存储。一个示例包括<Jane,大街2411号,餐厅名称=″咖啡屋″,营业时 间=″上午6点-下午5点″,优惠券=″上午9点以后拿铁买一送一(BOGO) ″>。此格式的名称或键可以基于位置(例如,餐厅、商店、博物馆等等) 而被组织成各类别。

本公开的各实施例使用存储的关联310来增强用户体验。例如,可以 在314以用户简档的形式向用户102提供关联310。另外,在316,关联310 可以被用来生成内容推荐。在某些实施例中,基于时间和/或用户102的当 前位置来触发对关联310的使用。继续上面的示例,如果用户102靠近大 街2411号,时间是上午9:15,则本公开的各实施例向用户102提供BOGO 优惠。

接下来参考图4,示例性框图示出了具有用于从用户数据408推断位 置特定的用户上下文的计算机可执行组件的计算设备402。计算设备402 实现来自下列各项中的一项或多项的功能:来自图3的数据收集302,图像、 音频、视频和/或文本分析304以及位置数据挖掘206。计算设备402至少 包括存储器区域406和处理器404。在图4中,存储器区域406在计算设备 402内。然而,存储器区域406或存储在其上的任何数据都可以与本地的或 远离计算设备402(例如,可通过网络访问的)的任何服务器或其他计算机 相关联。例如,存储器区域406可以实现为云存储器。

存储器区域406或其他计算机可读介质存储一个或多个用户102的用 户数据408。用户数据408包括,例如,如图2所示的用户活动202和/或 用户通信204。

存储器区域406进一步存储用于实现本公开的各方面的计算机可执行 组件。示例性组件包括收集组件410、解析器组件412、挖掘组件414、存 储器组件416以及群集(crowd)组件418。收集组件410,在由处理器404 执行时,导致处理器404从诸如来自图1的设备104之类的一个或多个计 算设备接收用户102的用户数据408。解析器组件412,在由处理器404执 行时,导致处理器404标识与由收集组件410接收到的用户数据408相关 联的位置关键字。在某些实施例中,位置关键字包括或对应于一个或多个 位置(例如,商店、餐厅、街道地址、地标等等)。

挖掘组件414,在由处理器404执行时,导致处理器404获取与由解 析器组件412所标识的位置关键字相对应的位置的位置数据。如此处所描 述的,位置数据包括描述位置或提供关于位置的附加信息的任何数据。存 储器组件416,在由处理器404执行时,导致处理器404将由挖掘组件414 所获取的位置数据和由解析器组件412所标识的位置关键字与用户102相 关联。对于用户102中的每一个,相关联的位置数据定义该用户102对于 相应的位置的用户上下文。

尽管在某些实施例中,为用户102中的每一个单独地定义了用户上下 文,但是,其他实施例构想了基于与多个用户102(例如,社交组)相关联 的位置数据来计算或确定位置的上下文。用户102可以属于多个社交组, 并可能希望在各种组中表现不同的角色。在这样的实施例中,位置数据挖 掘206被扩展,以识别组活动和组通信,并为用户102维护社交组附属关 系。

在其中位置是咖啡馆的示例中,本公开的各实施例可以分析多个用户 102的位置数据,以标识在咖啡馆点的最受欢迎的咖啡饮料。这样的信息表 示多个用户102的位置特定的上下文,并可以被添加到特定用户102的上 下文中的一个或多个中。例如,标识所确定的最受欢迎的咖啡饮料的标记 可以被添加到决定参加以接收对他们的位置特定的上下文的这样的更新的 用户102的用户上下文中。作为另一个示例,可以作为向公司提供市场数 据的服务的一部分来向咖啡馆标识确定的最受欢迎的咖啡饮料。公司可以 使用市场数据来进行市场营销、广告及其他业务管理和开发原因。

可以对位置数据或用户102和相对应的位置数据之间的关联310执行 附加的计算或确定。例如,在某些实施例中,可以计算诸如进入旅游名胜 的队列,离开队列以及从旅游名胜退出之类的触发事件之间的时间度量。 示例性度量包括但不仅限于,在位置处所花费的时间、对于旅游名胜的等 待时间、对于餐厅的等待时间,以及访问位置的频率。

此外,还可以使用度量来标识或更新用户102中的一个的兴趣点或对 提供用户数据408的多个用户102通用的兴趣点。例如,如果用户102在 未知位置花费特定阈值的时间量并常去未知位置,则对于本公开的各实施 例,该度量充当对可用的数据源208执行更深的搜索以创建未知位置的兴 趣点的触发器。在某些实施例中,提示用户102手动输入未知位置的语义 位置数据,或使用相机或其他记录设备来帮助捕捉位置数据。

在另一示例中,群集组件418,当由处理器404执行时,导致处理器 404分析由存储器组件416所定义的用户上下文,以标识多个用户102的兴 趣点。兴趣点以对于特定用户102组(其活动和/或通信允许标识兴趣点) 具有含义的方式来描述位置。作为示例,如果一些用户102在特定位置聚 会以讨论书,则位置的名称可以是咖啡馆,但是,从用户102的活动和通 信导出的兴趣点是“读书俱乐部会议”。被称为热图或flash crowd(人群 同时进入一个网站)触发器,本公开的各实施例还计数和分析用户搜索、 指向、扫描、照片拍摄、图像识别、商务交易、价格比较事件等等,来检 测新的兴趣点。响应于接收到的用户活动202和/或用户通信204,在行进 中的基础上(例如,每天、每周、每月)创建和更新兴趣点,以检测偏离 或其他变化。当检测到变化时,本公开的各方面执行对数据源208的搜索 以更新位置语义212。另选地或另外地,选择与变化的兴趣点相关联的一些 用户102(例如,通过利用随机或有针对性的采样的调查),并提示这些用 户确认改变,以有助于更新位置语义212。

在某些实施例中,挖掘组件414受下列各项中的一项或多项的限制: 地理空间限制、社交图限制、时间限制、活动限制以及统计采样。示例性 地理空间限制包括但不仅限于,最频繁地访问的位置,带有商业活动的位 置,以及用户定义的位置/位置收集。示例性社交图限制包括但不仅限于, 联系人、第一和第二级连接以及商业交易或通信对等物。示例性时间限制 包括但不仅限于,日历事件、非循环的事件、工作或非工作时间以及通勤 繁忙时间。示例性活动限制包括但不仅限于,产品和信息搜索、购买、以 及业务会议。

处理器404包括任意数量的处理单元,并被编程为执行用于实现本公 开的各方面的计算机可执行指令。指令可以由处理器404执行或由在计算 设备402内执行的多个处理器执行,或由计算设备402外部的处理器来执 行(例如,由云服务)。在某些实施例中,处理器404被编程为执行诸如 在附图(例如,图5)中所示出的那些指令之类的指令。

接下来参考图5,示例性流程图示出了收集和分析用户数据408以推 断位置的用户上下文。如果在502从诸如设备104之类的计算设备接收到 用户数据408(例如,与用户活动202和/或用户通信204有关的数据), 则在504分析用户数据408,以标识与用户数据408相关联的关键字。例如, 对用户数据408执行文本分析、图像分析和/或音频分析。在某些实施例中, 从用户数据408标识活动的名词和动词。例如,如果用户数据408包括诸 如“在寿司店与Amy吃晚餐”之类的日历事件,则单词“吃”、“晚餐”、 “寿司店”和“Amy”被选为关键字。在另一示例中,如果用户数据408 包括诸如“在泳池旁的乡村俱乐部照看(婴儿)Jonathan”之类的即时消息, 则单词“照看婴儿”、“Jonathan”、“乡村俱乐部”和“泳池”被选为关 键字。关键字包括对应于位置的位置关键字(例如,“寿司店”、“乡村 俱乐部”、“泳池”。

在506,已标识的关键字充当获取位置数据的触发器。位置数据表示 位置特定的知识。本公开的各实施例可以获取位置关键字中的一个的网站 的统一资源定位符(URL),然后,从网站中提取关于该位置的附加信息。 从上面的示例,为“寿司店”获取的位置数据可包括“寿司店”网站上列 出的餐厅类型、评级、定价、菜单、营业时间以及说明。此外,为“照看 婴儿”获取的位置数据可包括在乡村俱乐部网站上张贴的照看婴儿机会的 列表。

可以创建一个或多个标记或其他语义制品(artifact)以存储所获取的 位置数据。在508,在用户102之间定义对应于用户数据408、已标识的位 置关键字以及所获取的位置数据(例如,标记)的一个或多个关联310。在 510,已定义的关联310作为位置特定的和用户特定的上下文被存储在存储 器区域110中。

被存储的关联310可以用于许多目的。例如,随着用户102中的一个 接近或进入一位置,本发明的各实施例在该用户102的存储的关联310中 搜索该位置。例如,可以搜索存储的关联310中的位置关键字以寻找匹配 的关联。如果有该位置的关联310,则从关联310获取位置数据或其一部分, 并以某种形式提供到用户102。例如,可以将位置数据提供到用户102以供 显示,或可以基于位置数据来选定产品或服务。当用户102进入该位置, 或当用户102停留在该位置时,向用户102呈现所选产品或服务。另选地 或另外地,基于来自匹配的关联的位置数据的至少一部分,创建或修改用 户界面。例如,随着用户102进入位置,当用户102处在该位置时,或随 着用户102离开位置,用户界面被提供到用户102。

例如,随着用户102接近咖啡馆,搜索关联310以标识对应于咖啡馆 位置的关联310。如果找到,则解析关联310,以提取位置数据的一个或多 个项。例如,可以从关联中提取最近点的咖啡饮料的列表。随着用户102 进入咖啡馆,所提取的信息被提供到用户102。在此示例中,最近点的咖啡 饮料的列表被预先存储在关联310中(例如,紧接着用户102对咖啡店的 前一次访问之后)。

示例性操作环境

作为示例而非限制,计算机可读介质可包括计算机存储介质和通信介 质。计算机存储介质存储诸如计算机可读指令、数据结构、程序模块之类 的信息或其他数据。通信介质通常体现诸如载波或其他传输机制等已调制 数据信号中的计算机可读指令、数据结构、程序模块或其他数据,并包括 任何信息传递介质。上面各项中的任何组合也包括在计算机可读介质的范 围内。

虽然是结合示例性计算系统环境来描述的,但是,本发明的各实施例 对于很多其他通用或专用计算机系统环境或配置也很适用。适用于本发明 的各方面的公知的计算系统、环境和/或配置的示例包括,但不仅限于:移 动计算设备、个人计算机、服务器计算机、手持式或膝上型设备、多处理 器系统、游戏控制台、基于微处理器的系统、机顶盒、可编程消费电子产 品、移动电话、网络PC、小型计算机、大型计算机、包括上面的系统或设 备中的任何一种的分布式计算环境等等。

可以在由一台或多台计算机或其他设备执行的诸如程序模块之类的计 算机可执行的指令的一般上下文中来描述本发明的各实施例。计算机可执 行指令可以被组织成一个或多个计算机可执行的组件或模块。一般而言, 程序模块包括,但不限于,执行特定任务或实现特定抽象数据类型的例程、 程序、对象、组件,以及数据结构。可以利用任何数量的这样的组件或模 块和组织,来实现本发明的各方面。例如,本发明的各方面不仅限于图形 中所示出并且在此处所描述的特定计算机可执行的指令或特定组件或模 块。本发明的其他实施例可以包括具有比此处所示出和描述的功能多一些 或少一些功能的不同的计算机可执行指令或组件。

本发明的各方面在通用计算机被配置成执行此处所描述的指令时将通 用计算机变换为专用计算设备。

此处所示出和描述的实施例以及此处没有专门描述但是在本发明的各 方面的范围内的实施例构成用于挖掘与用户102和位置相关联的数据的示 例性装置,以及用于获取位置数据的示例性装置。

此处所示出和描述的本发明的各实施例中的操作的执行的顺序不是必 需的,除非另作说明。即,除非另作说明,操作可以以任何顺序执行,本 发明的各实施例可以包括比此处所公开的操作多一些或少一些操作。例如, 在一个操作之前,同时,或之后执行另一个操作也在本发明的各方面范围 之内。

当介绍本发明的各方面的元件或其实施例时,“一个”、“所述”旨 在表示有元件中的一个或多个。术语“包括”,以及“具有”是包含性的, 并表示除所列出的元件以外,还可以有额外的元件。

已经详细地描述了本发明的各方面,显然,在不偏离所附权利要求书 所定义的本发明的各方面的范围的情况下,可以进行各种修改。在不偏离 本发明的各方面的范围的情况下,可以对上面的结构、产品,以及方法作 出各种更改,上面的描述中所包含的和各个附图中所示出的所有主题应该 解释为说明性的,而不是限制性的。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号