在不同设备生态系统之间映射用户标识符的制作方法

文档序号:14652156发布日期:2018-06-08 22:03阅读:161来源:国知局
在不同设备生态系统之间映射用户标识符的制作方法

很多人在他们的日常生活中与多个不同的电子设备交互。在他们的家中,人们可以操作各种各样的个人计算设备(例如,台式机、笔记本电脑、机顶设备、游戏设备等)以执行各种日常活动(例如,购物、通信、社交媒体、研究、游戏等)。类似地,人们可以在他们的工作场所操作附加的计算设备(例如,台式机、服务器、膝上型电脑、笔记本电脑等),以执行他们的工作相关活动。在家庭和工作之间通勤时,他们可以运行其他电子设备,包括各种移动设备(例如,手机、个人数据助理、车载设备等)。

由于各种原因,可能需要标识使用设备的个人(或将简档与个人相关联)。例如,个性化服务或产品的提供方可能希望知道使用电子设备的潜在消费者的身份(或简档),从而提供适当的个性化服务或产品。更具体地,近年来,移动设备已经越来越多地用于定向内容递送,诸如广告。为了获取潜在客户跨多个设备的的全面行为状况以进行定位,有必要将这些设备上的用户标识符链接在一起。然而,将移动设备上的用户标识符链接到其他设备(例如,个人计算机(PC)、膝上型计算机等)上的标识符是一项挑战,尤其是在不同设备生态系统的情况下。

特定设备生态系统内的设备可以被设计为彼此良好地工作,并且可以提供改进的通用性,诸如通用应用,并且采用类似的用户界面。但是,现有的标识符同步服务不能够在不同设备生态系统之间映射标识符。



技术实现要素:

在至少一些实施例中,一种用于在不同设备生态系统之间映射用户标识符的系统可以包括处理组件和映射引擎,其中该处理组件可操作地耦合到存储器,该映射引擎至少部分地设置在存储器中。在至少一些实施例中,映射引擎可以被配置为将与用户相关联的第一标识符与第二标识符进行映射,第一标识符或第二标识符中的至少一个与第一设备生态系统相关联;并且将与第二设备生态系统相关联的第三标识符与第一标识符或第二标识符中的至少一个进行映射,第二设备生态系统不同于第一设备生态系统,上述映射至少部分地基于:(i)第三标识符与第一标识符的多个第一共位出现以及(ii)第三标识符与第二标识符的多个第二共位出现。在至少一些实施例中,映射引擎还可以被配置为提供第三标识符与用户的关联的指示。

在其他实现中,一种至少部分使用一个或多个处理组件实现的方法可以包括将与用户相关联的第一标识符与第二标识符相映射,第一或第二标识符中的至少一个与第一设备生态系统相关联;将与第二设备生态系统相关联的第三标识符与第一标识符或第二标识符中的至少一个相映射,第二设备生态系统与第一设备生态系统不同,并且提供第三标识符与用户的关联的指示。在至少一些实现中,映射包括确定指示第三标识符和一个或多个其他标识符接入第一网络接入的多个第一共位出现得分,确定指示第三标识符和一个或多个其他标识符接入第二网络接入的多个第二共位出现得分,处理多个第一共位出现得分和多个第二共位出现得分以确定最高的第一共位出现得分和最高的第二共位出现得分;并且如果最高的第一共位出现得分与第一标识符或第二标识符中的至少一个相对应,或者最高的第二共位出现得分与第一标识符或第二标识符中的至少一个相对应,则将第三标识符映射到第一标识符或第二标识符中对应的至少一个。

类似地,在至少一些实现中,一种或多种承载一个或多个指令的计算机可读介质,一个或多个指令在由一个或多个处理组件执行时执行包括以下各项的操作:将与用户相关联的第一标识符与第二标识符进行映射,第一或第二标识符中的至少一个与第一设备生态系统相关联;将与第二设备生态系统相关联的第三标识符与第一标识符或第二标识符中的至少一个进行映射,第二设备生态系统与第一设备生态系统不同,并且提供第三标识符与用户的关联的指示。在至少一些实现中,映射可以包括:确定指示第三标识符和一个或多个其他标识符接入第一网络接入的多个第一共位出现得分,确定指示第三标识符和一个或多个其他标识符接入第二网络接入的多个第二共位出现得分,处理多个第一共位出现得分和多个第二共位出现得分,以确定最高的第一共位出现得分和最高的第二共位出现得分;并且如果最高的第一共位出现得分与第一标识符或第二标识符中的至少一个相对应,或者最高的第二共位出现得分与第一标识符或第二标识符中的至少一个相对应,则将第三标识符映射到第一标识符或第二标识符中的相应的至少一个。

提供本“发明内容”是为了以简化的形式介绍将在以下“具体实施方式”中进一步描述的一些概念。本“发明内容”并非旨在确定所要求保护的主题的关键特征或基本特征,也不旨在用作确定所要求保护的主题的范围的辅助手段。

附图说明

参考附图来描述具体实施方式。在附图中,在不同附图中使用相同的附图标记表示相似或相同的组件。

图1示出了用于在不同设备生态系统之间映射用户标识符的环境的实施例。

图2示出了用于在不同设备生态系统之间映射用户标识符的映射引擎的实施例。

图3示出了用于在不同设备生态系统之间映射用户标识符以提供个性化服务或产品的过程的实施例。

图4示出用于在不同设备生态系统之间映射用户标识符的环境的另一实施例。

图5A和5B示出了用于在不同设备生态系统之间映射用户标识符的过程的另一实施例。

图6示出了用于将第一标识符和第二标识符映射到一起以将第一标识符和第二标识符两者与用户进行关联的过程600的实施例。

图7示出了用于在不同设备生态系统之间映射用户标识符的计算机系统的实施例。

图8示出了用于在不同设备生态系统之间映射用户标识符的联网环境的实施例。

具体实施方式

本公开描述了用于在不同设备生态系统之间映射用户标识符的技艺和技术。这样的技艺和技术可以在各种计算设备(例如,非移动计算设备和移动计算设备)中实施。另外,这样的设备可以在运行各种各样的设备生态系统。如下面更全面描述的,根据本公开的用于映射用户标识符的技艺和技术可以有利地(甚至当用户在不同设备生态系统内运行的设备之间改变时)确定设备的用户的身份。

一般而言,术语“设备生态系统”(或简称为“生态系统”)可以指代设备的软件特性、硬件特性、固件特性或其他合适特性(例如,操作特性等)的一个或多个方面。设备生态系统可以例如取决于特定的制造商或品牌名称(例如,Microsoft、Google、Apple等),或者取决于特定的软件组件或软件套件(例如,Windows、Android、iOS等)。

在至少一些实现中,本公开提供了以下技艺和技术:其用于利用行为模式在不同设备生态系统之间映射用户标识符,以将移动设备(例如,手机、平板电脑等)上的用户标识符与非移动设备设备(例如,PC)上的用户标识符进行链接。在至少一些实现中,这样的技艺和技术可以使用位置行为模式、时间行为模式或两者。例如,在至少一些实现中,这样的技艺和技术可以记录非移动设备(例如,PC)和移动设备上的用户标识符所接入的IP地址、以及这样的设备关联于(或接入)特定的IP地址的时间。因此,在至少一些实现中,基于与非移动用户标识符的映射集群相关联的移动设备的时间和位置,这样的技艺和技术可以将移动设备的用户标识符链接到非移动用户标识符的映射集群。基于在非移动设备和移动设备上的活动,这样的技艺和技术可以支持改进对(甚至跨不同的设备生态系统的)移动设备用户的标识。

图1示出了用于在不同设备生态系统之间映射用户标识符的环境100的实施例。在这个实施例中,环境100包括系统100,其具有通过总线116耦合到存储器120的一个或多个处理组件112和一个或多个输入/输出(I/O)组件114。本实施例的存储器120包括基本输入/输出系统(BIOS)122以及操作系统124,其中基本输入/输出系统(BIOS)122提供支持在系统110内的元件之间传送信息的基本例程,操作系统124管理系统110的各种元件并且向其提供公共服务。

在图1所示的实施例中,系统110的存储器120还包括用于映射用户标识符的映射引擎150以及存储可以由映射引擎150访问的信息的映射数据库155。更具体地,映射引擎150可以包括以下指令:该指令在由一个或多个处理组件112执行时执行如本文所述的用于映射用户标识符的一个或多个操作。存储器120还可以包括个性化服务或产品组件160,其可以从映射引擎150接收映射信息并且可以基于映射信息向用户A的移动设备174提供一个或多个个性化服务或产品。例如,在至少一些实现中,个性化服务或产品组件160可以向用户A提供定制(或定向)广告。

应当理解,说明性系统110表示各种可能的系统类型,包括但不限于服务器、大型机、工作站、台式计算设备、便携式或手持式计算设备、分布式计算系统、基于云的计算系统或任何其他合适类型的系统。如图1所示,系统110可以(例如,经由I/O组件114)直接地或间接地经由一个或多个网络160(例如,蜂窝网络、全球通信网络、局域网(LAN)、广域网(WAN)、有线或无线网络等)而与一个或多个其他设备通信,该一个或多个其他设备包括例如膝上型计算设备170(例如,膝上型计算机、笔记本等)、台式计算设备176和移动设备174(例如,蜂窝电话、平板电脑、笔记本电脑、个人数据助理(PDA)等)。

