CN102053971A - 用于面向排序的协同过滤的推荐方法和设备 - Google Patents

用于面向排序的协同过滤的推荐方法和设备 Download PDF

Info

Publication number
CN102053971A
CN102053971A CN2009102071000A CN200910207100A CN102053971A CN 102053971 A CN102053971 A CN 102053971A CN 2009102071000 A CN2009102071000 A CN 2009102071000A CN 200910207100 A CN200910207100 A CN 200910207100A CN 102053971 A CN102053971 A CN 102053971A
Authority
CN
China
Prior art keywords
user
project
preference
potential
probability
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
CN2009102071000A
Other languages
English (en)
Other versions
CN102053971B (zh
Inventor
赵岷
刘楠
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.)
NEC China Co Ltd
Renesas Electronics China Co Ltd
Original Assignee
NEC China Co Ltd
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 NEC China Co Ltd filed Critical NEC China Co Ltd
Priority to CN 200910207100 priority Critical patent/CN102053971B/zh
Priority to JP2010242228A priority patent/JP5143879B2/ja
Publication of CN102053971A publication Critical patent/CN102053971A/zh
Application granted granted Critical
Publication of CN102053971B publication Critical patent/CN102053971B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种用于面向排序的协同过滤的推荐方法和设备。所述方法可以包括:获取用户对排序的项目对的偏好数据;根据所述偏好数据以及用户和项目相关数据,构建基于用户偏好的概率潜在偏好分析模型;以及利用所述概率潜在偏好分析模型,预测基于用户偏好的项目排序以便向用户进行推荐。利用本发明的推荐方法和设备,能够使用观测到的用户对项目对的偏好来直接预测用户对其他项目的偏好排序,从而不需要对整个偏好数据库进行搜索而即时地做出排序预测。这不仅能够减小计算开销,而且提高了向用户推荐的准确性和便利性。

Description

