兴趣点排序方法与流程

文档序号:12786354阅读:435来源:国知局
兴趣点排序方法与流程

本公开涉及信息网络中的兴趣点(POI)推荐,具体地,本公开涉及POI排序方法。



背景技术:

基于位置的社交网络(LBSN),如Foursquare、Gowalla、Facebook Place和GeoLife,变得越来越流行,它们为用户提供了经由登录行为分享他们关于兴趣点(POI)的位置和经验的新方式。为帮助用户在大量POI中进行选择并且建议最合适的POI以满足个人偏好,开发了POI推荐方法,该方法在LBSN服务中发挥了重要的作用。POI推荐的目的是基于用户的登录记录学习他们的偏好,之后预测用户的优选POI以进行推荐。

最近提出了连续POI推荐。连续POI推荐是一般POI推荐的自然扩展,吸引了很多研究兴趣。与仅关注基于POI估计用户偏好的一般POI推荐不同,连续POI推荐基于用户最近的登录位置及时提供令人满意的推荐,其不仅要求来自用户的偏好模拟,而且还要求POI之间的准确关联性分析。然而,所有的现有方法都忽略了研究时间对连续POI推荐的影响。

连续POI推荐是时间敏感性的。在不同时间,用户将倾向于不同的连续POI。很容易想象,用户在中午离开办公室之后可能会去餐厅,而当他在晚上离开办公室时更可能去健身房。然而,现有的连续POI推荐方法仅强调模拟用户登录序列中的POI之间的相关性,却忽略了模拟这种时间敏感性性质。



技术实现要素:

连续POI推荐的所有现有方法仅关注基于用户的登录顺序模拟多个POI之间的关系,却忽略了连续POI推荐是一种时间敏感性推荐任务的重 要事实。实际上,即使具有相同的历史登录信息,在不同时间用户也将会优选不同的POI。为捕捉时间对连续POI推荐的影响,发明人提出基于时间-空间的排序方法(STELLAR),以明确地模拟用户、POI和时间之间的关系。

本公开提供一种兴趣点排序方法,所述方法包括通过打分函数计算候选兴趣点的分数,从而根据所计算的分数对一组候选兴趣点进行排序;其中所述打分函数是用户、所述候选兴趣点、时间参数和所述用户上次询问的历史兴趣点的函数。

本公开还提供一种兴趣点排序系统,所述系统包括:

打分装置,所述打分装置输出候选兴趣点的分数;

排序装置,所述排序装置根据打分装置计算的分数将一组候选兴趣点排序;

其中所述打分装置根据用户、所述候选兴趣点、时间参数和所述用户上次询问的历史兴趣点进行打分。

附图说明

图1a显示连续登录中时间间隔的互补累计分布函数。

图1b显示连续登录中距离的互补累计分布函数。

图1c显示超过4小时的连续登录中距离的互补累计分布函数。

图1d显示连续登录的时间敏感性分析。

图2a是时间编码方式的示意图。

图2b是STELLAR模型表达式的示意图。

图3示例了可以用于兴趣点排序的计算机程序产品。

图4是示例安排用于兴趣点排序的实例计算器件的框图。

具体实施方式

如图1a-1d中所示,发明人发现,连续登录具有显著的空间和时间性。图1a和1b显示了连续登录中时间间隔和距离的互补累计分布函数(CCDF)。从图中可以看出,很多连续登录在时间空间上是高度相关的:在Foursquare和Gowalla中,超过40%和60%的连续登录行为在上次登 录之后的4小时之内发生;在Foursquare和Gowalla中,大约90%的连续登录在32公里(半小时车程)的范围之内发生。此外,图1c中显示了超过4小时的连续登录中的距离的CCDF。虽然较弱,但是空间相关性仍然存在:约80%连续登录的POI在32公里之内发生。这种现象不难理解:用户通常在其家或办公室附近活动,所以即使与上一次登录不相关,连续登录仍然可能在相同的活动区域发生。因此,连续登录POI通常是空间相关的,而在较短的间隔内的连续登录拥有更强的相关性。

除了空间和时间间隔之外,用户的连续登录还是时间敏感性行为。对所有的用户计数,并且计算(1)在不同时间的先前登录带来相同的连续POI的平均概率(时间不敏感)和(2)在不同的时间信息下在一次登录之后是不同的连续POI的平均概率(时间敏感)。图1(d)给出了分析结果。可以明显地看出,在不同时间,在先前POI登录相同的情况下,用户的连续POI登录将是不同的。