在至少一些实现中,系统110和设备170、172、174可以容易地分类为“移动”或“非移动”设备,但是,在至少一些实现中,系统110和设备170、172、174可能不那么容易分类。例如,在至少一些实现中,系统110和设备170、172、174中的一个或多个实际上可以被认为是既是“移动的”又是“非移动的”,或者可以共享“移动”和“非移动”设备类别两者的至少一些特性或属性。因此,应当理解,术语“移动”和“非移动”可以在本文中为了参考或方便而被使用,然而,这样的术语不意图相互排斥或限制本文中描述的技艺和技术中涉及可能涉及的各种设备。

如图1进一步所示,各种设备170、172、174可以经由具有第一网际协议(IP)地址IP1的第一网络接入和具有第二IP地址IP2的第二网络接入来接入一个或多个网络160。更具体地,在第一时间(或第一时间段)T1,用户A可以操作膝上型计算设备170以经由第一网络接入IP1来接入一个或多个网络160。第一标识符ID1与膝上型计算设备170上的用户A相关联。类似地,具有第三标识符ID3的移动设备174也可以经由第一网络接入IP1来接入一个或多个网络160。

应当理解,具有其他设备标识符的其他设备(未示出)也可以在第一时间T1(或在第一时间T1期间)连接到第一网络接入IP1,为了清楚起见,这些其他设备(和设备标识符)没有在图1中示出。如本文中使用的,术语“用户标识符”可以被理解为指代已经与特定用户相关联的设备标识符。因此,使用多个设备的用户可以具有与用户相关联的多个“用户标识符”。

继续参考图1,用户A可以与移动设备174一起从一个位置移动到另一位置。在第二时间T2,用户A可以操作台式计算设备172以经由第二网络接入IP2来接入一个或多个网络160。第二标识符ID2与台式计算设备172上的用户A相关联。而且,在第二时刻T2,具有第三标识符ID3的移动设备174可以经由第二网络接入IP2来接入一个或多个网络160。再次,可以注意到,具有其他设备标识符的其他设备(未示出)也可以在第二时间T2(或者在第二时间T2期间)连接到第二网络接入IP2,为了清楚起见,这些其他设备(和设备标识符)没有在图2中示出。

随着时间的推移,用户A可以在不同位置之间来回移动,使得第一标识符ID1可以在多个时间T1接入第一网络接入IP1,第三标识符ID3可以在另外的多个时间T1接入第一网络接入IP1,第二标识符ID2可以在另外的多个时间T2接入第二网络接入IP2,并且第三标识符ID3可以在另外的多个时间T2接入第二网络接入IP2。

在至少一些实现中,膝上型计算设备170和台式计算设备172可以与相同(或基本上相似)的设备生态系统一起运行。另外,在至少一些实现中,移动设备174可以与与设备170、172的设备生态系统不同(或基本上不同)的设备生态系统一起运行。如下面更全面描述的,具有映射引擎150的系统110可以实现以下技艺和技术:该技艺和技术可以有利地基于设备170、172、174的活动来改善对移动设备174上的用户A的标识,甚至当移动设备174正在基于与设备170、172的的设备生态系统不同于(或基本上不同)的设备生态系统运行时。

图2示出了用于在不同设备生态系统之间映射用户标识符的映射引擎150的实施例。在这个实现中,映射引擎150包括IP地址查找组件152。IP地址查找组件152被配置为确定IP地址的位置(例如,个人住宅、私人商业地址、公共地址等)。另外,在这个实现中,映射引擎150包括时间确定组件154。时间确定组件154被配置为标识一天中设备连接到IP地址的时间,该时间例如可以用于确定在正常工作时间、下班时间或其他建立的时间段内是否发生连接。时间确定组件154可以例如考虑不同的国家、地区、时区、节假日和其他各种因素。

如图2进一步所示,在这个实现中,映射引擎150包括记录保持组件156。记录保持组件156被配置为与系统110和映射引擎150的其他组件(包括IP地址查找组件152和时间确定组件154)进行通信,并且记录在特定时间(例如,T1、T2)在IP地址(例如,IP1、IP2)上出现的用户标识符(例如,ID1、ID2、ID3)。更具体地,在至少一些实现中,记录保持组件156包括或生成由<IP地址,小时>表征的映射,其记录在特定时间(或时间段)在IP地址(或网络接入)上出现的所有用户标识符。映射组件158被配置为分析由记录保持组件156生成的记录,并且如下面更全面的描述的,对标识符对(例如,<ID1,ID2>,<ID1,ID3>,<ID2,ID3>等)的共位进行评分。在至少一些实现中,当事件日志(例如,每小时事件日志)被处理时,记录保持组件156可以接收<IP地址,小时>的传入条目,并且映射组件158可以连续(或不连续地)处理由记录保持组件添加的新条目,以执行本文中描述的一个或多个映射操作。当然,可以理解,映射引擎150可以以各种各样的实施例来实现,并且映射引擎150不限于图2所示的特定说明性实施例。

图3示出了用于在不同设备生态系统之间映射用户标识符以提供个性化服务或产品的过程300的实施例。在这个实现中,过程300包括在302确定与用户A相关联的第一标识符ID1接入第一网络接入IP1的一个或多个活动。这样(在302)确定一个或多个活动可以包括:例如接收以下一个或多个指示:该一个或多个指示关于具有与用户A相关联的第一标识符ID1的第一设备D1(例如,膝上型计算设备170)已经在一个或多个第一时间T1经由第一网络接入IP1接入一个或多个网络。

在图3所示的实现中,过程300还包括在304确定第二标识符ID2接入第二网络接入IP2的一个或多个活动。在至少一些实现中,确定一个或多个活动(在304)可以包括例如接收以下一个或多个指示:该一个或多个指示关于具有第二标识符ID2的第二设备D2(例如,台式计算设备172)已经在一个或多个第二时间T2经由第二网络接入IP2接入一个或多个网络。

过程300还包括在306将第一标识符ID1和第二标识符ID2映射到一起,以将第一标识符ID1和第二标识符ID2两者与用户A相关联。例如,在至少一些实现中,第一标识符ID1和第二标识符ID2的映射(在306)使用已知的映射算法将第一标识符ID1和第二标识符ID2两者与用户A进行关联(即,A={ID1,ID2}),如授权给Cao等人的美国专利号8,843,394中公开的。在至少一些实现中,第一标识符ID1和第二标识符ID2的映射(在306)可以采用已知的算法,如下面参考图6更全面描述的。

如图3进一步所示,过程300还可以包括在308确定第三标识符ID3接入第一网络接入IP1的一个或多个活动。例如,在至少一些实现中,确定一个或多个活动(在308)可以包括接收以下一个或多个指示:该一个或多个指示关于具有第三标识符ID3的第三设备D3(例如,移动设备174)已经在一个或多个第一时间T1经由第一网络接入IP1接入一个或多个网。

类似地,过程300还可以包括在310确定第三标识符ID3接入第二网络接入IP2的一个或多个活动。在至少一些实现中,确定一个或多个活动(在310)可以包括例如接收以下一个或多个指示:该一个或多个指示关于具有第三标识符ID3的第三设备D3(例如,移动设备174)已经在一个或多个第二时间T2经由第二网络接入IP2接入一个或多个网络。

过程300还可以包括在步骤312将第三标识符ID3与第一标识符ID1或第二标识符ID2中的至少一个映射到一起,以将第三标识符ID3与用户A相关联。更具体地,在至少一些实现中,映射引擎150的映射组件158可以对关于在先前的操作302、304、308和310中确定的第一标识符ID1、第二标识符ID2和第三标识符ID3接入第一网络接入IP1和第二网络接入IP2的一个或多个活动的信息进行分析,并且可以对标识符对(例如,<ID1,ID2>、<ID1,ID3>、<ID2,ID3>)的协同出现进行评分。以这种方式,同时使用同一位置(例如,同一IP地址)处的一对标识符的协同出现(或共位),根据本公开的技艺和技术可以有利地跨多个设备映射用户标识符,甚至当这些设备可以在不同的(或基本上不同的)生态系统中操作时。

如本文中使用的,术语“协同出现”(或“标识符协同出现”或“共位出现”)可以用于指代当标识符一起被看到时标识符对在一个或多个地方(例如,网络接入或其他合适的数据源)的记录。在相同(或基本上相似)的生态系统中,通常支持标识符协同出现。例如,在大多数运行操作系统的个人计算机(PC)上,Microsoft标识符通常存在,并且可以用作映射其他标识符的链接。但是,在不同的生态系统中,诸如操作不同操作系统的(例如,iOS、Android等)设备,可能很难跨这些生态系统映射标识符,因为通常没有公共链接。

标识符协同出现的评分(在312)可以以各种合适的方式来完成。例如,在至少一些实现中,标识符对的评分可以包括:对标识符对中的两个标识符同时或在给定时间段内(例如,在彼此的1分钟内等)已经接入特定网络接入(例如,IP1、IP2)的出现次数进行计数。在至少一些实现中,基于第一标识符与第三标识符(例如,<ID1,ID3>)的协同出现(或共位)的评分,映射引擎150的映射组件158可以将第三标识符ID3与第一标识符ID1进行映射(或进行关联),由此(在312)将(移动设备D3的)第三标识符ID3与用户A进行关联。类似地,在至少一些实现中,基于第二标识符与第三标识符(例如,<ID2,ID3>)的协同出现的评分,映射引擎150的映射组件158可以将第三标识符ID3与第二标识符ID2进行映射(或进行关联),由此(在312)将(移动设备D3的)第三标识符ID3与用户A进行关联。

