3.2 基于二分图的多参数网络结构推荐研究
3.2.1 兴趣相似系数
周涛等对五分制评分数据集的处理办法是:对于任意用户uα∈U,项目oi∈O,rαi为用户uα对项目oi的显式评分,只有当rαi>3时,aαi=1,即只有目标用户与非目标用户对同一项目的评分都大于3时,aαiaβi=1,非目标用户才能对目标用户产生推荐作用。该处理办法忽略了显式评分小于3的数据,用户已评价项目相对于庞大的项目来说十分稀疏,这种处理方法使得数据更加稀疏,部分信息丢失。
我们认为非目标用户对目标用户的推荐影响力可以来自两个方面:共同的喜好,共同的不喜好。当两个用户对同一项目的显式评分都大于3时,表明两个用户存在共同兴趣,非目标用户偏好的项目可以向目标用户推荐。当两个用户对同一项目的显式评分都小于3时,表明两个用户有共同的不喜好。
考虑用户对项目的显式评分后,当用户uα与用户uβ对同一项目oi评分相同时,二者的兴趣最为相似,但对同一项目评分差别较大时,对此项目的评分不仅不能提高用户uα与用户uβ之间的相似度,反而会减弱二者之间的相似度。基于此,本节提出兴趣相似系数的概念。
定义1:在用户-项目二分图G=(U,O,E)中,当任意uα,uβ∈U,oi∈O,aαi=1,aβi=1时,如果rαi,rβi分别为用户uα,uβ对项目oi的显式评分,令,其中λ为调节系数,rmax,rmin分别为评分等级中的最高分与最低分,则称ϕαβ,i为uα,uβ对oi的兴趣相似系数。
在以上定义中,rmax-rmin表示评分等级中最大的评分差距,例如在五分制评级中,该值为5-1=4。ϕαβ,i的值为1时,表示两个用户对项目的评分相等;当两个用户评分不相等时,参数λ的作用是调节其评分差值对ϕαβ,i的影响能力。比如,当rαi=5,rβi=4时,如果兴趣相似系数的宽容度比较低,那么λ的值就比较大,只要用户对项目的评分不相等,就认为两个用户对该项目的感兴趣程度不相似。一般来说,当两个显式评分相差不大时,λ的值不宜过大,因为每个用户都具有自己的评分习惯,一些用户可能对感兴趣的项目习惯评5分,而另一些用户习惯评4分。相反,当同一个项目的两个显式评分相差较大时,λ的取值应该相对较大,以此来反映两个用户对该项目的兴趣程度不同,此项目会减弱用户之间的相似度。因为任意两个用户的兴趣相似系数最大为1,最小为0,所以λ的取值下限为0,没有上限,并且取值可以动态变化也可以固定不变。
在公式(3-1)中加入兴趣相似系数,得到公式(3-3):
公式(3-3)表明,如果uα与uβ都评价过项目oi,那么两个用户对项目oi的评分越接近,oi对判断两个用户兴趣是否相似的贡献度越大,反之,则贡献度越小。
3.2.2 用户评分代表能力
在公式(3-1)中,uα认为uβ在推荐时的重要程度随着uβ的度的增大而减小,这是因为当uβ拥有较多评分项目时,uα很可能与uβ拥有共同评分项目,但这并不表明uα与uβ兴趣更为相似,反而如果uγ拥有较少的评分项目,但是与uα有共同评分项目,那么认为uγ在uα的推荐过程中具有更高的重要度。比如,一个美食爱好者与一个美食家共同品尝过一些食品,但这并不能说明美食爱好者与美食家具有相似的口味,因为美食家品尝过的食品数量远比美食爱好者多。
随之而来的另一个问题是,如果一个美食爱好者与一个美食家共同夸赞一款食品,显然美食家的夸赞更具有说服力,因为美食家更能代表专业评鉴能力。在推荐系统中,并不能明显区分哪位用户更具有专业性,因此,在考虑用户评分代表能力时,本节做出以下假设。
假设:对于数据集中的任意项目oi,为项目oi的所有评分的均值,rαi为用户uα对oi的评分,的值越小,说明uα的评分代表能力越强。
此假设中的评分代表能力实际上是目标用户与其他用户平均偏好的接近程度。目标用户可能具有独特的偏好,但是在推荐过程中,应该认为目标用户具有普遍偏好的具有更强的评分代表能力。比如对于一部经典电影,几乎所有用户都评分5分,那么认为目标用户评分为1分的可能性较低。提高评分代表能力强的非目标用户的权重,在一定程度上也能提高推荐的准确度。
定义2:在用户-项目二分图G=(U,O,E)中,当uα∈U时,令,其中为项目oi的所有评分的均值。如果uα评价过oi,则aαi=1,否则为0,称θα为uα的评分代表能力。
在此定义中,θα的最大值为1,θα取最大值1时表明uα对所有项目的评分都与该项目的平均评分相等。在整数评分制中,θα取值为1的可能性较低,因为项目的评分均值是整数的概率较小。θα没有最小值,当θα无限小时,表明uα的偏好与普遍偏好相差极大,目标用户认为uα在推荐中的重要程度极低。
在公式(3-3)中加入用户的评分代表能力后,得到:
公式(3-4)表明,uα认为uβ在推荐时的重要程度与uβ的兴趣或评分习惯是否“正常”有关。比如,对于多部经典著作,90%的读者都评价较高,而uβ都认为不值得阅读,那么根据上述假设和定义,应该降低uβ推荐时的重要性。
3.2.3 项目评分预测
假设目标用户uα对其未评价项目oi进行项目评分预测,预测公式为:
其中,为目标用户uα的平均评分,为非目标用户uβ的平均评分,Sαβ为uα认为uβ在推荐时的重要度,如果uβ评价过oi,则aβi=1,否则aβi=0。
以下是基于二分图的多参数网络结构推荐算法(Multi-parameter Network-Based Recommendation,以下简称MNBR)的详细步骤。
输入:用户和项目的评分矩阵R,目标用户uα;
输出:目标用户uα的推荐列表。
步骤一:根据评分矩阵及用户评分代表能力的定义,计算每个用户的评分代表能力θ;
步骤二:根据用户兴趣相似系数定义,计算目标用户与非目标用户的兴趣相似系数,然后根据公式(3-4)计算用户之间的相似度S;
步骤三:根据公式(3-5),计算目标用户uα对未评分项目oi的预测评分vαi;
步骤四:将目标用户未评分项目按照预测评分降序排列,根据设定的推荐列表长度产生Top-N推荐,输出推荐列表;
步骤五:根据评价标准,计算预测误差,调节兴趣相似系数中的参数λ,获取使预测评分误差最小的兴趣相似系数中的参数λ,返回步骤二,直到λ取得最优值。