基于上述发现以及发明设想,并非受理论限制,本申请提出本公开的一些实施方案。这些实施方案并非是对所公开的发明的限制,基于这些实施方案,其他的能够实现发明的精神和范围的改变或改进的实施方案对于本领域技术人员是显见的。

在本公开的一些实施方案中,在所述打分函数中彼此独立地计算由以下相互作用获得的数值:用户与候选兴趣点之间的相互作用、时间参数与候选兴趣点之间的相互作用、以及候选兴趣点与历史兴趣点之间的相互作用;并且将所述数值彼此相加获得最后的分数。

在本公开的一些实施方案中,通过以下步骤将时间信息转化为所述时间参数:

a.将时间信息分为月份信息、工作日信息以及时段信息,其中

月份信息包含所述时间信息中的具体月份值并且可选自1-12的整数,

工作日信息在所述时间信息之中的日期属于工作日的情况下取值为1否则取值为0,并且

时段信息表示所述时间信息具体属于一天中的第几个时段,其中 将一天划分为任意多个时段,如以小时划分,可获得24个时段;优选划分为4个时段;

b.将月份信息、工作日信息以及时段信息的数值换算为二进制数值;

c.将b中获得的二进制数值连接在一起获得一个合并二进制数;和

d.将所述合并二进制数换算为十进制数,从而获得时间信息参数。

在本公开的一些实施方案中,将由候选兴趣点与历史兴趣点之间的相互作用获得的数值乘以时间间隔相关权重后再与从其他相互作用获得数值相加从而获得最后的分数,所述时间间隔相关权重随所述候选兴趣点与所述历史兴趣点所对应的时间之间的间隔变化。

在本公开的一些实施方案中,所述时间间隔相关权重大于0并且小于1,并且随所述候选兴趣点与所述历史兴趣点所对应的时间之间的间隔增大而减小。

在本公开的一些实施方案中,打分装置包括

第一计算装置,所述第一计算装置根据用户与候选兴趣点之间的相互作用计算获得第一数值;

第二计算装置,所述第二计算装置根据时间参数与候选兴趣点之间的相互作用获得第二数值;

第三计算装置,所述第三计算装置根据候选兴趣点与历史兴趣点之间的相互作用获得第三数值;

其中所述打分装置还将所述第一数值、所述第二数值和所述第三数值相加获得最后的分数。

在本公开的一些实施方案中,兴趣点排序系统还包括时间信息换算装置,所述时间信息换算装置将时间信息转化为所述时间参数,所述时间信息换算装置包括:

分段装置,所述分段装置将时间信息分为月份信息、工作日信息以及时段信息,其中

月份信息包含所述时间信息中的具体月份值并且可选自1-12的整数,

工作日信息在所述时间信息之中的日期属于工作日的情况下取值为1否则取值为0,并且

时段信息表示所述时间信息具体属于一天中的第几个时段,其中将一天划分为任意多个时段,如以小时划分,可获得24个时段;优选划分为4个时段;

二进制化装置,所述二进制化装置将月份信息、工作日信息以及时段信息的数值换算为二进制数值;

合并装置,所述合并装置将所述二进制化装置中获得的二进制数值连接在一起获得合并二进制数;和

十进制化装置,所述十进制化装置将所述合并二进制数换算为十进制数,从而获得时间信息编号。

在本公开的一些实施方案中,打分装置将所述第二数值乘以时间间隔相关权重后与所述第一数值和所述第三数值相加获得最后的分数,所述时间间隔相关权重随所述候选兴趣点与所述历史兴趣点所对应的时间之间的间隔变化。

在本公开的一些实施方案中,时间间隔相关权重大于0并且小于1,并且随所述候选兴趣点与所述历史兴趣点所对应的时间之间的间隔增大而减小。

在本公开的一些实施方案中,为捕获登录行为的具体时间特征,使用根据本公开的一些实施方案的时间参数化方案将时间信息光滑地编码为特定的时间参数。登录行为的时间特征包含两个方面:(1)周期性。例如,用户通常在中午去餐厅而在晚上去酒吧;在工作日用户登录POI通常在办公室附近,而在周末则可能在商场附近。(2)偏好差别。用户登录偏好随时间变化。此外,偏好差别存在于三个尺度:一天中的不同时间,一周中的不同天,以及一年之中的不同月。在本公开的一些实施方案中,时间信息参数化方案按照以下方式在三个尺度上捕获这两方面的性质。首先,将时间信息分割为三段,包括月份、工作日或周末,以及时段。在本公开的一些实施方案中,可以将一天分为多个时段,如以小时划分,可获得24个时段。以4个时段为例,可以将一天分为从上午6:00至10:59的早间时段,从凌晨0:00至2:59和下午15:00至23:59的下午和晚间时段,以及凌晨3:00至5:59的过渡时段以及上午11:00至下午14:59的过渡时段。在本公开的一些实施方案中,使用例如4个字节表示月份信息,1个 字节表示工作日或周末,2个字节表示时段。在本公开的一些实施方案中,将二进制编码转化为唯一的十进制数作为时间参数,其中该参数可以在例如0至95的范围内。图2示例了在本公开的一些实施方案中对示例性时间信息“2011-04-0518:10:23”进行编码的步骤。