再次参考图3,过程300还可以包括在314向与第三标识符ID3相关联的第三设备D3提供为用户A定制的个性化服务或产品(例如,个性化服务或产品组件160可以提供定向广告或其他个性化服务、产品或方面)。例如,在至少一些实现中,提供为用户A定制的个性化服务或产品(在314)可以包括:确定与用户A相关联的简档(例如,性别、年龄组、先前展示的亲和力等),至少部分地基于简档来从多个广告中选择广告,并且向第三设备D3提供所选择的广告。

应当理解,与传统操作相比,用于在不同设备生态系统之间映射用户标识符的技艺和技术可以提供显著的操作改进。例如,这样的技艺和技术使得适当定制的个性化服务或产品能够被提供给设备的用户,由此减少或消除与重复递送不适当的个性化服务或产品或者重复尝试确定(或重新确定)用户身份相关联的不必要的处理需求或能耗。因为如本文中公开的用于映射用户标识符的技艺和技术甚至可以在不同的设备生态系统之间采用,所以与传统技艺和技术相比,这样的技艺和技术可以用实现期望的结果所需要的更少的计算操作来更高效地操作,同时减少资源使用(例如,存储器使用较少、功耗较低等),并且对基础设施的压力较小(例如,与错误或不适当的操作相关的带宽使用减少等)。

根据本公开的用于在不同设备生态系统之间映射用户标识符的技艺和技术不一定限于上面参考图1至3描述的特定实施例。在以下描述中,将描述用于在不同设备生态系统之间映射用户标识符的技艺和技术的附加实施例。应当理解,本文中描述的实施例并不旨在穷举根据本公开的所有可能的实施例,并且可以基于本文中公开的主题来构思附加实施例。例如,应当理解,所描述的实施例的各种组件和方面中的至少一些可以被省略以创建附加的实施例,或者可以被不同地组合以创建另外的实施例。在附加实施例的以下讨论中,可以使用共同的附图标记来指代上面引入的元素,并且为了简洁起见,可以省略对先前引入的元素的描述,以便可以将重点适当地放置在这样的附加实施例的新的或变化的方面。

图4示出了用于在不同设备生态系统之间映射用户标识符的环境400的另一实施例。在这个实现中,环境400包括被配置为与一个或多个网络412通信的映射系统410、以及个性化服务或产品组件415,其被被配置为经由一个或多个网络412从映射系统410接收信息并且经由一个或多个网络412提供定制(tailored)或定制(customized)服务或产品。在至少一些实现中,映射系统401可以被配置为执行用于在不同设备生态系统之间映射标识符的操作,然而,在其他实现中,如下面更全面描述的,用于在不同设备生态系统之间映射标识符的一个或多个组件或功能可以被分配给环境400的其他部分(例如,映射元件420、422)。

第一位置(例如,家庭或住宅位置)414与第一网络接入IP1相关联(或者包括第一网络接入IP1),并且第二位置(例如,工作位置)416与第二网络接入IP2相关联(或者包括第二网络接入IP2)。具有第一标识符ID1的第一设备PC1位于第一位置414(例如,家庭或住宅),并且可以用于接入第一网络接入IP1(例如,无线路由器、调制解调器、交换机、防火墙、网络设备等)以接入一个或多个网络412。类似地,具有第二标识符ID2的第二设备PC2位于第二位置416(例如,工作位置),并且可以用于接入第二网络接入IP2以接入一个或多个网络412。如图4所示,用户A可以携带具有第三标识符ID3的移动设备M3,并且可以在第一时间段415期间(例如,由月亮表示的夜间或下班时间)位于第一位置414,并且也可以在第二时间段417期间(例如,由太阳表示的工作时间)位于第二位置416。通常,在至少一些实现中,第一设备PC1和第二设备PC2可以与相同(或基本上相似)的生态系统协同运行,并且移动设备M3可以与不同于(或基本上不同)第一设备PC1和第二设备PC2的生态系统的生态系统一起操作。

在至少一些实现中,一个或多个第一映射元件420可以与第一位置414相关联。一个或多个第一映射元件420可以由第一设备PC1、第一网络接入IP1、移动设备M3或任何其他合适的设备或组件中的一个或多个来托管(或设置于其上)。类似地,在至少一些实现中,一个或多个第二映射元件422可以与第二位置416相关联。一个或多个第二映射元件422可以由第二设备PC2、第二网络接入IP2、移动设备M3或任何其他合适的设备或组件中的一个或多个来托管(或设置于其上)。应当理解,一个或多个第一映射元件420和第二映射元件422可以(单独地或与映射系统410协作以)执行与如本文中描述的映射标识符相关联的一个或多个操作或功能,包括例如映射引擎150(例如,IP地址查找组件152、时间确定组件154、记录保持组件156或映射组件158中的一个或多个)的一个或多个操作或功能。

使用已知技术,第一标识符ID1和第二标识符ID2可以被映射到用户A,并且与用户A相关联。更具体地,如果第一设备PC1和第二设备PC2与相同的生态系统(或者基本类似的生态系统)协同运行,则使用诸如授权给Cao等人的美国专利号8,843,394中公开的已知映射技术,可以将标识符对<ID1,ID2>与用户A进行关联。然后,为了将与移动设备M3相关联的第三标识符ID3映射(例如,跨不同生态系统中的多个设备)到用户A,根据本公开的技艺和技术使用协同出现(或共位),其指代的是一对标识符同时在同一IP地址但是不一定在同一设备上的出现。

通常,用户可以使用在工作或家中在相同或相似生态系统(例如,Microsoft生态系统中的Microsoft标识符、Apple生态系统中的Apple标识符等)内运行的PC(台式机或便携式计算机)。因此,通过本文中公开的共位技艺和技术,可以检测使用不同生态系统(例如,Android)的移动设备上的标识符,并且将其映射到这样的家庭和工作PC上的标识符,从而使得能够跨不同生态系统来一起映射标识符对。

更具体地,参考图4,标识符在第一时间段(或下班时间)415期间在第一(或家庭)位置414处的协同出现可以导致第一(或家庭)协同出现430。类似地,标识符在第二时间段(或工作时间)417期间在第二(或工作)位置416处的协同出现可以导致第二(或工作)协同出现432。在至少一些实现中,第一协同出现430可以使用与第一位置414相关联的一个或多个第一映射元件420来确定,而第二协同出现432可以使用与第二位置416相关联的一个或多个第二映射元件422来确定。个性化服务或产品组件415可以从映射系统410接收将第三标识符ID3与用户A进行关联的映射信息,并且进而可以经由一个或多个网络412向移动设备M3提供为用户A适当地个性化或定制的服务或产品。

图5A和5B示出了用于在不同设备生态系统之间映射用户标识符的过程500的另一实施例。在这个实现中,过程500描述与图4的环境400相关联的操作。其中第一位置414被假定为家庭或居住地点,并且第二地点416被假定为工作或就业地点。然而,应当理解,在其他实现中,可以采用任何其他合适的第一位置和第二位置。

如图5A所示,在至少一些实现中,过程500包括在502确定与用户A相关联的第一设备PC1接入家庭网络接入IP1的一个或多个活动。更具体地,在至少一些实现中,在502确定与用户A相关联的第一设备PC1接入家庭网络接入IP1的一个或多个活动可以包括:在504接收关于具有与用户A相关联的第一标识符ID1的第一设备PC1已经接入家庭网络接入IP1的一个或多个指示。例如,在特定实施例中,系统110(或映射系统410)的映射引擎150的IP地址查找组件152可以接收以下指示:该指示关于具有与用户A相关联的第一标识符ID1的第一设备PC1已经接入家庭网络接入IP1。

应当理解,第一标识符ID1可以以各种方式与用户A进行关联,包括例如通过用户A的先前注册以及用户A与第一标识符ID1的先前关联,并且然后存储将用户A与第一标识符ID1进行关联的信息(例如,存储到映射数据库155中)。在至少一些实现中,图2的IP地址查找组件152可以确定与家庭网络接入IP1相关联的第一位置(或地区(area)或区域(region))。与关于与用户A相关联的第一标识符ID1已经接入家庭网络接入IP1的一个或多个指示(在504接收的)相关联的信息可以(例如,通过映射引擎150、映射系统410、一个或多个第一映射元件420等)存储在映射数据库155内。

类似地,在至少一些实现中,在502确定与用户A相关联的第一设备PC1接入家庭网络接入IP1的一个或多个活动还可以包括:在506确定与以下一个或多个指示相关联的一个或多个第一接入时间T1,该一个或多个指示关于与用户A相关联的第一标识符ID1已经接入家庭网络接入IP1。例如,在特定实施例中,系统110的映射引擎150的时间确定组件154(或系统410、或一个或多个第一映射元件420)可以确定与以下一个或多个指示(在504接收)相关联的一个或多个第一接入时间T1,该一个或多个指示关于与用户A相关联的第一标识符ID1已经接入家庭网络接入IP1以使用第一设备PC1访问一个或多个网络。与一个或多个第一接入时间T1(在506确定的)相关联的信息可以(例如,通过映射引擎150、映射系统410、一个或多个第一映射元件420等)存储在映射数据库155内。