用于面向排序的协同过滤的推荐方法和设备
技术领域
本发明一般地涉及信息过滤,并且更具体地,涉及用于面向排序的协同过滤的推荐方法和设备。
背景技术
随着互联网上可访问信息的爆炸性增长,帮助人们有效地筛选大量信息的信息过滤技术变得不可或缺,以便能够克服由于所获得的信息量过大而造成的信息过载问题。推荐系统就是这样一种信息过滤技术,其基于用户过去的反馈,从大量数据项目中自动生成项目推荐列表以供用户选择和参考。
构成推荐系统的现有技术一般分为基于内容的过滤和协同过滤两大类。相比较于基于内容的过滤,协同过滤不需要关于项目的任何内容信息,其通过收集大量用户对项目的反馈(如评分),并且基于其他用户的偏好模式向用户做出推荐。除了避免需要收集广泛的关于项目或用户的内容信息以外,协同过滤不要求特殊的领域知识并且其容易被应用在不同的推荐系统中。因此,协同过滤已经成为当前推荐系统中普遍使用的算法。
推荐系统的任务是根据用户兴趣生成项目的排序列表,用户最感兴趣的项目应当被排在该列表的顶部。对于项目排序,大多数的协同过滤算法首先预测用户对该项目的评分,然后利用评分对项目进行排序。然而,此类基于评分预测的协同过滤算法由于在评分预测方面不总是与排序有效性相一致、在排序中未将多个项目间的关系纳入考虑而存在预测准确度不高的缺陷。
在例如互联网搜索的许多交互式应用中,评分形式的显式用户反馈经常是难以获得的,而收集大量如用户点击的隐式反馈是很容易的,从中可以容易地提取用户关于项目的成对偏好。因此,针对偏好的模型是更加通用的,其可以处理隐式和显式的用户反馈。
在针对偏好的模型中,N.N.Liu和Q.Yang在国际信息检索年会2008(SIGIR-08)上发表了Eigenrank:一种用于协同过滤的面向排序的方法。该论文提出一种称为EigenRank的基于邻域的协同过滤算法,其将协同过滤视作排序问题而不是评分预测问题。该基于邻域的方法执行某些形式的最近邻搜索,通过融合用户邻居的偏好来产生针对用户的排序推荐列表。经验表明这种面向排序的方法可以产生比传统的评分预测方法更好的排序。
尽管基于邻域的方法因为概念上简单并且直观而被广泛使用,但此类方法也存在不足。第一,基于邻域的方法的准确性通常不是最佳的。第二,尽管基于邻域的方法可以产生预测,但它们并不涉及太多的学习,因而只能从数据中获得很少的关于用户或项目的知识。第三,基于邻域的方法经常要求在预测时直接操纵整个训练数据集,这会造成很大的计算开销。最后,因为没有合适的模型,采用基于邻域的方法来优化与特定任务或应用领域相关联的不同对象是困难的。
发明内容
本发明所要解决的技术问题之一是提供一种能够使用观测到的用户对项目对的偏好来直接预测用户对其他项目的偏好排序,从而不需要对整个偏好数据库进行搜索而即时地做出排序预测。
为了解决上述的技术问题,根据本发明的一个方面,提供一种用于面向排序的协同过滤的推荐方法。该方法可以包括:获取用户对排序的项目对的偏好数据;根据所述偏好数据以及用户和项目相关数据,构建基于用户偏好的概率潜在偏好分析模型;以及利用所述概率潜在偏好分析模型,预测基于用户偏好的项目排序,以便向用户进行推荐。
根据本发明的另一方面,提供一种用于面向排序的协同过滤的推荐设备。该设备可以包括:获取装置,用于获取用户对排序的项目对的偏好数据;构建装置,用于根据所述偏好数据以及用户和项目相关数据,构建基于用户偏好的概率潜在偏好分析模型;以及预测装置,用于利用所述概率潜在偏好分析模型,预测基于用户偏好的项目排序以便向用户进行推荐。
根据本发明的用于面向排序的协同过滤的推荐方法和设备,可以使用观测到的用户对项目对的偏好(即,排序对)来训练预测排序模型,从而可以经由模型预测排序而不用像基于邻域的方法那样在整个偏好数据库中进行搜索,这显著地降低了计算成本。另外,尽管在该预测排序过程中涉及到可以在离线时完成的额外的模型构建阶段,但通过将全部的数据压缩进非常紧凑的统计模型,可以做出即时的排序预测。此外,通过设计合适的损失函数和优化程序,模型可以被系统地调整从而适应不同领域的应用。
优选地,当训练数据是评分集合而非排序对集合时,可以根据不同的策略从评分集合自动地产生合适的排序对集合。
优选地,可以将非评分的用户反馈(隐式反馈)转换为排序对作为训练数据以改进本发明的概率潜在偏好分析(pLPA)模型。由于许多用户并不对他们感兴趣的每一个项目都进行评分,当缺少训练数据时,收集隐式反馈的方法是非常重要的。
根据本发明的技术方案,不仅能够减小计算开销,而且提高了向用户推荐的准确性和便利性。
附图说明
通过以下结合附图的说明,并且随着对本发明的更全面了解,本发明的其他目的和效果将变得更加清楚和易于理解,其中:
图1是示意性示出根据本发明的一个实施方式的用于面向排序的协同过滤的推荐方法的流程图;
图2是示意性示出根据本发明的一个实施方式的基于pLPA的面向排序的协同过滤推荐系统的框图;
图3是为了便于理解而分别示出的现有概率潜在语义分析(pLSA)和根据本发明的pLPA的图形化模型示图;
图4是示意性示出根据本发明的另一实施方式的基于pLPA的面向排序的协同过滤推荐系统的框图;
图5是示意性示出根据本发明的又一实施方式的基于pLPA的面向排序的协同过滤推荐系统的框图;以及
图6是示意性示出根据本发明的用于面向排序的协同过滤的推荐设备的框图。
在所有的上述附图中,相同的标号表示具有相同、相似或相应的特征或功能。
具体实施方式
下面将结合附图详细描述本发明的多个实施方式。
图1是示意性示出根据本发明的用于面向排序的协同过滤的推荐方法的流程图。
如图1中所示,在步骤110处,获取用户对排序的项目对的偏好数据。在步骤120处,根据所述偏好数据以及用户和项目相关数据,构建基于用户偏好的pLPA模型(将在下文中详细地描述)。在步骤130处,利用所述pLPA模型,预测基于用户偏好的项目排序以便向用户进行推荐。
图2是示意性示出根据本发明的一个实施方式的基于pLPA的面向排序的协同过滤推荐系统200的框图。
如图2中所示,该系统主要包括pLPA模型生成单元230和概率潜在偏好计算单元260。另外,为了便于更好的理解本发明,同时在该系统框图中示出了与上述两个单元进行数据递送的排序对集合块210、项目和用户集合块220、pLPA模型块240、用户描述文件块250和用户推荐列表块270。其中,排序对集合块210以<用户u,项目i,项目j>的形式存储用户偏好数据,该存储形式表示相比较于项目j,用户u更偏好于项目i。项目和用户集合块220存储项目和用户的描述文件。pLPA模型生成单元230基于排序对集合块和用户和项目描述文件块中所存储的数据(即偏好数据以及用户和项目相关数据)来构建出本发明的pLPA模型并存储到pLPA模型块240。接着,将pLPA模型块240和用户描述文件块250中的数据递送至概率潜在偏好计算单元260。在概率潜在偏好计算单元260中,基于生成的pLPA模型和用户u的描述文件生成针对用户u的未评价项目的偏好排序(将在稍后详细描述排序预测过程),以便在用户推荐列表块270中将基于偏好的推荐列表呈现给用户u。
图3是为了便于理解本发明而分别示出的现有概率潜在语义分析(pLSA)和根据本发明的pLPA的图形化模型示图。如图3中所示,在左侧部分示出了pLSA的模型图,正如本领域技术人员所已知的,该模型是一种广泛使用的用于建模共现数据的基于混合分布的潜在变量模型,右侧示出了本发明的pLPA的模型图。在该图及下文中,u表示用户,i和j表示项目,z表示潜在用户类(即,用于表示用户所属的用户组类别)、rui表示用户u对项目i的评分、
Figure B2009102071000D0000051
表示用户u对于项目i和项目j的成对偏好变量,如果用户u相对于项目j更偏好于项目i,则否则
Figure B2009102071000D0000053
k表示潜在用户类z的个数。
pLSA是基于评分数据(即用户对项目的评分,如用户对项目A评以5分,对项目B评以3分)来建模的,其模型为:
P ( r ui | u , i ) = Σ z = 1 k P ( r ui | i , z ) P ( z | u ) - - - ( 1 )
其中P(rui|i,z)用高斯分布建模,即
P ( r ui | u , i ) = Σ z = 1 k P ( z | u ) P ( r ui ; μ zi , σ zi )
P ( r ui ; μ zi , σ zi ) = 1 2 π σ zi exp [ - ( r ui - μ zi ) 2 σ zi 2 ]
可以使用现有技术中的EM(期望最大化)算法对上述模型的未知参数值p(z|u)、μzi
Figure B2009102071000D0000061
进行估计。EM算法是Dempster、Laind和Rubin于1977年提出的求参数极大似然估计的一种方法,它可以从非完整数据集中对参数进行极大似然估计,是机器学习中常用的经典参数估计算法。该算法是一个迭代算法,每次迭代由两个步骤组成:
1)期望步骤,在该步骤中按下式计算潜在用户类z的后验概率。
P ( z | u , i ) = P ( z | u ) P ( r ui ; μ zi , σ zi ) Σ z ′ = 1 k P ( z ′ | u ) P ( r ui ; μ z ′ i , σ z ′ i ) - - - ( 2 )
2)最大化步骤,在该步骤中最大化下面的对数似然函数的期望。
E [ L c ] = Σ ( u , i ) ∈ R Σ z = 1 k P ( z | u , i ) log [ P ( r ui ; μ zi , σ zi ) P ( z | u ) ] - - - ( 3 )
限定P(z|u)求和等于1,则可按下列公式直接估计参数p(z|u)、μzi
Figure B2009102071000D0000064
P ( z | u ) = Σ ( u ′ , i ) ∈ R : u ′ = u P ( z | u , i ) Σ z ′ = 1 k Σ ( u ′ , i ) ∈ R : u ′ = u P ( z ′ | u , i )
μ zi = Σ ( u , i ′ ) ∈ R : i ′ = i r ui P ( z | u , i ) Σ ( u , i ′ ) ∈ R : i ′ = i P ( z | u , i )
σ zi 2 = Σ ( u , i ′ ) ∈ R : i ′ = i ( r ui - μ zi ) 2 P ( z | u , i ) Σ ( u , i ′ ) ∈ R : i ′ = i P ( z | u , i ) - - - ( 4 )
在得到估计的参数值后,通过下式预测出用户对未评分的项目的可能评分。
r ^ ui = ∫ rP ( r | u , i ) = Σ z = 1 k P ( z | u ) ∫ rP ( r ; μ zi , σ zi ) dr
= Σ z P ( z | u ) μ zi - - - ( 5 )
相对于上述的pLSA,本发明的pLPA是基于排序数据(即,用户对项目的偏好,例如项目A>项目B,则表示用户更偏好于项目A。用户对所有项目的偏好可以表示为一个排序列表,如A>C>B>E>…)来建模的,其模型为:
P ( δ ij u | u , i , j ) = Σ z = 1 k P ( δ ij u | i , j , z ) P ( z | u ) - - - ( 6 )
在上式中,p(z|u)表示用户u属于潜在用户类z的概率,
Figure B2009102071000D0000072
表示潜在用户类z的用户u对项目i和项目j产生偏好
Figure B2009102071000D0000073
的概率,
Figure B2009102071000D0000074
表示用户u对项目i和项目j产生偏好
Figure B2009102071000D0000075
的概率。
在本发明的pLPA模型中,
Figure B2009102071000D0000076
项用Bradley-Terry模型建模,下面将首先描述Bradley-Terry模型。
考虑一个包含n个项目的集合,该集合中的n个项目成对地彼此比较以产生二元结果δij。如果用户u相对于j更偏好于i,则δij取值为1,否则δij取值为0,这就形成了上文所提到的排序的项目对的偏好数据。针对具有非负参数γ的δij的概率分布的Bradley-Terry模型如下:
P ( δ ij = 1 ; γ ) = γ i γ i + γ j - - - ( 7 )
其中γi和γj是项目i和j的非负项目参数,用于分别指示项目i和j的效用,γi高于γj,则相对于项目j,用户更偏好于项目i。
用于成对比较的Bradley-Terry模型可以用于定义排序上的概率分布。令Pn表示从1到n的整数集合上所有可能排序的集合。向量π∈Pn定义了n个项目集合上的一个排序,πi=1表示项目i排在第一位。假定排序π,可以关于π定义变量
Figure B2009102071000D00000712
如果πi<πj,则
Figure B2009102071000D00000713
否则所有可能排序Pn的集合上的概率分布为:
P ( π ; γ ) = 1 C ( γ ) Π i = 1 n - 1 Π j = i + 1 n P ( δ ij π ; γ ) - - - ( 8 )
其中是归一化常数,用于确保P(π;γ)是关于Pn的概率度量。将式(7)代入式(8)得到下式
P ( π ; γ ) = 1 C * ( γ ) Π i = 1 n γ i n - π i - - - ( 9 )
其中
Figure B2009102071000D0000081
是不依赖π的常数因子。
Bradley-Terry模型是一种经典的用于比较成对数据的概率模型,关于其具体细节可以在文献[Bradley,R.A.and Terry,M.E.(1952).Rank analysis of incomplete block designs,I.the method of paired comparisons.Biometrika,39,324-345]处找到。另外,在此需要指出的是本发明使用Bradley-Terry模型来建模仅仅是示例性的而非限制性的,本领域技术人员在本发明的教导下可以采取其他合适的用于比较成对数据的概率模型来应用本发明的pLPA模型。
利用上述具有非负参数γz的Bradley-Terry模型对本发明的pLPA模型中的
Figure B2009102071000D0000083
项建模如下:
P ( δ ij u = 1 | z , i , j ) = P ( δ ij u = 1 ; γ z ) = γ zi γ zi + γ zj - - - ( 10 )
在上式中,γzi和γzj是任意两个项目i和j的非负项目参数,用于分别指示项目i和j在潜在用户类z的效用,γzi高于γzj,则相对于项目j,潜在用户类z中用户u更偏好于项目i,
Figure B2009102071000D0000089
表示潜在用户类z中用户u对项目i和项目j产生偏好
Figure B2009102071000D00000810
的概率,其中
Figure B2009102071000D00000811
表示用户u相对于项目j更偏好于项目i。
接着,使用EM算法估计pLPA模型中未知的参数值,即,n×k个项目参数γz以及m×k个P(z|u),其中n表示项目个数,m表示用户个数,k表示潜在用户类的数目,对于k的选择,针对不同的具体应用,可以由专家或通过测试模型在训练集上的性能来选择不同的k值以便获得最佳的效果。在此需要指出的,本发明中的EM算法的使用仅仅是示例性的,本领域技术人员也可以使用其他能够实现类似功能的参数估计算法来估计pLPA模型的参数。
在期望步骤,通过下式计算每个观察的成对偏好的潜在用户类z的后验概率:
P ( z | u , i , j ) = P ( z | u ) P ( δ ij u ; γ z ) Σ z ′ = 1 k P ( z ′ | u ) P ( δ ij u ; γ z ′ ) - - - ( 11 )
对于最大化步骤,首先推导出对数似然函数的期望E[Lc]:
Σ ( u , i , j ) ∈ Q Σ z = 1 k P ( z | u , i , j ) [ log P ( δ ij u ; γ z ) + log P ( z | u ) ] - - - ( 12 )
其中Q表示观察的成对偏好集合。
关于P(z|u)优化E[Lc],同时使用标准化约束
Figure B2009102071000D0000092
产生如下针对P(z|u)的更新等式:
P ( z | u ) = Σ ( u ′ , i , j ) ∈ Q : u ′ = u P ( z | u , i , j ) Σ z ′ = 1 k Σ ( u ′ , i , j ) ∈ Q : u ′ = u P ( z ′ , i , j ) - - - ( 13 )
与pLSA不同,在pLPA最大化步骤中,不能得到参数γz的封闭解。因此,采用数值方法以便得到γz的最大似然估计。针对每个潜在用户类z估计参数向量γz,式(12)中唯一相关部分是:
L z c ( γ z ) = Σ ( u , i , j ) ∈ Q Σ z = 1 k P ( z | u , i , j ) log P ( δ ij u ; γ z )
= Σ i = 1 n Σ j = 1 n w ij z [ log γ zi - log ( γ zi + γ zj ) ] - - - ( 14 )
其中
Figure B2009102071000D00000910
是潜在用户类z中用户u相对于项目j偏好于i的期望次数。可以分别地最大化每个以便在当前的最大化步骤中得到γz的估计。
在此使用D.R.Hunter在2004年的统计学年报第32卷第1期第384-406页处提出的“MM algorithms for generalized Bradley-Terry models”迭代算法来得到Bradley-Terry模型中参数γz的最大似然估计,该算法保证收敛至唯一的最大似然估计。假设
Figure B2009102071000D00000914
是第t次迭代的估计。固定
Figure B2009102071000D00000915
可以定义函数:
Q t ( γ z ) = Σ i = 1 n Σ j = 1 n w ij z [ log γ zi - γ zi + γ zj γ zi ( t ) + γ zj ( t ) - log ( γ zi ( t ) + γ zj t ) + 1 ] - - - ( 15 )
利用该函数的严格凹性(其意味着对正数x和y,-log x≥1-log y-(x/y)),可以看出函数Qtz)是
Figure B2009102071000D00000918
在点
Figure B2009102071000D00000919
的最小化值,使得
Figure B2009102071000D00000920
且仅当
Figure B2009102071000D00000921
时取等。结果,可以容易地验证
Figure B2009102071000D00000922
意味着此特性建议这样的迭代算法,其中在每次迭代时最大化Qtz)并且令
Figure B2009102071000D00000925
Figure B2009102071000D00000926
的最大值,这将产生如下更新的等式:
γ zi ( t + 1 ) = W i z [ Σ j ≠ i Z ij z γ zi ( t ) + γ zj ( t ) ] - - - ( 16 )
其中
Figure B2009102071000D00000928
并且
Figure B2009102071000D00000929
上述适合于Bradley-Terry模型的迭代算法可以非常有效地计算每次迭代,在实验中,通常需要30-50次迭代便可以收敛至最大似然估计。
循环迭代进行直至EM算法收敛,得到参数P(z|u)以及γz的估计值,pLPA模型计算完毕。
下面将详细描述在本发明的协同过滤推荐系统200的概率潜在偏好计算单元260中的排序预测处理。根据式(8)的方法,pLPA模型可以用于获得如下排序π∈Pn上的概率分布:
P ( π | u ) = 1 C ( u ) Π i = 1 n - 1 Π j = i + 1 n P ( δ ij π | u )
= 1 C ( u ) Π i = 1 n - 1 Π j = i + 1 n Σ z = 1 k P ( δ ij u ; γ z ) P ( z | u ) - - - ( 17 )
其中C(u)是用户相关的标准化常数。与评分不同,排序π是离散组合结构,因此不能如式(5)的方法求π的期望。相反,需要找到如下式(18)所示具有最大后验概率(MAP)的排序:
π ^ u = arg max π ∈ P n P ( π | u ) - - - ( 18 )
然而,与单个Bradley-Terry模型的情况不同,式(18)是Bradley-Terry模型的混合,其每个都具有由γz确定的相应MAP排序。因此,MAP排序需要通过对所述集合Pn执行组合搜索来获得。对P(π|u)取对数并且移除所有与π不相关的因子,MAP排序π*是最大化下式的排序:
V u ( &pi; ) = &Sigma; ( i , j ) ; &pi; i < &pi; j &omega; ij u - - - ( 19 ) , 其中 &omega; ij u = log P ( &delta; ij = 1 | u ) .
总的来说,期望获得这样的排序,其最大化相对于其他排序较低的项目更偏好于排序较高的项目的概率。
下面,描述受排序聚合问题启发的一种有效产生针对pLPA模型的排序的策略。在排序聚合问题中,存在多个判断,每个判断会分别提供排序结果的列表,排序聚合的目的是有效地合并各个判断的分值以产生好的总排序。用于排序聚合的大多数方法依赖于如下的信息:(i)由不同的判断分派给每个项目的分值;和/或(ii)不同结果列表中每个项目的依次排序。已经提出了不同的方法,其基于原始分值、排序或这些值的一些变换来计算每个项目的总分值,使得项目可以通过该总分值来排序。为了应用排序聚合以从pLPA模型产生排序,以每个潜在用户类的Bradley-Terry模型P(δij,γz)作为将分值γz1,...γz2相应地分配给n个项目的判断。此处项目参数γzi是排序的自然测量,因为根据Bradley-Terry模型,具有更高γzi值的项目更有可能受到偏好。为了产生用户相关的排序,还使用P(z|u)作为每个判断上的用户相关的权重。这就导出如下的计算与用户u和项目i相关联的分值θui的公式:
&theta; ui = &Sigma; z = 1 k P ( z | u ) &gamma; zi - - - ( 20 )
对每个用户u,根据式(20)计算出各个项目与u相关联的分值,并对其进行排序,从而预测出针对用户u偏好的项目排序。在此需要指出的是本发明中该排序预测策略的使用仅仅是示例性的而非限制性的,本领域技术人员在本发明的教导下可以采取其他排序求解策略来应用本发明的pLPA模型。
从上文的描述可以看出本发明中的pLPA与现有技术中的pLSA存在相似之处,但二者之间也存在着显著的差别。具体地,pLSA基于用户评分数据进行建模,并且对每个潜在用户类的每个项目上的评分使用高斯分布来建模。然而,本发明的pLPA基于用户对项目对的偏好数据进行建模,并且对每个潜在用户类的每对项目上的偏好使用例如Bradley-Terry模型的模型来建模。相应地,pLSA和pLPA的参数估计策略也不同。最后,pLSA预测的是用户对项目的评分,而本发明的pLPA预测的是用户对项目的排序。
图4是示意性示出根据本发明的另一实施方式的基于pLPA的面向排序的协同过滤推荐系统400的框图。在该图中所示出的协同过滤推荐系统400与图2中的类似,除了包括附加的评分集合块480以及排序对生成器490。其中,在评分集合块480中存储了用户对项目的评分,并且排序对生成器490基于给定的评分集合来自动地生成排序对。可以使用不同的策略来生成不同的对集合。下面是说明可以用于排序对生成器的策略的例子。
例如,对于对项目集{i,j,k,t}具有四个评分{ri=4,rj=4,rk=5,rt=1}的给定用户u。
例子1:基本策略-根据评分从所有的项目生成全体项目对,
生成的对集合是(<k,i>,<i,t>,<k,j>,<j,t>,<k,t>}
例子2:加权策略-生成具有权重的全体项目对,
生成的对集合是{<k,i,w=1>,<i,t,w=3>,<j,t,w=1>,<j,t,w=3>,<k,t,w=4>},其中权重w与两个评分的差额成比例。
此策略突出了多个评分之间的区别程度。不同的权重可作为进一步筛选项目对的依据。
例子3:选择性策略-根据给定的差值阈值生成选择性的项目对,
具有给定阈值=2的项目对集合是{<i,t>,<j,t>,<k,t>}。
此策略仅考虑具有明显不同的对,这可以减少生成项目对的数量并从而减少计算的负担。总之,在图4的协同过滤推荐系统400中,排序对可以根据不同的策略从评分集合中生成。可以通过考虑实际应用中不同的数据特性来选择策略。
图5是示意性示出根据本发明的又一实施方式的基于pLPA的面向排序的协同过滤推荐系统500的框图。在该图中所示出的协同过滤推荐系统500与图2中的类似,除了包括附加的用户反馈收集器545、用户反馈块550以及基于反馈的排序对生成器555。其中,用户反馈收集器545收集给定的推荐列表上的用户反馈,如点击、浏览或购买历史等,接着由用户反馈块550记录由用户反馈收集器545所收集的用户反馈。基于反馈的排序对生成器555将用户反馈转换成排序对。转换可以使用不同的策略。下面是说明可能策略的示例。
例如,给定项目<A,B,C,D,E>的排序列表,并且用户点击的集合是<B,D>。
例子1:假设用户读取了整个排序列表,则生成的排序对集合是{<B,A>,<B,C>,<B,E>,<D,A>,<D,C>,<D,E>}
例子2:假设用户仅读取了部分排序列表,则生成的排序对集合是{<B,A>,<B,C>,<D,A>,<D,C>}
图5中示出的协同过滤推荐系统500使用用户反馈机制来收集用户的潜在偏好,从而可以改进训练数据收集。通过此方式,用户的潜在反馈可以用于训练。当获得用户评分困难时,这样的机制是十分有益的。
图6是示意性示出根据本发明的用于面向排序的协同过滤推荐设备600。该设备600包括获取装置610、构建装置620和预测装置630。其中,获取装置610用于获取用户对排序的项目对的偏好数据。构建装置620用于根据从获取装置610接收到的偏好数据以及用户和项目相关数据,构建基于用户偏好的pLPA模型。预测装置630利用构建装置620所构建的pLPA模型,预测基于用户偏好的项目排序以便向用户进行推荐。
本发明的实施方式可以通过硬件、软件、固件或者其结合来实现。本领域技术人员应该认识到,也可以在供任何合适数据处理系统使用的信号承载介质上所设置的计算机程序产品中体现本发明。这种信号承载介质可以是传输介质或用于机器可读信息的可记录介质,包括磁介质、光介质或其他合适介质。可记录介质的示例包括:硬盘驱动器中的磁盘或软盘、用于光驱的光盘、磁带,以及本领域技术人员所能想到的其他介质。本领域技术人员应该认识到,具有合适编程装置的任何通信终端都将能够执行如程序产品中体现的本发明方法的步骤。
应当注意,为了使本发明更容易理解,上面的描述省略了对于本领域的技术人员来说是公知的、并且对于本发明的实现可能是必需的更具体的一些技术细节。
提供本发明的说明书的目的是为了说明和描述,而不是用来穷举或将本发明限制为所公开的形式。对本领域的普通技术人员而言,许多修改和变更都是显而易见的。
因此,选择并描述实施方式是为了更好地解释本发明的原理及其实际应用,并使本领域普通技术人员明白,在不脱离本发明实质的前提下,所有修改和变更均落入由权利要求所限定的本发明的保护范围之内。