在本公开的一些实施方案中,STELLAR系统提供时间相关的连续POI推荐。在本公开的一些实施方案中,为进行兴趣点排序,需要对于给定的用户u建立打分函数,所述打分函数是关于在给定的上次登录作为查询POI lq的情况下在时间信息t下的候选POI lc的函数,其定义如下:

f(u,lq,t,lc), (式1)

其中将四元张量映射为实数。U、L和T分别表示用户组、POI组以及光滑时间参数组。在本公开的一些实施方案中,该分数值表示在给定查询POI的情况下,用户在时间信息下对候选POI的“连续登录概率”。

在本公开的一些实施方案中,建立排序方案以学习候选POI的得分函数,所述排序方案采用成对的张量相互作用表示影响用户登录行为的以下三个关键因素:(1)用户u对候选POI lc的偏好,(2)时间t对候选POI lc的时间影响,以及(3)上次登录POI lq与候选POI lc之间的相关性。在本公开的一些实施方案中,f(u,lq,t,lc)的分数值由用户-POI相互作用、时间-POI相互作用和POI-POI相互作用共同决定。在这种情况下,对于每个POI使用单一的矢量表示不足以捕获三种不同类型的相互作用。在本公开的一些实施方案中,定义3×d矩阵表示POI特性,其中d是空间维度。对于每个POI,分别使用三个矢量描述POI-用户、POI-时间和POI-POI相互作用。如图3中所示,函数f(u,lq,t,lc)可以表示为

(式2)

其中Uu,Tt∈Rd是用户u和时间t的特征矢量,是候选POI lc的三个d维特征矢量,其对应于与用户、其他POI和时间信息的相互作用,并且是与候选POI相互作用的查询POI lq的矢量。为确保相互作用是正的,所有矢量是非负的。此外,在本公开的一些实施方案中,用U∈Rd×|u|表示用户矩阵并且用表示时间矩阵。此外,在本公开的一些实施方案中,使用维张量表示POI特征。

在本公开的一些实施方案中,从图1可以看出,较短间隔内的连续POI包含更强的相关性。为描述这一发现,在本公开的一些实施方案中,使用权重函数区分强的和弱的相关性。在本公开的一些实施方案中,权重值在[0,1]的范围内,并且该函数不随着两次连续登录的持续时间而增加。当两次连续登录在阈值间隔之内发生时,可以假设它们高度相关。否则,相关性随着时间间隔增加而降低。在本公开的一些实施方案中,可以如下定义权重函数:

(式3)

其中ΔT是连续登录的间隔,单位为小时;s是区分关联性的阈值。在本公开的一些实施方案中,例如,可以将s设定为4。查询POI lq和目前的时间t决定间隔ΔT。在本公开的一些实施方案中,可以将打分函数表示为:

(式4)

其中w是体现POI-POI相关性的权重值。

在本公开的一些实施方案中,STELLAR模型要克服两个困难:(1)严重的稀疏性。现有的方法仅用三个数组从一个张量习得模型。在本公开的一些实施方案中,使用四元数组(用户、POI、时间、POI),这显著增加了张量的稀疏性。(2)耦合的相互作用。现有的涉及张量的方法中的数组是相互独立的。例如,数组可以包括用户、条目和标签,这些是相互独立的。这有利于更新模型。然而,在本公开的一些实施方案中构造的张量中,数组包括两个在更新中耦合的POI。这使得无法使用之前的张量分解法。在本公开的一些实施方案中,通过矩阵表示POI特征来分别地建模三类相互作用。此外,在本公开的一些实施方案中,将张量补全问题简化为三个低秩矩阵参数化问题的组合,这减轻了稀疏性问题。

模型学习

在本公开的一些实施方案中,通过学习连续登录可能性的排序进行建模。因为当为用户推荐连续POI时更关注候选POI的排序而不是登录概率的真实值,对于本公开的一些实施方案中的STELLAR模型使用基于成对排序的目标函数。