如图5A进一步所示,在这个实现中,过程500包括在508确定第二设备PC2接入工作网络接入IP2的一个或多个活动。在至少一些实现中,在508确定第二设备PC2接入工作网络接入IP2的一个或多个活动可以包括:在510接收关于具有第二标识符ID2的第二设备PC2已经接入工作网络接入IP2的一个或多个指示。例如,在特定实施例中,系统110的映射引擎150的IP地址查找组件152(或映射系统410或一个或多个第二映射元件422)可以接收以下指示:该指示关于第二标识符ID2已经使用第二设备PC2接入工作网络接入IP2。

类似地,在至少一些实现中,在508确定第二设备PC2接入工作网络接入IP2的一个或多个活动还可以包括:在512确定与以下一个或多个指示相关联的一个或多个第二接入时间T2,该一个或多个指示关于标识符ID2已经接入工作网络接入IP2。例如,在特定实施例中,系统110的映射引擎150的时间确定组件154(或者系统410、或者一个或多个第二映射元件422)可以确定与以下一个或多个指示(在510接收的)相关联的一个或多个第二接入时间T2,该一个或多个指示关于第二标识符ID2已经接入工作网络接入IP2以使用第二设备PC2接入一个或多个网络。与一个或多个第二接入时间T2(在512确定的)相关联的信息可以(例如,通过映射引擎150、映射系统410、一个或多个第二映射元件422等)存储在映射数据库155内。

继续参考图5A,在至少一些实现中,过程500可以包括在514确定移动设备M3接入家庭网络接入IP1的一个或多个活动。在至少一些实现中,在514确定移动设备M3接入家庭网络接入IP1的一个或多个活动可以包括:在516接收关于具有第三标识符ID3的移动设备M3已经接入家庭网络接入IP1的一个或多个指示。例如,在特定实施例中,系统110的映射引擎150的IP地址查找组件152(或映射系统410、或一个或多个第一映射元件420)可以接收以下指示:该指示关于第三标识符ID3已经使用移动设备ID3接入家庭网络接入IP1。

此外,在至少一些实现中,在514确定移动设备M3接入家庭网络接入IP1的一个或多个活动还可以包括:在518确定与以下一个或多个指示相关联的一个或多个第一接入时间T1,该一个或多个指示关于第三标识符ID3已经接入家庭网络接入IP1。例如,在特定实施例中,系统110的映射引擎150的时间确定组件154(或系统410、或一个或多个第一映射单元420)可以确定与以下一个或多个指示(在516接收的)相关联的一个或多个第一接入时间T1,该一个或多个指示关于标识符ID3已经接入家庭网络接入IP1以使用移动设备M3接入一个或多个网络。与一个或多个第一接入时间T1相关联的信息(在516确定的)可以(例如,通过映射引擎150、映射系统410、一个或多个第一映射元件420等)存储在映射数据库155内。

如图5A进一步所示,在至少一些实现中,过程500可以包括在520确定移动设备M3接入工作网络接入IP2的一个或多个活动。在至少一些实现中,在520确定移动设备M3接入工作网络接入IP2的一个或多个活动可以包括在522接收关于具有第三标识符ID3的移动设备M3已经接入工作网络接入IP2的一个或多个指示。例如,在特定实施例中,系统110的映射引擎150的IP地址查找组件152(或映射系统410、或一个或多个第二映射元件422)可以接收以下指示:该指示关于第三标识符ID3已经使用移动设备ID3接入工作网络接入IP2。

此外,在至少一些实现中,在520确定移动设备M3接入工作网络接入IP2的一个或多个活动还可以包括:在524确定与一个或多个指示相关联的一个或多个第二接入时间T2,该一个或多个指示关于标识符ID3已经接入工作网络接入IP2。例如,在特定实施例中,系统110的映射引擎150的时间确定组件154(或系统410、或一个或多个第一映射元件420)可以确定与以下一个或多个指示(在522接收的)相关联的一个或多个第二接入时间T2,该一个或多个指示关于第三标识符ID3已经接入工作网络接入IP2以使用移动设备M3接入一个或多个网络。与一个或多个第二接入时间T2相关联的信息(在524确定的)可以(例如,通过映射引擎150、映射系统410、一个或多个第二映射元件422等)存储在映射数据库155内。

参考图5B,在至少一些实现中,过程500还可以包括在530将第一标识符ID1和第二标识符ID2映射到一起,以将第一标识符ID1和第二标识符ID2两者与用户A相关联。如上所述,在至少一些实现中,第一标识符ID1和第二标识符ID2的映射(在530)可以使用已知的映射算法来完成,以将第一标识符ID1和第二标识符ID2两者与用户A进行关联(即,A={ID1,ID2}),如授权给Cao等人的美国专利号8,843,394中公开的。在至少一些实现中,如下面参考图6更全面描述的,第一标识符ID1和第二标识符ID2的映射(在530)可以采用已知的算法。

如图5B进一步所示,过程500还包括在540将第三标识符ID3与第一标识符ID1或第二标识符ID2中的至少一个映射到一起,以将第三标识符ID3与用户A相关联。在至少一些实现中,将第三标识符ID3与第一标识符ID1或第二标识符ID2中的至少一个的映射到一起以将第三标识符ID3与用户A进行关联(在540)可以包括:确定第三标识符ID3与第一标识符ID1或第二标识符ID2中的至少一个的多个第一共位出现。例如,第一共位出现可以包括第三标识符ID3(或与第一标识符ID1或第二标识符ID2中的至少一个同时)在第一时间段内接入第一网络接入IP1的实例或出现。类似地,在至少一些实现中,将第三标识符ID3与第一标识符ID1或第二标识符ID2中的至少一个的映射到一起以将第三标识符ID3与用户A进行关联(在540)可以包括:确定第三标识符ID3与第一标识符ID1或第二标识符ID2中的至少一个的多个第二共位出现。例如,第二共位出现可以包括第三标识符ID3(或与第一标识符ID1或第二标识符ID2中的至少一个同时)在第二时间段内接入第二网络接入IP2的实例或出现。

更具体地,在至少一些实现中,将第三标识符ID3与第一标识符ID1或第二标识符ID2中的至少一个映射到一起以将第三标识符ID3与用户A相关联(在540)可以包括:在542为每个活动日志条目(例如,<IP地址,时间H>)生成标识符对,使得该对中的两个标识符(例如,<ID1,ID3>)位于活动日志条目的值字段中,并且该对中的标识符中的一个标识符是已经与用户A相关联的设备上的标识符(例如,ID1、ID2),并且另一标识符是移动设备M3的第三标识符ID3。

此外,映射(在540)可以包括:处理活动日志条目中存在的以<PC标识符,移动标识符>形式的所有标识符对(例如,ID1、ID2、ID3可以尚未被知晓)。在至少一些实现中,处理(在映射540)有助于从大量可能的ID对中找到<ID1,ID3>或<ID2,ID3>对,因为属于同一用户A的对将在第一位置或第二位置(或两者)处具有高的共位出现得分(例如,WS或HS得分)。因此,尽管以下描述讨论用于每个活动日志条目<IP,H>的<ID1,ID3>和<ID2,ID3>的处理,并且向标识符对<ID1,ID3>和<ID2,ID3>指派第一共位出现得分(例如,WS)和第二共位出现得分(例如,HS),但是应当理解,在至少一些实现中,存在于日志条目中的<PC标识符,移动标识符>中的所有标识符对以这种方式被处理,以便从大量可能的ID对中确定<ID1,ID3>或<ID2,ID3>对。

例如,在至少一些实现中,映射(在540)包括,对于每个活动日志条目,如果时间H是工作小时(例如,在第二时间段417期间出现),并且如果在工作位置416处在工作网络接入IP2上看到第一标识符ID1,则过程500可以在544向工作共位得分WS指派标识符对<ID1,ID3>。类似地,对于每个活动日志条目,如果时间H是非工作时间(例如,在第一时间段415期间出现),并且如果在家庭位置414处在家庭网络接入IP1上看到第一标识符ID1,则过程500可以在546向家庭共位得分HS指派(或递增)标识符对<ID1,ID3>。

继续参考图5B,映射(在540)还可以包括,对于每个活动日志条目,如果时间H是工作小时(例如,在第二时间段417期间出现),并且如果在工作位置416处在工作网络接入IP2上看到第二标识符ID2,则过程500可以在548向工作共位得分WS指派(或递增)标识符对<ID2,ID3>。类似地,对于每个活动日志条目,如果时间H是非工作时间(例如,在第一时间段415期间出现),并且如果在家庭位置414处在家庭网络接入IP1上看到第二标识符ID2,则过程500可以在550向家庭共位得分HS指派(或递增)标识符对<ID2,ID3>。如上所述,可以对活动日志条目中存在的以<PC标识符,移动标识符>形式的所有标识符对执行工作共位得分和家庭共位得分的指派(或递增)。