Claims (16)

1.一种用于面向排序的协同过滤的推荐方法,该方法包括:
获取用户对排序的项目对的偏好数据;
根据所述偏好数据以及用户和项目相关数据,构建基于用户偏好的概率潜在偏好分析模型;以及
利用所述概率潜在偏好分析模型,预测基于用户偏好的项目排序以便向用户进行推荐。
2.根据权利要求1所述的方法,其中,获取用户对排序的项目对的偏好数据进一步包括:根据不同的策略从评分集合中生成所述排序的项目对。
3.根据权利要求2所述的方法,其中,所述不同的策略包括:根据对项目的评分从所有的项目生成全部的排序的项目对、根据对项目的评分生成具有权重的排序的项目对或根据给定的评分差值阈值生成排序的项目对。
4.根据权利要求1所述的方法,其中,获取用户对排序的项目对的偏好数据进一步包括:基于针对推荐的用户反馈来生成新的偏好数据以供在构建概率潜在偏好分析模型步骤中使用。
5.根据权利要求1所述的方法,其中,所述概率潜在偏好分析模型公式化表达如下:
P ( &delta; ij u | u , i , j ) = &Sigma; z = 1 k P ( &delta; ij u | i , j , z ) P ( z | u )
其中u表示用户,i和j表示项目,z表示潜在用户类,
Figure F2009102071000C0000012
表示用户u对于项目i和项目j的成对偏好变量,如果相对于项目j,用户u更偏好于项目i,则
Figure F2009102071000C0000013
否则
Figure F2009102071000C0000014
k表示潜在用户类的数目,p(z|u)表示用户u属于潜在用户类z的概率,
Figure F2009102071000C0000015
表示潜在用户类z的用户u对项目i和项目j产生偏好
Figure F2009102071000C0000016
的概率
Figure F2009102071000C0000017
表示用户u对项目i和项目j产生偏好
Figure F2009102071000C0000018
的概率。
6.根据权利要求5所述的方法,其中,利用Bradley-Terry模型对公式化表达的概率潜在偏好分析模型的
Figure F2009102071000C0000019
项进行建模,该建模公式化表达如下:
P ( &delta; ij u = 1 | z , i , j ) = P ( &delta; ij u = 1 ; &gamma; z ) = &gamma; zi &gamma; zi + &gamma; zj
其中γzi和γzj是项目i和j的非负项目参数,用于分别指示项目i和j在潜在用户类z的效用,γzi高于γzj,则相对于项目j,潜在用户类z中用户u更偏好于项目i,
Figure F2009102071000C0000026
表示潜在用户类z中用户u对项目i和项目j产生偏好
Figure F2009102071000C0000027
的概率,其中
Figure F2009102071000C0000028
表示相对于项目j,用户u更偏好于项目i。
7.根据权利要求6所述的方法,其中,利用期望最大化方法求解概率潜在偏好分析模型的未知参数p(z|u)和γz
8.根据权利要求6所述的方法,其中,利用概率潜在偏好分析模型预测用户对项目的偏好排序时,利用下面的公式计算与用户u和项目i相关联的分值θui
&theta; ui = &Sigma; z = 1 k P ( z | u ) &gamma; zi
然后对各个项目的分值进行排序从而预测针对用户u偏好的项目排序。
9.一种用于面向排序的协同过滤的推荐设备,该设备包括:
获取装置,用于获取用户对排序的项目对的偏好数据;
构建装置,用于根据所述偏好数据以及用户和项目相关数据,构建基于用户偏好的概率潜在偏好分析模型;以及
预测装置,利用所述概率潜在偏好分析模型,预测基于用户偏好的项目排序以便向用户进行推荐。
10.根据权利要求9所述的设备,其中,所述获取装置进一步包括用于根据不同的策略从评分集合中生成所述排序的项目对的装置。
11.根据权利要求10所述的设备,其中,所述不同的策略包括:根据对项目的评分从所有的项目生成全部的排序的项目对、根据对项目的评分生成具有权重的排序的项目对或根据给定的评分差值阈值生成排序的项目对。
12.根据权利要求9所述的设备,其中,所述获取装置进一步包括用于基于针对推荐的用户反馈来生成新的偏好数据以供构建装置使用的装置。
13.根据权利要求9所述的设备,其中,所述构建装置所构建的概率潜在偏好分析模型公式化表达如下:
P ( &delta; ij u | u , i , j ) = &Sigma; z = 1 k P ( &delta; ij u | i , j , z ) P ( z | u )
其中u表示用户,i和j表示项目,z表示潜在用户类,
Figure F2009102071000C0000032
表示用户u对于项目i和项目j的成对偏好变量,如果相对于项目j,用户u更偏好于项目i,则
Figure F2009102071000C0000033
否则
Figure F2009102071000C0000034
k表示潜在用户类的数目,p(z|u)表示用户u属于潜在用户类z的概率,
Figure F2009102071000C0000035
表示潜在用户类z的用户u对项目i和项目j产生偏好
Figure F2009102071000C0000036
的概率,
Figure F2009102071000C0000037
表示用户u对项目i和项目j产生偏好
Figure F2009102071000C0000038
的概率。
14.根据权利要求13所述的设备,其中,所述构建装置进一步包括用于利用Bradley-Terry模型对公式化表达的概率潜在偏好分析模型的项进行建模的装置,该建模公式化表达如下:
P ( &delta; ij u = 1 | z , i , j ) = P ( &delta; ij u = 1 ; &gamma; z ) = &gamma; zi &gamma; zi + &gamma; zj
其中γzi和γzj是项目i和j的非负项目参数,用于分别指示项目i和j在潜在用户类z的效用,γzi高于γzj,则相对于项目j,潜在用户类z中用户u更偏好于项目i,
Figure F2009102071000C00000315
表示潜在用户类z中用户u对项目i和项目j产生偏好
Figure F2009102071000C00000316
的概率,其中
Figure F2009102071000C00000317
表示相对于项目j,用户u偏好于项目i。
15.根据权利要求14所述的设备,其中,所述构建装置进一步包括利用期望最大化方法求解概率潜在偏好分析模型的未知参数p(z|u)和γz的装置。
16.根据权利要求14所述的设备,其中,所述预测装置进一步包括用于利用下面的公式计算与用户u和项目i相关联的分值θui
&theta; ui = &Sigma; z = 1 k P ( z | u ) &gamma; zi
然后对各个项目的分值进行排序,从而预测针对用户u偏好的项目排序的装置。
CN 200910207100 2009-10-30 2009-10-30 用于面向排序的协同过滤的推荐方法和设备 Expired - Fee Related CN102053971B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN 200910207100 CN102053971B (zh) 2009-10-30 2009-10-30 用于面向排序的协同过滤的推荐方法和设备
JP2010242228A JP5143879B2 (ja) 2009-10-30 2010-10-28 ランキング指向の協調フィルタリング推薦方法および装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN 200910207100 CN102053971B (zh) 2009-10-30 2009-10-30 用于面向排序的协同过滤的推荐方法和设备