在本公开的一些实施方案中,按照以下方式进行模型学习。假设在登录POI点,f(u,lq,t,lc)的分数高于未登录的对应点。定义顺序这意味着在时间t,给定的查询POI lq,用户u访问POI而不是基于此,提取所有对的偏好约束的组

(式5)

假设DS中的数组彼此无关,那么学习打分函数中的参数就是最小化所有的对次序的负对数倾向值。此外,在本公开的一些实施方案中,加入弗罗贝尼乌斯(Frobenius)范数项以将参数正则化,从而避免过拟合的风险。在本公开的一些实施方案中,目标函数为

(式6)

其中σ是sigmoid函数λ是正则化参数,并且Θ表示包括U、T和的参数组。

在本公开的一些实施方案中,使用随机梯度下降(SGD)算法学习目标函数。使用对数组得到每个参数θ∈Θ的导数,为

(式7)

在本公开的一些实施方案中,为确保非负数性,将习得的参数投影为非负数值。在本公开的一些实施方案中,将投影算符P(·):Rd→Rd定义为P[xi]=max(0,xi),i=1,…,d。对于每个取样数组通过以下导数

(式8)

更新每个参数θ∈Θ,其中γ是学习率。为训练该模型,按照DS自引导指 令取样规则取出数组。算法1给出了学习STELLAR模型的详细步骤。收敛条件为,对于固定的取样数组,负对数似然值不降低。

在本公开的一些实施方案中,提出了一种用于POI推荐的模型,与现有技术相比,STELLAR模型提供了时间相关的连续POI推荐。在本公开的一些实施方案中,提出了一种POI特征表示方式,以克服耦合相互作用的问题。

在本公开的一些实施方案中,定义矩阵而不是简单的矢量表示POI特征,在所述矩阵中,使用一个矢量描述POI-用户相互作用,使用一个矢量描述POI-时间相互作用,并且使用第三个矢量描述POI-POI相互作用。在本公开的一些实施方案中,STELLAR模型将三种相互作用组合在一起,并且共同学习参数。

在本公开的一些实施方案中,解决了连续POI推荐的问题。与现有技术相比,本公开的一些实施方案中的连续POI推荐是时间敏感性的。为捕获时间影响,在本公开的一些实施方案中,设计了时间参数化方案以将时间信息平滑编码为特定的时间参数,并且之后将该时间参数结合至本公开的一些实施方案中的STELLAR模型。在本公开的一些实施方案中,基于排序成对的相互作用张量参数化方案使用时间、用户和POI之间的相互作用的精确模型化建立STELLAR模型。

图3示例可以用于根据本文描述的至少一些实施方案进行兴趣点排序的计算机程序产品。程序产品300可以包括信号承载媒介302。信号承 载媒介302可以包含当通过例如处理器执行时可以提供上面关于兴趣点排序的一个或多个指令304。

在一些实施方案中,信号承载媒介302可以包括计算机可读介质306,如,但是不限于,硬盘驱动器、光盘(CD)、数字视频光盘(DVD)、磁带机、储存器等。在一些实施方案中,信号承载媒介302可以包括可记录媒介308,如,但是不限于,储存器,可读/写(R/W)CD、R/WDVD等。在一些实施方案中,信号承载媒介302可以包括通信媒介310,如,但是不限于,数字和/或模拟通信媒介(例如,光缆、波导管、有线通信连接、无线通信连接等)。因此,例如,可以将程序产品300通过RF信号承载媒介302传送至系统100的一个或多个模块,其中将信号承载媒介302通过无线通信媒介310(例如,符合IEEE802.11标准的无线通信媒介)传送。

图4是描绘实例计算器件的框图,其被安排为实施根据本文描述的至少一些实施方案安排的废物的处理。在非常基本的构造402中,计算器件400典型包括一个或多个处理器404以及系统储存器406。储存器总线408可以用于处理器404与系统储存器406之间的通信。

依赖于所需的配置,处理器404可以是任何类型的,包括但是不限于微处理器(μP)、微控制器(μC)、数字信号处理器(DSP),或它们的任意组合。处理器404可以包括一级以上的高速缓存,如一级高速缓存410和二级高速缓存412,处理器核心414,以及寄存器416。示例处理器核心414可以包括运算逻辑单元(ALU)、浮点单元(FPU)、数字信号处理核心(DSP核心),或它们的任意组合。示例存储器控制器418也可以与处理器404一起使用,或在一些实施方案中存储器控制器418可以是处理器404的内部部件。