在至少一些实现中,映射(在540)还可以包括在552跨所有活动日志条目<IP,H>将每对标识符的工作共位和家庭共位得分相加在一起。映射(在540)还可以包括,在554对于每个移动设备标识符ID3,寻找其所有配对的PC标识符(例如,PC1的ID1、PC2的ID2等)以及相关联的工作共位得分(WS)和家庭共位(HS)得分。在至少一些实现中,结果(在554)可以表现如下:ID3:ID11HS1,ID12WS1,ID13WS2,ID14HS2WS3,其可以被解释为标识符对<ID11,ID3>具有家庭共位得分HS1,标识符对<ID12,ID3>具有工作共位得分WS1,标识符对<ID13,ID3>具有工作共位得分WS2,并且标识符对<ID14,ID3>具有家庭共位得分HS2和工作共位得分WS3。

接下来,在至少一些实现中,映射(在540)还可以包括在556过滤出仅具有家庭共位得分(HS)或工作共位得分(WS)(而不是两者)的所有未映射的移动设备标识符ID3。换言之,对于在仅与第一共位出现得分或第二共位出现得分中的一个相关联的标识符对中看到的任何未映射标识符,过滤出与这样的标识符对相关联的这样的未映射标识符(在556)。过滤(在556)可以通过要求多个位置(例如,家庭和工作位置)处的共位得分来有利地提高移动设备标识符ID3与用户A的随后关联的准确性,从而提高系统效率并且减少资源使用(如处理要求、功耗、存储要求等)。

如图5B进一步所示,映射(在540)还可以包括,在558对于每个剩余的移动设备标识符ID3(其在556的过滤期间未被过滤),选择具有最高的工作共位得分WS和家庭共位得分HS的相关联的PC标识符。如果所选择的最高得分标识符(例如,假定ID11和ID12在558处被选择)被确定为已经(例如,在530的映射操作期间)被映射到一起,则该映射(在540)还可以包括:将移动设备标识符ID3映射到所选择的最高得分标识符中的至少一个(例如,ID11或ID12或两者)。因此,作为将第三标识符ID3与第一标识符ID11或第二标识符ID12中的至少一个映射到一起以将第三标识符ID3与用户A进行关联(在540)的结果,标识符集合<ID11,ID12,ID3>代表同一个人(例如,用户A)。

如上所述,用于在不同设备生态系统之间映射用户标识符的技艺和技术与传统操作相比可以提供显著的操作改进。例如,这样的技艺和技术使得适当定制的个性化服务或产品能够被提供给设备的用户,由此减少或消除与重复递送不适当的个性化服务或者重复尝试确定(或重新确定)移动设备的用户的身份相关联不必要的处理要求或能量消耗或其他资源使用(例如,传输带宽的消耗、基础设施上的磨损和破坏、机会丢失考虑等)。因为如本文中公开的用于映射用户标识符的技艺和技术甚至可以在不同的设备生态系统之间采用,所以与传统技艺和技术相比,这样的技艺和技术可以用实现期望的结果所需要的更少的计算操作来更高效地操作,同时减少资源使用(例如,存储器使用较少、功耗较低等),并且对基础设施的压力较小(例如,与不正确或不适当的操作相关联的带宽使用以及基础设施上的磨损和破坏减少等)。

如上所述,用于将来自具有相同(或基本类似)设备生态系统的设备的第一标识符和第二标识符映射到一起的过程通常是已知的,如例如授权给Cao等人的美国专利号8,843,394中所公开的。例如,图6示出了用于将第一标识符ID1和第二标识符ID2映射到一起以将第一标识符ID1和第二标识符ID2两者与用户A进行关联的过程600的实施例。在至少一些实现中,第一标识符ID1和第二标识符ID2的映射(在600)可以包括:在602访问包括第一标识符ID1和第二标识符ID2的活动日志,在604标识与第一标识符ID1和第二标识符ID2两者相关联的至少一个链接属性,以及在606基于至少一个链接属性将第一标识符ID1映射到第二标识符ID2。下面讨论与第一标识符ID1和第二标识符ID2的映射(在600)相关联的操作的附加方面。

在至少一些实现中,活动日志可以包括已经被识别并且在本文中可以被称为日志模式的各种活动或事件。日志模式可以自动转换为任何识别的作业脚本。在至少一些实现中,活动记录标准可以由互联网服务提供商、广告商或可能希望记录活动日志的任何其他实体来建立。示例性活动可以包括但不限于搜索查询输入、浏览会话、页面视图、页面视图内的项目的选择等。除了识别活动的标准之外,还可以为在活动日志内组织活动建立标准。例如,可以在活动日志的不同行上指定每个事件,可以在活动日志的同一行上指定具有相似属性的标识符,可以在同一行上指定相同的事件,等等。

在至少一些实现中,活动日志可以包括与活动日志内的每个事件相关联的注册或未注册的标识符。标识符可以与多于一个事件相关联。例如,用户A注册的标识符ID1可以与用户A的浏览会话和用户A的搜索输入都相关联。浏览会话和搜索事件都可以被识别为不同的、但是与同一用户A相关联的事件。因此,注册的标识符ID1对于每个事件可以是相同的。或者,同一用户A可以与不同的标识符相关联,不管是已注册还是未注册。例如,用户A可以具有多于一个帐户(例如,MSN护照帐户),并且可以使用第二密码标识符登录。因此,这两个事件可以与属于同一用户(用户A)的两个不同的注册标识符相关联。

无论是注册的标识符还是未注册的标识符,标识符都可以与详述每个标识符的属性的配置相关联。示例性属性包括但不限于标识符的生存期、标识符的来源等。在至少一些实现中,图2的映射引擎150(例如,映射组件158)可以被配置为标识被包括在接入的活动日志中(例如,由记录保持组件156生成)的标识符。在各种实现中,活动日志可以包括单个类型的标识符或多种类型的标识符。例如,在至少一些实现中,标识符可以是设备标识符、密码标识符或任何其他合适类型的标识符。

例如,假定以下是由映射引擎150访问的活动日志:

示例1

第1行:A1,A2

第2行:A2,A3

第3行:A3,A4

在上面的示例1中,标识符的类型(例如,密码、设备等)由字母“A”指定。因此,在示例1所示的实现中,每个标识符被假定为类型A。在至少一些实现中,活动日志的单个行包括至少两个标识符。出于示例1的目的,假定第1行包括被示出为A1和A2的两个标识符。例如,A1可以是第一标识符,并且A2可以是第二标识符。映射引擎150可以被配置为标识:两个标识符在活动日志的同一行上。当两个标识符在活动日志的同一行上时,可以假定标识符是从与单个用户相关的同一事件所生成的。

在至少一些实现中,映射引擎150(例如,映射组件158)可以被配置为标识标识符的链接属性。链接属性是多个标识符所共有的属性,并且用于将共享链接属性的标识符映射到彼此。链接属性的示例包括但不限于:位于活动日志的同一行上的标识符、出现在同一浏览器会话中的标识符、与同一用户相关联的标识符、与同一IP地址相关联的标识符等。当链接属性被标识时,映射引擎150的至少一部分可以继续彼此映射或关联共享链接属性的标识符。共享链接属性的标识符既可以是注册的标识符,也可以是未注册的标识符,或者一个可以是注册的标识符,而另一个是未注册的标识符。在至少一些实现中,映射引擎150被配置为通过将标识符分组为关联输出行来将任何标识符映射到任何其他标识符。

在上面的示例1中,假定标识符A1和A2分别是注册到用户1的第一密码标识符A1和注册到用户1的第二密码标识符A2。两个密码标识符可以被标识为共享链接属性(例如,两者都与用户1相关联)。因此,两个注册的标识符可以被映射到彼此,并且与标识符A1和A2中的每个相关联的任何用户简档信息和/或行为信息又可以与标识符A1和A2两者相关联。

假定示例1的标识符A1是注册的密码标识符,并且A2是未注册的标识符,则标识组件可以标识A1和A2共享链接属性(例如,两者都被包括在活动日志的行1上)。这两个标识符然后可以被映射到彼此。一旦被标识为共享链接属性,映射组件243可以将A1和A2映射到彼此。

在至少一些实现中,然后可以分析活动日志的后续行,以标识包括具有与行1的任何标识符的链接属性的任何标识符。如果后续行包括以下至少一个标识符:该至少一个标识符具有与前一行的至少一个标识符的链接属性,则映射引擎150(例如,映射组件158)被配置为一次一行地组合标识符。例如,假定标识符A2和标识符A3共享链接属性。在那种情况下,行1和行2被组合以输出标识符A1、A2、A3以作为第一关联输出行或第一结果行。

另外,在至少一些实现中,如果行3包括与来自第一结果行的至少一个标识符共享链接属性的至少一个标识符,则第一结果行可以与行3组合以输出标识符A1、A2、A3、A4以作为第二结果行。另外,当存在至少一个合并标识符或重叠标识符时,一个或多个结果行可以与一个或多个后续行组合。例如,在上面的示例中,第一结果行和行3每个包括标识符A3。标识符A3又被识别为重叠标识符。组合可以继续,直到活动日志的最后一行被组合。

另外,在至少一些实现中,当活动日志在单个行中包括多种类型的标识符时,映射引擎150(例如,映射组件158)可以被配置为标识每种类型的标识符,并且在活动事件行中至少有两个标识符时,一次一行并且一次一个标识符类型地组合标识符。例如,参考下面示出的示例2,假定活动日志由映射引擎150(例如,映射组件158)访问,并且标识符A1和A2是注册到同一用户的标识符。

示例2

