基于商品关系挖掘的交叉领域推荐方法

在交叉领域的推荐方法中,通常研究两个领域的交叉的场景,根据用户的重叠情况和商品的重叠情况,具体分为以下四类:

\qquad\qquad

  1. 用户重叠(User Overlap)。在源领域和目标领域之间存在部分公共的用户,用符号可表示为 UST≠∅U_{ST} \neq \emptysetUST̸=,他们对两个领域的商品都有评分,但是每件商品只属于一个领域。
  2. 商品重叠(Item Overlap)。在源领域和目标领域之间存在部分公共的商品,用符号可表示为 IST≠∅I_{ST} \neq\emptysetIST̸=,这些商品被来自两个领域的不同用户评过分。
  3. 用户重叠和商品重叠(Full Overlap)。在源领域和目标领域之间既存在部分公共的用户,也存在部分公共的商品,用符号可表示为 UST≠∅U_{ST}\neq\emptysetUST̸=IST≠∅I_{ST}\neq\emptysetIST̸=
  4. 无重叠(No Overlap)。在源领域和目标领域之间既不存在公共的用户,也不存在公共的商品,用符号可表示为 UST=∅U_{ST}=\emptysetUST=IST=∅I_{ST}=\emptysetIST=
符号描述
SSS源领域
TTT目标领域
USU_SUS源领域中用户的集合
UTU_TUT目标领域中用户的集合
ISI_SIS源领域中商品的集合
ITI_TIT目标领域中商品的集合
RSR_SRS源领域中用户-商品评分矩阵
RTR_TRT目标领域中用户-商品评分矩阵
USTU_{ST}UST源领域和目标领域的共同用户的集合
ISTI_{ST}IST源领域和目标领域的共同商品的集合
Truu,vT_{ru_{u,v}}Truu,v源领域的用户 uuu 对目标领域的用户 vvv 的信任关系
R^u,i\hat{R}_{u,i}R^u,i用户 uuu 对商品 iii 的预测评分
  • 通常,任何基于协同过滤的推荐方法都能被应用到前三种场景中去解决交叉领域的推荐问题。对于这三类推荐场景,通过合并两个领域的评分到一个统一的数据集中,这些场景中的交叉领域问题可以转化为单领域内的推荐问题。然而,在第四种交叉领域的场景中,由于在两个领域之间没有任何公共的用户也没有任何公共的商品,该场景下的交叉领域推荐难以进行。参照前三种场景的情况,通过存在的交叉领域的用户或者商品之间的关联,并结合现有的推荐技术,可实现第四种场景下的交叉领域推荐,解决数据稀疏性问题和冷启动问题。因此,在该场景下的研究问题主要包含两点:
    (1)如何准确地构建交叉领域的用户或商品之间的关联;
    (2)如何结合现有的推荐技术建立更好的推荐模型和方法,改进推荐的效果。

TUCross 推荐方法

为了克服单领域推荐面临的数据稀疏性问题和冷启动问题,针对没有任何公共用户和公共商品的两个领域的场景,有人提出一种新的推荐方法 TUCross,其基本思想是通过交叉领域的用户之间的信任关系预测并补全源领域用户对目标领域商品的评分,进而分析交叉领域的商品的关联性,利用交叉领域的商品之间的关联构建两个领域的联接,并融合现有推荐技术,最终实现交叉领域的推荐。

\qquad\qquadenter image description here

TUCross 方法主要包含两个步骤:

  1. 粗略的评分预测(TCross,为对比方案)

该步骤通过两个不同领域的用户间的信任关系建立交叉领域之间的关联,然后,利用信任信息和目标领域的评分信息预测源领域的用户对目标领域的商品的评分。尽管该步骤都能够生成预测的评分,但是,由于该阶段并没有充分利用可用的信息如源领域用户的评分信息等,产生的预测评分并不够准确,而且对于没有信任关联的用户无法预测评分。

    • 单领域的基于信任关系的评分预测过程如下:
      R^u,i=∑u,v∈U,i∈I(Tu,v×Rv,i)∑Tu,v\hat{R}_{u,i}=\dfrac{\sum_{u,v\in U,i\in I}(T_{u,v}\times R_{v,i})}{\sum T_{u,v}}R^u,i=Tu,vu,vU,iI(Tu,v×Rv,i)
      其中,用户 uuu 和用户 vvv 属于同一领域的用户集 UUUTu,vT_{u,v}Tu,v 表示单领域的用户之间的信任关系。

    • 交叉领域的推荐场景中,来自两个不同领域的用户,如果他们存在信任关系,那么他们的喜好在一定程度上也是相似的。因此,可以将一个源领域用户在目标领域的信任用户作为该用户的邻居或者相似用户,利用这些相似用户的评分数据,计算源领域用户对目标领域商品的评分,得到粗略的评分预测结果。
      R^u,j=∑u∈US,v∈UT,j∈IT(Tu,v×Rv,j)∑Tu,v\hat{R}_{u,j}=\dfrac{\sum_{u\in U_S,v\in U_T,j\in I_T}(T_{u,v}\times R_{v,j})}{\sum T_{u,v}}R^u,j=Tu,vuUS,vUT,jIT(Tu,v×Rv,j)
      其中,R^u,j\hat{R}_{u,j}R^u,j 表示源领域的用户 uuu 对目标领域的商品 jjj 的预测评分,Tu,vT_{u,v}Tu,v 表示源领域的用户 uuu 对目标领域的用户 vvv 的信任关系的权重,Rv,jR_{v,j}Rv,j 表示目标领域的用户 vvv 对目标领域的商品 jjj 的实际评分。

  1. 精确的评分预测(TUCross)