依赖于所需的构造,系统存储器406可以是任意类型的,包括但是不限于易失性存储器(如RAM)、非易失性存储器(如ROM、闪存等)或它们的任意组合。系统存储器406可以包括操作系统420、一个或多个应用422以及程序数据424。应用422可以包括兴趣点排序算法426,其安排为进行如本文所述的包括关于图1的系统100描述的那些的功能。程序数据424可以包括时间参数数据428。在一些实施方案中,可以将应用422安排为以操作系统420上的程序数据424操作,以使得可以提供处理废物。 这里描述的基本构造402在图4中由内部的虚线之内的那些组件示例。

计算装置400可以具有其他特征或功能,以及便于基本配置402和任何所需的装置和接口之间通信的附加接口。例如,可以使用总线/接口控制器430以便于基本配置402与一个或多个数据存储装置432之间经由存储接口总线434的通信。数据存储装置432可以是可移动存储装置436,不可移动存储装置438,或它们的组合。可移动存储和不可移动存储装置的实例包括磁盘装置如软盘驱动器和硬盘驱动器(HDD)、光盘驱动器如高密度光盘(CD)驱动器或数字多功能光盘(DVD)驱动器、固态驱动器(SSD)以及磁带机等。示例计算机储存介质可以包括用于实施信息存储的任何方法或技术的易失性和非易失性、可移动和不可移动介质,所述信息如计算机可读指令、数据结构、程序模块或其他数据。

系统存储器406、可移动存储装置436和不可移动存储器438是计算机储存介质的实例。计算机储存介质包括,但不限于,RAM、ROM、EEPROM、闪存或其他存储器技术、CD-ROM、数字多用途光盘(DVD)或其他光学存储、磁带盒、磁带、磁盘存储器或其他磁存储装置,或可以用于存储所需信息并且可以由计算装置400访问的任何其他介质。任何这种计算机储存介质可以是计算装置400的一部分。

计算装置400还可以包括用于便于不同接口装置(例如,输出装置442、外围接口444和通信接口446)与基本配置402经由总线/接口控制器430通信的接口总线440。示例输出装置442包括图形处理单元448和音频处理单元450,其可以被配置为经由一个或多个A/V端口452与不同外部装置如显示器或扬声器通信。示例外围接口444包括串行接口控制器454或并行接口控制器456,其可以被配置为与外部装置如输入装置(例如,键盘、鼠标、笔、音频输入装置、触摸输入装置等)或其他外围装置(例如,打印机、扫描仪等)经由一个或多个I/O端口458通信。示例通信装置446包括网络控制器460,其可以被设置为便于与一个或多个其他计算装置462通过网络通信连接经由一个或多个通信端口464通信。

网络通信连接可以是通信介质的一个实例。通信介质典型地可以通过计算机可读指令、数据结构、程序模块或调制的数据信号如载波或其他传输机制中的其他数据实现,并且可以包括任何信息传递介质。“调制的数 据信号”可以是其特征的一个或多个以将信息编码在信号中的方式设定或改变的信号。作为实例,而不是限制性的,通信介质可以包括有线介质如有线网络或直接接线连接,以及无线介质如声波、射频(RF)、微波、红外(IR)和其他无线介质。如本文所使用的术语计算机可读介质可以包括存储介质和通信介质两者。

可以将计算装置400实现为小外形规格的便携式(或可移动)电子装置如移动电话、个人数字助理(PDA)、个人媒体播放装置、无线网络浏览装置、个人头戴式耳机装置、专用装置或包括任意以上功能的混合装置的一部分。也可以将计算装置400实现为包括便携式计算机和非便携式计算机构造两者的个人计算机。

本公开可以不限制于本申请中描述的特定实施方案的方面,其可以意图作为多个方面的示例。如本领域技术人员将明白的,可以进行多种修改和变化而不脱离其精神和范围。除本文列举的那些之外,本公开的范围内的功能等价方法和设备从以上说明将对于本领域技术人员是显见的。这种修改和变化意图可以落入所附权利要求的范围内。本公开可以仅由所附权利要求的方面,连同这些权利要求可以给出的全部等价范围限定。可以明白的是该公开可以不限定于特定的方法、试剂、化合物组合物或生物学系统,其当然可以变化。还可以明白的是使用本文的术语可以仅用于描述特定实施方案的目的,并且可以不倾向于是限定性的。

虽然本文公开了多个方面和实施方案,对这些实施方案的多种改变和替换对本领域技术人员来说是显而易见的,只要这些改变和替换不脱离本发明的主题精神和范围,并且由所附权利要求涵盖。

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