行1:A1,A2;B1,B2

行2:A1,A3;B3,B4

行3:A5,A6;B3

在这个实施例中,示例2示出了在活动日志的单个行中包括的类型A和类型B标识符。首先,确定初始行是否具有重叠标识符。如果存在重叠标识符,则这两行可以合并。在上面的示例2中,行1和行2都包括标识符A1。因此,标识符A1是重叠标识符。如果没有重叠标识符,则两行不会立即合并。例如,如果来自每行的一个标识符共享链接属性,则这两行仍然可以合并在一起。

在至少一些实现中,基于行1和行2包括重叠标识符的确定,可以基于标识符类型来组合行1和行2。因此,首先组合标识符类型A,然后组合标识符类型B。假定行1包括两个注册的标识符(即标识符A1和A2),标识组件242标识该活动行(即,行1)中的任何未注册的标识符可以通过映射引擎150(例如,映射组件158)被映射到注册的标识符。或者,如果行1仅包括注册的标识符或仅包括未注册的标识符,则在链接属性被标识的情况下,行1中包括的所有标识符仍然可以通过映射引擎150(例如,映射组件158)映射到彼此。

当行1和行2被组合时,类型A标识符的组合的结果是标识符A1、A2、A3,并且类型B标识符的组合的结果是标识符B1、B2、B3、B4。因此,得到的第一输出行是标识符A1、A2、A3;B1、B2、B3、B4,示出了类型A标识符的组合以及然后是类型B标识符的组合。

接下来,在至少一些实现中,映射引擎150(例如,映射组件158)确定第一输出行和后续活动行是否包括重叠标识符。在示例2中,第一输出行和行3通过映射引擎150(例如,映射组件158)被标识为都包括标识符B3。第一输出行然后可以与行3组合。再次,类型A标识符可以在初始被组合,并且之后可以是类型B标识符的组合,反之亦然。因此,类型A标识符的组合将是标识符A1、A2、A3、A5、A6,并且类型B标识符的组合将是标识符B1、B2、B3、B4。因此,得到的第二输出行将是标识符A1、A2、A3、A5、A6;B1、B2、B3、B4。这些组合可以以这种方式继续,直到达到活动日志的最后一行。

在至少一些实现中,映射引擎150(例如,映射组件158)可以标识链接属性是否作为重叠标识符的备选或附加而存在。因此,即使没有重叠标识符,如果来自每行的至少一个标识符共享链接属性,则后续行仍然可以被合并到前一行或结果行中。一旦标识符被映射并且被组合成相关输出行,映射引擎150(例如,映射组件158)输出关联输出行。

除了基于活动日志行内的位置来自动映射标识符之外,本公开的备选实现可以基于备选标准来映射标识符。例如,可以基于标识符的属性来将标识符映射到任何其他标识符。例如,标识符的属性可以是标识符的“生命周期”(或可用寿命),并且可以用作标识符的关联性的因素。另外,用户属性也可以是标识符关联性的因素。例如,用户可以跨多个设备(诸如例如家庭计算机和移动电话)具有各种属性。

再次参考图4至5,一旦第一标识符ID1、第二标识符ID2和第三标识符ID3的映射(在500)完成,所生成的输出可以用于为定制个性化服务或产品(例如,广告)创建增加的目标受众。在至少一些实现中,作为映射标识符的结果,与用户信息相关联的标识符的数目可以增加。因此,个性化服务或产品的目标受众也可以比标识符被映射之前的更多。此外,更多信息可用于为目标组的标识符生成个性化服务或产品,因为一旦多个标识符被映射到一起,目标组内的多个标识符中的每个的信息和/或行为可用于定制个性化服务或产品。

本文中公开的用于在不同设备生态系统之间映射用户标识符的技艺和技术可以在计算机代码或机器可用指令的一般上下文中描述,包括由计算机或其他设备执行的计算机可执行指令(诸如程序模块)。通常,包括例程、程序、对象、组件、数据结构等的程序模块是指执行特定任务或实现特定抽象数据类型的代码。本发明的各种实施例可以以以下各种系统配置来实践,包括手持设备、消费电子产品、通用计算机、更专业的计算设备等。另外,本发明的各种实施例也可以在以下分布式计算环境中实践,在该分布式计算环境中任务由通过通信网络链接的远程处理设备执行。

此外,本文中公开的用于在不同设备生态系统之间映射用户标识符的技艺和技术可以在各种各样的设备和平台上实现。例如,图7是可以用于在不同设备生态系统之间映射用户标识符的计算机系统环境700的实施例的图。如图7所示,示例性计算机系统环境700包括一个或多个处理器(或处理单元)702、专用电路782、存储器704、和总线706,其可操作地将包括存储器704在内的各种系统组件耦合到一个或多个处理器702和专用电路782(例如,ASIC、FPGA等)。

总线706可以表示以下若干类型的总线结构中任何总线结构中的一个或多个,包括存储器总线或存储器控制器、外围总线、加速图形端口以及使用各种总线中的任何总线的处理器或本地总线架构。在至少一些实现中,存储器704包括只读存储器(ROM)708和随机存取存储器(RAM)710。基本输入/输出系统(BIOS)712(包含有助于诸如在启动期间在系统700内的元素之间传送信息的基本例程)存储在ROM 708中。

示例系统环境700还包括硬盘驱动器714,其用于从硬盘(未示出)读取和向其写入,并且经由硬盘驱动器接口716(例如,SCSI、ATA或其他类型的界面)连接到总线706。用于从可移除磁盘720读取和向可移除磁盘720写入的磁盘驱动器718经由磁盘驱动器接口722连接到系统总线706。类似地,用于从可移除光盘726读取或向可移除光盘726写入的光盘驱动器724(诸如CD ROM、DVD或其他光学介质)经由光盘驱动器接口728连接到总线706。驱动器及其相关联的计算机可读介质可以为系统环境700提供计算机可读指令、数据结构、程序模块和其他数据的非易失性存储。尽管本文中描述的系统环境700采用硬盘、可移除磁盘720和可移除光盘726,但是本领域技术人员应当理解,也可以使用可以存储可以由计算机访问的数据的其他类型的计算机可读介质,诸如盒式磁带、闪存卡、数字视频盘、随机存取存储器(RAM)、只读存储器(ROM)等。

包括在系统存储器700中的计算机可读介质可以是任何可用或合适的介质,包括易失性和非易失性介质以及可移除和不可移除介质,并且可以以适合于存储诸如计算机可读指令、数据结构、程序模块或其他数据等信息的任何方法或技术来实现。更具体地,合适的计算机可读介质可以包括:随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程ROM(EEPROM)、闪存或其他存储器技术、光盘ROM(CD-ROM)、数字通用磁盘(DVD)或其他光盘存储器、磁带盒、磁带、磁盘存储或其他磁性存储设备、或者可以用于存储所需信息的任何其他介质(包括纸、打孔卡等)。如本文中使用的,术语“计算机可读介质”不旨在包括瞬态信号。

如图7进一步所示,多个程序模块可以存储在存储器704(例如,ROM708或RAM710)上,该多个程序模块包括操作系统730、一个或多个应用程序732、其他程序模块734和程序数据736(例如,数据存储720、图像数据、音频数据、三维对象模型等)。或者,这些程序模块可以存储在其他计算机可读介质上,包括硬盘,磁盘720或光盘726。为了说明的目的,程序和其他可执行程序组件(诸如操作系统730)在图7中示出为离散的块,但是应当理解,这样的程序和组件在各种时间驻留在系统环境700的不同存储组件中,并且可以由系统环境700的处理器702或专用电路782来执行。

用户可以通过输入设备(诸如键盘738和指示设备740)将命令和信息输入到系统环境700中。其他输入设备(未示出)可以包括麦克风、操纵杆、游戏手柄、卫星天线、扫描仪等。其他输入设备(诸如自然用户界面(NUI)设备769或用户界面725)包括或涉及使得用户能够以“自然”的方式与系统环境700交互的自然用户界面(NUI)的一个或多个方面,而没有传统的输入设备(如鼠标、键盘、遥控器等)施加的人为约束。例如,在至少一些实施例中,NUI设备769可以依靠语音识别、触摸和指示笔识别、一个或多个生物特征输入、屏幕上和邻近屏幕的手势识别、空中手势、头部和眼睛(或凝视)跟踪、声音和语音、视觉、触摸、悬停、手势、机器智能以及用于使用电场感应电极(EEG和相关方法)接收输入来感知大脑活动的技术。另外,在至少一些实施例中,NUI可以涉及或并入触敏显示器、声音和语音识别、意图和目标理解、使用深度相机(诸如立体或飞行时间相机系统、红外相机系统、RGB相机系统及其组合)的运动姿势检测、使用加速度计/陀螺仪的运动姿势检测、面部识别、3D显示、头部、眼睛和注视跟踪、沉浸式增强现实和虚拟现实系统的一个或多个方面,所有这些都提供更自然的界面。

这些和其他输入设备通过耦合到系统总线706的接口742或通信接口746(例如,视频适配器)连接到处理单元702和专用电路782。用户接口725(例如,显示器、监视器或任何其他用户接口设备)可以经由诸如视频适配器746等接口连接到总线706。另外,系统环境700还可以包括其他外围输出设备(未示出),诸如扬声器和打印机。