Publications (2)

Publication Number Publication Date
CN102053971A true CN102053971A (zh) 2011-05-11
CN102053971B CN102053971B (zh) 2013-08-28

Family

ID=43958310

Family Applications (1)

Application Number Title Priority Date Filing Date
CN 200910207100 Expired - Fee Related CN102053971B (zh) 2009-10-30 2009-10-30 用于面向排序的协同过滤的推荐方法和设备

Country Status (2)

Country Link
JP (1) JP5143879B2 (zh)
CN (1) CN102053971B (zh)

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102495837A (zh) * 2011-11-01 2012-06-13 中国科学院计算技术研究所 一种数字信息推荐预测模型的训练方法和系统
CN102508894A (zh) * 2011-11-01 2012-06-20 中国科学院计算技术研究所 一种数字信息推荐预测模型的训练方法和系统
CN102779136A (zh) * 2011-05-13 2012-11-14 北京搜狗科技发展有限公司 一种信息搜索的方法和装置
CN103049452A (zh) * 2011-10-14 2013-04-17 百度在线网络技术(北京)有限公司 一种基于预估下载率进行应用排序的方法与设备
CN103309866A (zh) * 2012-03-09 2013-09-18 华为技术有限公司 生成推荐结果的方法和装置
CN104240108A (zh) * 2013-06-20 2014-12-24 达索系统公司 购物者助手
CN104364814A (zh) * 2012-10-30 2015-02-18 Sk普兰尼特有限公司 提供内容推荐服务的系统和方法
CN106354855A (zh) * 2016-09-05 2017-01-25 北京邮电大学 一种推荐方法及系统
CN107025311A (zh) * 2017-05-18 2017-08-08 北京大学 一种基于k近邻的贝叶斯个性化推荐方法及装置
CN107220233A (zh) * 2017-05-09 2017-09-29 北京理工大学 一种基于高斯混合模型的用户知识需求模型构建方法
CN107229876A (zh) * 2017-06-05 2017-10-03 中南大学 一种满足差分隐私的协同过滤推荐方法
CN108241905A (zh) * 2016-12-23 2018-07-03 赫克斯冈技术中心 用于预测土壤和/或植物状况的方法
CN109118263A (zh) * 2017-06-23 2019-01-01 杭州美界科技有限公司 一种基于顾客反馈的美容推荐系统
CN110348947A (zh) * 2019-06-13 2019-10-18 阿里巴巴集团控股有限公司 对象推荐方法及装置
CN112182360A (zh) * 2019-07-03 2021-01-05 国际商业机器公司 具有有限数据可用性的个性化推荐器

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5827874B2 (ja) 2011-11-11 2015-12-02 株式会社ドワンゴ キーワード取得装置、コンテンツ提供システム、キーワード取得方法、プログラム及びコンテンツ提供方法
KR101605654B1 (ko) * 2014-12-01 2016-04-04 서울대학교산학협력단 쌍별 비교 데이터를 이용한 다중랭킹 추정 방법 및 장치
KR101677749B1 (ko) * 2015-05-28 2016-11-21 네이버 주식회사 개인 선호 성향을 고려한 추천 서비스 방법 및 이를 위한 추천 서비스 서버
KR101953839B1 (ko) * 2016-12-29 2019-03-06 서울대학교산학협력단 추가 질의에 대한 쌍별 비교 데이터를 이용한 업데이트된 다중랭킹 추정 방법
CN108665323B (zh) * 2018-05-20 2021-01-05 北京工业大学 一种用于理财产品推荐系统的集成方法
CN109634995B (zh) * 2018-09-10 2023-06-30 创新先进技术有限公司 评估主体对关系的方法、装置及服务器
CN111784377A (zh) * 2019-04-25 2020-10-16 北京京东尚科信息技术有限公司 用于生成信息的方法和装置

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101329683A (zh) * 2008-07-25 2008-12-24 华为技术有限公司 推荐系统及方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4538757B2 (ja) * 2007-12-04 2010-09-08 ソニー株式会社 情報処理装置、情報処理方法、およびプログラム
CN101520784B (zh) * 2008-02-29 2011-09-28 富士通株式会社 信息发布系统和信息发布方法

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101329683A (zh) * 2008-07-25 2008-12-24 华为技术有限公司 推荐系统及方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
THOMAS HOFMANN: "Collaborative Filtering via Gaussian Probabilistic Latent Semantic Analysis", 《SIGIR"03》 *