在精确的评分预测阶段中,基于源领域用户对目标领域商品的粗略的预测评分,结合源领域用户对源领域商品的实际评分,通过关联性分析建立交叉领域的商品之间的关联,并将这些关联应用到协同过滤技术当中,得到源领域用户对目标领域商品的更加精确的评分。

该过程具体包括:

  • 商品表示
    通过组合源领域用户的历史评分和对目标领域商品的粗略评分,可构造一个统一的基于两个领域的评分矩阵。商品表示阶段通过在这个统一的评分矩阵上进行商品的关联性分析,计算两个领域上的所有商品两两之间的共生程度,并根据阈值判定商品是否关联,最终生成关于所有商品的关联矩阵以及所有商品的向量表示形式
    \qquad\qquad\qquadenter image description here

基于统计理论中常用的关联表,我们利用卡方检验来计算两两商品间的共生程度。表 2.5显示了关于任意两个商品 iiijjj 的关联表的一个示例。其中,商品 iiijjj 被共同评分 F11F_{11}F11 次,有 F12F_{12}F12 个用户对商品 iii 进行了评分而没有对商品 jjj 进行评分,有 F21F_{21}F21 个用户对商品 jjj 进行了评分而没有对 iii 进行评分,有 F22F_{22}F22 个用户对这两个商品都没有评分。对于前文构造的统一的用户-商品评分矩阵而言,关联表中的用户可以是两个领域中的任意用户。

\qquad\qquad\qquad\quad
下面这条公式显示了 χ2\chi^2χ2累积分布函数,该函数用于将实数范围内的 χ2\chi^2χ2 值转化为 000111 之间的关联概率 ppp
χ2=(∣F11F22−F12F21∣−N2)2R1R2C1C2\chi^2=\dfrac{(|F_{11}F_{22}-F_{12}F_{21}|-\frac N2)^2}{R_1R_2C_1C_2}χ2=R1R2C1C2(F11F22F12F212N)2
其中,R1=F11+F12R_1=F_{11}+F_{12}R1=F11+F12R2=F21+F22R_2=F_{21}+F_{22}R2=F21+F22C1=F11+F21C_1=F_{11}+F_{21}C1=F11+F21C2=F12+F22C_2=F_{12}+F_{22}C2=F12+F22N=C1+C2=R1+R2N=C_1+C_2=R_1+R_2N=C1+C2=R1+R2

之后,通过给定一个阈值 β\betaβ,两个商品能被确定是否存在明显的共生:

  • p>=βp>=\betap>=β 时,两个商品被认定为是明显共生也是关联的

  • p&lt;βp&lt;\betap<β 时,两个商品被认定为不是明显共生也不是关联的
    p=F(x∣v)=∫0xtv/2−1⋅e−t/22v/2⋅Γ(v/2)dtp=F(x|v)=\int_0^x\displaystyle\dfrac{t^{v/2-1}\cdot e^{-t/2}}{2^{v/2}\cdot \Gamma(v/2)}dtp=F(xv)=0x2v/2Γ(v/2)tv/21et/2dt
    其中,vvv 是关联表对应的自由度,对于只有两个属性的关联表,它的值为1。Γ(⋅)\Gamma(\cdot)Γ() 是伽马函数,xxx 是计算得到的 χ2\chi^2χ2 卡方值

  • 商品相似度计算
    基于得到的商品-商品关联矩阵,通过度量商品向量间夹角的余弦相似度,计算两商品之间的相似度,如下:
    simi,j=Vi⋅Vj∣Vi∣⋅∣Vj∣sim_{i,j}=\dfrac{V_i\cdot V_j}{|V_i|\cdot |V_j|}simi,j=ViVjViVj
    其中,ViV_iViVjV_jVj 是商品 iiijjj商品向量,这两个商品分别属于源领域商品集 ISI_SIS 和目标领域商品集 ITI_TIT,余弦相似度的取值在 000111 之间。

  • 评分预测
    通过以下公式,我们预测源领域的用户 uuu目标领域的商品 jjj 的评分。
    R^u,j=∑(simi,j×Ru,i)∑simi,j\hat{R}_{u,j}=\dfrac{\sum(sim_{i,j}\times R_{u,i})}{\sum sim_{i,j}}R^u,j=simi,j(simi,j×Ru,i)
    其中,用户 uuu 属于源领域用户集 USU_SUS,商品 iii 属于源领域商品集 ISI_SIS,商品 jjj 属于目标领域商品集 ITI_TIT

可采用数据集

Ciao 数据集
数据要求:

  • 用户对各种各样的商品如电影、音乐、书籍、汽车等进行评论并进行打分,评分为111~555
  • 用户 AAA 对用户 BBB 是否信任,值为 000111
  • 在Ciao数据集中,商品评分数最多的5个类别为:DVDs、Beauty、Books、Travel、CiaoCafe(其中单个领域的评分稀疏度都很高,达到99%以上)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值