系统环境700可以使用到一个或多个远程计算机(或服务器)758的逻辑连接在联网环境中操作。这样的远程计算机(或服务器)358可以是个人计算机、服务器、路由器、网络PC、对等设备或其他常见网络节点。图7中描绘的逻辑连接包括局域网(LAN)748和广域网(WAN)750中的一个或多个。这样的网络环境在办公室、企业范围的计算机网络、内联网和因特网中是常见的。在这个实施例中,系统环境700还包括一个或多个广播调谐器756。广播调谐器756可以直接或经由接收设备(例如,通过天线757、卫星天线等)接收广播信号(例如,直接馈送到调谐器756的模拟或数字电缆传输)。

当在LAN联网环境中使用时,系统环境700可以通过网络接口(或适配器)752连接到局域网748。当在WAN联网环境中使用时,系统环境700通常包括调制解调器754或用于通过广域网750(诸如因特网)建立通信的其他装置(例如,路由器)。可以是内部或外部的调制解调器754可以经由串行端口接口742连接到总线706。类似地,系统环境700可以使用耦合到无线通信器757的无线接口755(例如,天线、卫星天线、发射器、接收器、收发器、感光器、光电二极管、发射体、接受体等)与一个或多个远程设备交换(发送或接收)无线信号753。

在联网环境中,关于系统环境700或其部分描述的程序模块可以存储在存储器704中或远程存储器存储设备中。更具体地,如图7进一步所示,专用组件780可以存储在系统环境700的存储器704中。专用组件780可以使用软件、硬件、固件或其任何合适的组合来实现。与系统环境700的其他组件(例如,处理单元702或专用电路782)协作,专用组件780可以可操作以执行上述的用于在不同设备生态系统之间映射用户标识符的技术的一个或多个实现(例如,图3的示例过程300、图5A至5B的示例过程500、图6的示例过程600等)(例如,语音识别组件、手势识别组件、触摸识别组件、生物标识组件等或其组合)。

通常,在系统环境700上执行的应用程序和程序模块可以包括用于执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等。这些程序模块等可以作为本机代码来执行,或者可以(诸如在虚拟机或其他即时编译执行环境中)被下载和执行。典型地,在各种实现中,程序模块的功能可以根据需要组合或分配。

图8示出了用于在不同设备生态系统之间映射用户标识符的联网环境800的实施例。图8所示的联网环境800可以包括上面关于图1至7描述的各种组件或方面中的一个或多个(或在本文中其他地方示出或描述)。

在这个实施例中,示例性联网环境800包括映射平台810。联网环境800还可以包括一个或多个数据库服务器820、数据存储822、台式计算机824、膝上型计算机825、通信设备826(例如,手机、智能电话、个人数据助理等)、平板(或笔记本)计算机827和服务器828,并且这样的设备可以经由一个或多个网络830(例如,LAN、WAN、本地通信系统、全球通信系统、因特网、蜂窝通信系统、电话通信系统等)可操作地耦合到映射平台810。

在至少一些实现中,映射平台810可以被配置为执行上面描述的映射操作中的一个或多个,包括上面参考图1至7描述的过程和操作。在至少一些其他实现中,本文中描述的一个或多个过程和操作可以分布在联网环境800的映射平台810和其他设备820至830之间。

一个或多个网络830可以包括服务器、客户端、因特网服务提供商或其他合适的通信介质的任何合适的拓扑,并且在各种备选实现中,可以具有静态或动态拓扑。一个或多个网络830可以包括安全网络(例如,企业网络)、不安全网络(例如,无线开放网络、因特网等),并且还可以协调通过其他网络(例如,PSTN、蜂窝网络等)的通信。作为示例而非限制,一个或多个网络830可以通过任何合适的通信技术(包括例如电磁信号、声学信号、RF信号、红外信号以及任何其他合适的通信技术或信号)来耦合。

鉴于本文中提供的用于在不同设备生态系统之间映射用户标识符的技艺和技术的公开,以下总结几个代表性实施例。应当理解,代表性实施例的以下概述并非旨在穷尽所有可能的实施例,并且可以从本文中提供的用于在不同设备生态系统之间映射用户标识符的技艺和技术的公开中容易地想到另外的实施例。

例如,在至少一些实施例中,一种用于将第一标识符或第二标识符中的至少一个与第三标识符进行映射的系统,第一标识符和第二标识符与用户相关联,并且与第一设备生态系统相关联,第三标识符与不同于第一设备生态系统的第二设备生态系统相关联,该系统可以包括可操作地耦合到存储器的处理组件和至少部分设置在存储器中的映射引擎。在至少一些实施例中,映射引擎可以被配置为将与第二设备生态系统相关联的第三标识符与第一标识符或第二标识符中的至少一个进行映射,映射至少部分地基于(i)第三标识符与第一标识符的多个第一共位出现,以及(ii)第三标识符与第二标识符的多个第二共位出现。在至少一些实施例中,映射引擎还可以被配置为提供第三标识符与用户的关联的指示。

在至少一些实施例中,多个第一共位出现包括第三标识符和第一标识符接入第一网络接入的多个实例,并且其中多个第二共位出现包括第三标识符和第二标识符接入第二网络接入的多个实例。类似地,在至少一些实施例中,多个第一共位出现包括第三标识符和第一标识符在第一时间段内接入第一网络接入的多个实例,并且其中多个第二共位出现包第三标识符和第二标识符在第二时间段内接入第二网络接入的多个实例。另外,在至少一些实施例中,多个第一共位出现包括第三标识符和第一标识符同时接入第一网络接入的多个实例,并且多个第二共位出现包括第三标识符和第二标识符同时接入第二网络接入的多个实例。

另外,在至少一些实施例中,第一设备生态系统包括与个人计算机、台式计算机、膝上型计算机、服务器、数据存储器、通信设备、平板电脑或大型计算机中的至少一个相关联的生态系统,并且第二设备生态系统包括与移动设备相关联的生态系统。类似地,在至少一些实施例中,第一设备生态系统包括与第一操作系统相关联的生态系统,并且第二设备生态系统包括与第二操作系统相关联的生态系统。

在至少一些实施例中,被配置为将与第二设备生态系统相关联的第三标识符与第一标识符或第二标识符中的至少一个进行映射的映射引擎包括被配置为进行以下操作的映射引擎:访问活动日志信息,该活动日志信息指示一个或多个未映射标识符已经接入第一网络接入和第二网络接入,一个或多个未映射标识符包括第三标识符,活动日志信息还包括以下信息,该信息指示第一标识符和第二标识符已经接入第一网络接入或第二网络接入中的至少一个;对于包括第三标识符和第一标识符的每个标识符对,每次第三标识符和第一标识符已经同时接入第一网络接入时,指派或递增第一共位出现得分;对于包括第三标识符和第二标识符的每个标识符对,每当第三标识符和第二标识符已经同时接入第一网络接入时,指派或递增第一共位出现得分;对于包括第三标识符和第一标识符的每个标识符对,每当第三标识符和第一标识符已经同时接入第二网络接入时,指派或递增第二共位出现得分;对于包括第三标识符和第二标识符的每个标识符对,每当第三标识符和第二标识符已经同时接入第二网络接入时,指派或递增第二共位出现得分;对于仅在与第一共位出现得分或第二共位出现得分中的仅一个相关联的标识符对中看到的任何未映射标识符,过滤出与这样的标识符对相关联的这样的未映射标识符;对于每个标识符对,将在所有活动日志信息上的第一共位出现得分和第二共位出现得分相加;对于仅具有第一共位出现得分或第二共位出现得分中的一个的任何未映射标识符,过滤出这样的未映射标识符;对于每个标识符对,将在所有活动日志信息上的第一共位出现得分HS和第二共位出现得分WS相加;以及如果具有最高的第一共位出现得分HS的标识符对或具有最高的第二共位出现得分WS的标识符对包括第一标识符ID1或第二标识符ID2中的至少一个,则将第三标识符ID3映射到第一标识符ID1或第二标识符ID2中对应的至少一个。

或者,在至少一些实现中,被配置为将与第二设备生态系统相关联的第三标识符与第一标识符或第二标识符中的至少一个进行映射的映射引擎包括被配置为执行以下操作的映射引擎:访问活动日志信息,其指示一个或多个未映射标识符已经接入第一网络接入和第二网络接入,一个或多个未映射标识符包括第三标识符,活动日志信息还包括以下信息,该信息指示第一标识符和第二标识符已经接入第一网络接入或第二网络接入中的至少一个;生成一个或多个标识符对,每个标识符对包括一个或多个未映射标识符中的至少一个以及第一标识符或第二标识符中的一个;对于每个标识符对,每当标识符对中的两个标识符在第一指定时间段内都已经接入第一网络接入时,指派或递增第一共位出现得分;对于每个标识符对,每当标识符对中的两个标识符在第二指定时间段内都已经接入第二网络接入时,指派或递增第二共位出现得分;对于每个标识符对,将在所有活动日志信息上的第一共位出现得分和第二共位出现得分相加;对于仅具有第一共位出现得分或第二共位出现得分中的一个的任何未映射标识符,过滤出这样的未映射标识符;对于每个剩余的未映射标识符,确定具有最高的第一共位出现得分的标识符对和具有最高的第二共位得分的标识符对;以及如果具有最高的第一共位出现得分的标识符对或具有最高的第二共位出现得分的标识符对包括第一标识符或第二标识符中的至少一个,则将第三标识符映射到第一标识符或第二标识符中对应的至少一个。