Cited By (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102779136A (zh) * 2011-05-13 2012-11-14 北京搜狗科技发展有限公司 一种信息搜索的方法和装置
CN103049452B (zh) * 2011-10-14 2017-12-26 百度在线网络技术(北京)有限公司 一种基于预估下载率进行应用排序的方法与设备
CN103049452A (zh) * 2011-10-14 2013-04-17 百度在线网络技术(北京)有限公司 一种基于预估下载率进行应用排序的方法与设备
CN102508894A (zh) * 2011-11-01 2012-06-20 中国科学院计算技术研究所 一种数字信息推荐预测模型的训练方法和系统
CN102495837B (zh) * 2011-11-01 2014-05-07 中国科学院计算技术研究所 一种数字信息推荐预测模型的训练方法和系统
CN102495837A (zh) * 2011-11-01 2012-06-13 中国科学院计算技术研究所 一种数字信息推荐预测模型的训练方法和系统
CN103309866A (zh) * 2012-03-09 2013-09-18 华为技术有限公司 生成推荐结果的方法和装置
CN103309866B (zh) * 2012-03-09 2017-06-13 华为技术有限公司 生成推荐结果的方法和装置
CN104364814A (zh) * 2012-10-30 2015-02-18 Sk普兰尼特有限公司 提供内容推荐服务的系统和方法
US10878044B2 (en) 2012-10-30 2020-12-29 Sk Planet Co., Ltd. System and method for providing content recommendation service
CN104364814B (zh) * 2012-10-30 2017-07-07 Sk 普兰尼特有限公司 提供内容推荐服务的系统和方法
CN104240108A (zh) * 2013-06-20 2014-12-24 达索系统公司 购物者助手
CN106354855B (zh) * 2016-09-05 2019-11-08 北京邮电大学 一种推荐方法及系统
CN106354855A (zh) * 2016-09-05 2017-01-25 北京邮电大学 一种推荐方法及系统
CN108241905A (zh) * 2016-12-23 2018-07-03 赫克斯冈技术中心 用于预测土壤和/或植物状况的方法
CN108241905B (zh) * 2016-12-23 2023-03-21 赫克斯冈技术中心 用于预测土壤和/或植物状况的方法
CN107220233A (zh) * 2017-05-09 2017-09-29 北京理工大学 一种基于高斯混合模型的用户知识需求模型构建方法
CN107220233B (zh) * 2017-05-09 2020-06-16 北京理工大学 一种基于高斯混合模型的用户知识需求模型构建方法
CN107025311A (zh) * 2017-05-18 2017-08-08 北京大学 一种基于k近邻的贝叶斯个性化推荐方法及装置
CN107229876A (zh) * 2017-06-05 2017-10-03 中南大学 一种满足差分隐私的协同过滤推荐方法
CN107229876B (zh) * 2017-06-05 2020-01-24 中南大学 一种满足差分隐私的协同过滤推荐方法
CN109118263A (zh) * 2017-06-23 2019-01-01 杭州美界科技有限公司 一种基于顾客反馈的美容推荐系统
CN110348947A (zh) * 2019-06-13 2019-10-18 阿里巴巴集团控股有限公司 对象推荐方法及装置
CN110348947B (zh) * 2019-06-13 2022-02-25 创新先进技术有限公司 对象推荐方法及装置
CN112182360A (zh) * 2019-07-03 2021-01-05 国际商业机器公司 具有有限数据可用性的个性化推荐器

Also Published As

Publication number Publication date
JP2011096255A (ja) 2011-05-12
JP5143879B2 (ja) 2013-02-13
CN102053971B (zh) 2013-08-28

Similar Documents

Publication Publication Date Title
CN102053971B (zh) 用于面向排序的协同过滤的推荐方法和设备
US7921069B2 (en) Granular data for behavioral targeting using predictive models
Yang et al. Venue recommendation: Submitting your paper with style
US9760907B2 (en) Granular data for behavioral targeting
Agarwal et al. Statistical methods for recommender systems
US20070214133A1 (en) Methods for filtering data and filling in missing data using nonlinear inference
CN111831905B (zh) 基于团队科研影响力及可持续性建模的推荐方法和装置
CN103731738A (zh) 基于用户群组行为分析的视频推荐方法及装置
US8825641B2 (en) Measuring duplication in search results
CN113157752B (zh) 一种基于用户画像和情境的科技资源推荐方法及系统
Wang et al. Query ranking model for search engine query recommendation
Yang et al. Marginal-certainty-aware fair ranking algorithm
Kumar et al. A novel fuzzy rough sets theory based cf recommendation system
Zhang et al. Less is more: Rejecting unreliable reviews for product question answering
Romeu On operations research and statistics techniques: Keys to quantitative data mining
Peska et al. Recommending for disloyal customers with low consumption rate
Zhao et al. Factored item similarity and bayesian personalized ranking for recommendation with implicit feedback
Utama et al. SCIENTIFIC ARTICLES RECOMMENDATION SYSTEM BASED ON USER’S RELATEDNESS USING ITEM-BASED COLLABORATIVE FILTERING METHOD
Guerraoui et al. Sequences, items and latent links: Recommendation with consumed item packs
Diaz et al. Recall, robustness, and lexicographic evaluation
Li et al. Case-Based Reasoning for Personalized Recommender on User Preference through Dynamic Clustering
Ben Abdrabbah et al. Aggregating top-k lists in group recommendation using borda rule
Singh Cognitive Social Mining Analysis Using Data Mining Techniques
Luu et al. Do your friends make you buy this brand? Modeling social recommendation with topics and brands
Іванов et al. The Advertising Prediction Model Based on Machine Learning Technologies

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20130828

Termination date: 20161030

CF01 Termination of patent right due to non-payment of annual fee