您的位置:首页 > 其它

融合用户或产品属性的BPR模型

2016-06-17 17:20 246 查看
背景介绍

问题分析
预备知识

属性到隐特征的映射
kNN映射kNN-BPR

线性映射lin-BPR

map-BPR

背景介绍

  BPR模型是Steffen Rendle提出的一种面向隐反馈偏好数据的排序模型1,该排序模型较好地对用户的正负向反馈进行建模,且可以与传统的协同过滤模型如矩阵分解模型进行结合即BPR-MF,本文介绍如何在BPR-MF模型中融合用户或者产品属性2,融合用户或者产品属性的BPR模型可以较好地解决冷启动问题。

问题分析

预备知识

  BPR-MF模型将评分矩阵Y^分解为两个低秩矩阵W∈R|U|×k和H∈R|I|×k。用户u对产品i的预测得分为:

y^ui=∑f=1kwufhif=<wu,hi>(1)

  通过随机梯度下降方法,BPR-MF模型得到如下的用户和产品特征矩阵:

W=⎛⎝⎜0.21.30.91.20.31.1⎞⎠⎟H=⎛⎝⎜⎜⎜?0.91.10.1?1.00.21.2⎞⎠⎟⎟⎟

W中的每行代表一个用户,H中的每行代表一个产品。假设第一行产品之前没有评分记录,因此无法学习到隐特征向量。为了预测用户对第一件产品的评分,我们可以通过产品之间的属性关联来估计特征。

  产品属性矩阵AI∈R|I|×n,其中aIil等于1当且仅当产品i具有属性l,n为属性个数。

例:假设我们有五部电影,每部电影属于1个或者多个流派。那么产品属性矩阵可以用下表表示

AI=⎛⎝⎜⎜⎜10101000010101000010⎞⎠⎟⎟⎟

属性到隐特征的映射

  文献介绍了三种属性到隐特征的映射方法分别称为kNN-BPR,lin-BPR和map-BPR,后面两种方法的主要区别在于学习参数的方法不同。并且以学习产品属性到隐特征的映射进行举例,同样可以用类似的方法来学习用户属性到隐特征的映射。

  将产品属性映射到隐特征从而进行评分预测的一般形式为:

y^ui:=∑f=1kwufϕf(aIi)=<wu,ϕ(aIi)>(2)

其中ϕf:Rn→R表示将产品属性映射到第f个隐特征上的函数,而ϕ:Rn→Rk表示将产品属性映射到所有隐特征的函数。

1. kNN映射(kNN-BPR)

  一种将属性空间映射到隐特征空间的方法是对每个特征使用加权k近邻回归方法。

  首先根据属性向量余弦相似度来将k近邻作为产品最相似的产品,然后我们可以根据如下公式估计每种特征:

ϕf(aIi):=∑j∈Nk(i)sim(aIi,aIj)hjf∑j∈Nk(i)sim(aIi,aIj)(3)

例:产品之间的相似度矩阵如下表所示

MovieUSABTGRT
The Usual Suspects100.50
American Beauty0100.5
The Godfather0.5010
Road Trip00.501
那么’The usual suspects’的特征可以用下式估计

h^1:=ϕ(aIi)=⎛⎝⎜⎜0.5⋅h3,10.50.5⋅h3,20.5⎞⎠⎟⎟=(1.10.2)

由此我们可以估计新产品的评分为

y^1,1=<w1,h^1>=0.2⋅1.1+1.2⋅0.2=0.46

2. 线性映射(lin-BPR)

  为了将产品属性线性映射到产品隐特征,我们在(2)式加上一个线性函数

ϕf(aIi)=∑l=1nmflaIil=<mf,aIi>(4)

  上式的解释是每个产品特征是产品属性的线性加权 。

例:假设我们训练一个有如下权重的线性映射模型:

M=(0.70.10.00.00.10.81.01.10.70.0)

矩阵M中的行对应不同维度的隐特征,而列表示每个特征对隐特征的影响。那么隐特征可以用下式估计:

y^1=(1⋅0.71⋅0.11⋅0.01⋅0.00⋅0.10⋅0.80⋅1.00⋅1.10⋅0.70⋅0.0)=(0.70.1)

  一种学习线性映射函数中的参数的方法是直接脊灰归,但是产品或者用户属性可能维度较高,因此用随机梯度下降来学习参数,不过后面的实验结果表明这种方法的效果一般,所以作者提出了另一种方法map-BPR。

3. map-BPR

  为了优化线性函数的参数,我们使用BPR-OPT方法。当优化BPR-OPT时,我们主要关注对于同一个用户两个产品得分之差:

y^ui−y^uj=∑f=1kwuf∑l=1nmflaIil−∑f=1kwuf∑l=1nmflaIjl(5)

  上式可进一步约简为:

y^ui−y^uj=∑f=1k∑l=1nwufmflaIil−∑f=1k∑l=1nwufmflaIjl=∑f=1k∑l=1nwufmfl(aIil−aIjl)(6)

  为了训练LearnBPR,我们需要求关于mlf的偏导数:

∂∂mfl(y^ui−y^uj)=wuf(aIil−aIjl)(7)

  

  
Rendle S, Freudenthaler C, Gantner Z, et al. BPR: Bayesian personalized ranking from implicit feedback[C]//Proceedings of the twenty-fifth conference on uncertainty in artificial intelligence. AUAI Press, 2009: 452-461.
Gantner Z, Drumond L, Freudenthaler C, et al. Learning attribute-to-feature mappings for cold-start recommendations[C]//Data Mining (ICDM), 2010 IEEE 10th International Conference on. IEEE, 2010: 176-185.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  BPR 个性化推荐