另外,在至少一些实现中,一种系统还可以包括被配置为接收第三标识符与用户的关联的指示并且至少部分基于关于第三标识符与用户的关联的指示来提供个性化服务或个性化产品中的至少一个的个性化服务或产品组件。类似地,在至少一些实现中,一种系统还可以包括被配置为接收第三标识符与用户的关联的指示,至少部分基于第三标识符与用户的关联的指示来选择或生成针对用户定制的定向广告,并且向与第三标识符相关联的设备提供定制的定向广告的个性化服务或产品组件。

另外,在至少一些实现中,映射引擎还被配置为将第一标识符与第二标识符相映射。

在其他实现中,一种用于将第一标识符或第二标识符中的至少一与第三标识符相映射的方法,第一标识符和第二标识符与用户和第一设备生态系统相关联,第三标识符与不同于第一设备生态系统的第二设备生态系统相关联,该方法至少部分使用一个或多个处理组件来实现,该方法包括将与第二设备生态系统相关联的第三标识符与第一标识符或第二标识符中的至少一个相映射,第二设备生态系统不同于第一设备生态系统,并且提供第三标识符与用户的关联的指示。在至少一些实现中,映射包括确定指示第三标识符和一个或多个其他标识符接入第一网络接入的多个第一共位出现得分,确定指示第三标识符和一个或多个其他标识符接入第二网络接入的多个第二共位出现得分,处理多个第一共位出现得分和多个第二共位出现得分以确定最高的第一共位出现得分和最高的第二共位出现得分;并且如果最高的第一共位出现得分对应于第一或第二标识符中的至少一个,或者最高的第二共位出现得分对应于第一或第二标识符中的至少一个,则将第三标识符映射到第一标识符或第二标识符中的相应的至少一个。

在至少一些实现中,确定指示第三标识符和一个或多个其他标识符接入第一网络接入的多个第一共位出现得分包括确定指示第三标识符和一个或多个其他标识符在第一时间段内接入第一网络接入的多个第一共位出现得分。类似地,在至少一些实现中,确定指示第三标识符和一个或多个其他标识符接入第一网络接入的多个第一共位出现得分包括确定指示第三标识符和一个或多个其他标识符同时接入第一网络接入的多个第一共位出现得分。

另外,在至少一些实现中,第一设备生态系统包括与个人计算机、台式计算机、膝上型计算机、服务器、数据存储器、通信设备、平板电脑或大型计算机中的至少一个相关联的生态系统,并且第二设备生态系统包括与移动设备相关联的生态系统。

在另外的实现中,将与第二设备生态系统相关联的第三标识符与第一标识符或第二标识符中的至少一个进行映射包括:访问活动日志信息,其指示一个或多个未映射标识符已经接入第一网络接入和第二网络接入,一个或多个未映射标识符包括第三标识符,活动日志信息还包括以下信息:该信息指示第一标识符和第二标识符已经接入第一网络接入或第二网络接入中的至少一个;对于包括第三标识符和第一标识符的每个标识符对,每当第三标识符和第一标识符已经同时接入第一网络接入时,指派或递增第一共位出现得分;对于包括第三标识符和第二标识符的每个标识符对,每当第三标识符和第二标识符已经同时接入第一网络接入时,指派或递增第一共位出现得分;对于包括第三标识符和第一标识符的每个标识符对,每当第三标识符和第一标识符已经同时接入第二网络接入时,指派或递增第二共位出现得分;对于包括第三标识符和第二标识符的每个标识符对,每当第三标识符和第二标识符已经同时接入第二网络接入时,指派或递增第二共位出现得分;对于具有第一共位出现得分或第二共位出现得分中的仅一个的任何未映射标识符,过滤出与这样的标识符对相关联的这样的未映射标识符;并且针对每个标识符对,将在所有活动日志信息上的第一共位出现得分和第二共位出现得分相加。

在其他实现中,一种方法还可以包括至少部分基于第三标识符与用户的关联的指示来向与第三标识符相关联的设备提供个性化服务或个性化产品中的至少一项。

在至少一些实现中,一种或多种承载一个或多个指令的计算机可读介质,该一个或多个指令在由一个或多个处理组件执行时执行用于将第一标识符或第二标识符中的至少一个与第三标识符ID3进行映射的操作,第一标识符和第二标识符与用户和第一设备生态系统相关联,第三标识符与不同于第一设备生态系统的第二设备生态系统相关联,操作包括:将与第二设备生态系统相关联的第三标识符与第一标识符或第二标识符中的至少一个进行关联,并且提供第三标识符与用户的关联的指示。在至少一些实现中,映射包括:确定多个第一共位出现得分,其指示第三标识符和一个或多个其他标识符接入第一网络接入;确定多个第二共位出现得分,其指示第三标识符和一个或多个其他标识符接入第二网络接入,处理多个第一共位出现得分和多个第二共位出现得分以确定最高的第一共位出现得分和最高的第二共位出现得分;并且如果最高的第一共位出现得分对应于第一或第二标识符中的至少一个,或者最高的第二共位出现得分与第一标识符或第二标识符中的至少一个相对应,则将第三标识符映射到第一标识符或第二标识符中的相应的至少一个。

另外,在一些实现中,将与第二设备生态系统相关联的第三标识符与第一标识符或第二标识符中的至少一个进行映射包括访问活动日志信息,其指示一个或多个未映射标识符已经接入第一网络接入和第二网络接入,一个或多个未映射标识符包括第三标识符,活动日志信息还包括以下信息,该信息指示第一标识符和第二标识符已经接入第一网络接入或第二网络接入中的至少一个;对于包括第三标识符和第一标识符的每个标识符对,每当第三标识符和第一标识符已经同时接入第一网络接入时,指派或递增第一共位出现得分;对于包括第三标识符和第二标识符的每个标识符对,每当第三标识符和第二标识符已经同时接入第一网络接入时,指派或递增第一共位出现得分;对于包括第三标识符和第一标识符的每个标识符对,每当第三标识符和第一标识符已经同时接入第二网络接入时,指派或递增第二共位出现得分;对于包括第三标识符和第二标识符的每个标识符对,每当第三标识符和第二标识符已经同时接入第二网络接入时,指派或递增第二共位出现得分;对于具有第一共位出现得分或第二共位出现得分中的仅一个的任何未映射标识符,过滤出与这样的标识符对相关联的这样的未映射标识符;并且针对每个标识符对,将在所有活动日志信息上的第一共位出现得分和第二共位出现得分相加。

类似地,在至少一些实现中,一种或多种计算机可读介质还可以包括用于至少部分基于第三标识符与用户的关联的指示来向与第三标识符相关联的设备提供个性化服务或个性化产品中的至少一项的一个或多个指令。

结论

本领域技术人员将理解,本文中公开的实施例的一些方面可以在标准集成电路中实现,并且也可以实现为在一个或多个计算机上运行的一个或多个计算机程序,并且也可以实现为在一个或多个处理器上运行的一个或多个软件程序,并且也实现为固件、以及实际上它们的任何组合。将进一步理解,根据本公开的教导和解释,本领域技术人员可以实现设计电路和/或编写用于软件和/或固件的代码。

前面的详细描述已经通过使用框图、流程图和/或示例阐述了设备和/或过程的各种实施例。就这些框图、流程图和/或示例包含一个或多个功能和/或操作而言,本领域技术人员将理解,这些框图、流程图或示例中的每个功能和/或操作可以通过各种硬件、软件、固件或其实际上的任何组合来单独地和/或共同地实现。应当理解,上述技艺和技术的实施例并不是穷举被认为在本公开的范围内的所有可能的实施例,并且可以基于本文中公开的主题来构思另外的实施例。例如,在备选实施例中,上述技艺和技术的一个或多个元件或组件可以被重新排列、重新排序、修改或者甚至省略,以提供仍然被认为在本公开的范围内的附加实施例。

备选地或附加地,本文中描述的技艺和技术可以至少部分由一个或多个硬件逻辑组件来执行。例如但不限于,可以使用的说明性类型的硬件逻辑组件包括现场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、系统级芯片系统(SOC)、复杂可编程逻辑器件(CPLD)等。然而,本领域技术人员将理解,本文中公开的实施例的一些方面可以全部或部分地等效地在标准集成电路中实现,实现为在一个或多个计算机上运行的一个或多个计算机程序(例如,实现为在一个或多个计算机系统上运行的一个或多个程序),实现为在一个或多个处理器上运行的一个或多个程序(例如,实现为在一个或多个微处理器上运行的一个或多个程序),实现为固件,或者实际上实现为其任何组合,并且设计电路和/或编写用于软件和/或固件的代码将完全在本领域技术人员鉴于本公开内容的技能范围内。

尽管已经用特定于结构特征和/或动作的语言描述了主题,但是应当理解,在所附权利要求中限定的主题不一定限于所描述的具体特征或动作。相反,上述特定特征和动作是被公开作为实现权利要求的示例,并且其他等同特征和动作旨在落入权利要求的范围内。以上描述的各种实施例和实现仅作为示例提供,并且不应当被解释为限制可以在不脱离本公开的精神和范围的情况下对上述实施例和实现进行的各种修改和改变。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1