1700498990
1700498991
1700498992
1700498993
依此类推,可以计算出其他未知的评分。
1700498994
1700498995
2.基于项目的协同过滤
1700498996
1700498997
基于项目(Item-Based)的协同过滤算法是常见的另一种算法。与User-Based协同过滤算法不一样的是,Item-Based协同过滤算法计算Item之间的相似度,从而预测用户评分。也就是说该算法可以预先计算Item之间的相似度,这样就可提高性能。Item-Based协同过滤算法是通过用户评分数据和计算的Item相似度矩阵,从而对目标Item进行预测的。
1700498998
1700498999
和User-Based协同过滤算法类似,需要先计算Item之间的相似度。并且,计算相似度的方法也可以采用皮尔逊关系系数或者余弦相似度,这里给出一种电子商务系统常用的相似度计算方法,即基于条件概率计算Item之间的相似度,计算公式如下所示:
1700499000
1700499001
1700499002
1700499003
1700499004
其中,s(i,j)表示项i和j之间的相似度;freq(i∩j)表示i和j共同出现的频率;freq(i)表示i出现的频率;freq(j)表示j出现的频率;α表示阻力因子,主要用于平衡控制流行和热门的Item,譬如电子商务中的热销商品等。
1700499005
1700499006
接下来,根据上述计算的Item之间的相似度矩阵,结合用户的评分,预测未知评分。预测公式如下所示:
1700499007
1700499008
1700499009
1700499010
1700499011
其中,pu,i表示用户u对项i的预测评分;S表示和项i相似的项集;s(i,j)表示项i和j之间的相似度;ru,j表示用户u对项j的评分。
1700499012
1700499013
3.Item-Based协同过滤实例
1700499014
1700499015
在电子商务推荐系统中,商品相似度计算有着很重要的作用。它既可用于一些特定推荐场景,譬如直接根据当前的商品,为用户推荐相似度最高的Top N商品。同时,它还可以应用于个性化推荐,从而为用户推荐商品。电子商务网站收集了大量的用户日志,譬如用户点击日志等。
1700499016
1700499017
基于Item-Based协同过滤算法,笔者提出了一种增量式商品相似度的计算解决方案。该算法计算流程如图3-6所示。
1700499018
1700499019
1700499020
1700499021
1700499022
图3-6 增量式商品相似度计算流程图
1700499023
1700499024
其中,商品关系i表示第i天的商品关系数据集。
1700499025
1700499026
具体计算步骤如下。
1700499027
1700499028
1)获取当天用户点击行为数据,过滤掉一些噪声数据,譬如商品信息缺失等。从而得到用户会话sessionID、商品ID(商品标识)、浏览时间等信息,如表3-7所示。
1700499029
1700499030
1700499031
1700499032
1700499033
由于A4的浏览时间和A1、A2、A3相差较大,因此将其过滤掉,这里定义为1800秒,如表3-8所示。
1700499034
1700499035
1700499036
1700499037
1700499038
2)首先,计算任意两种商品之间的共同点击次数。然后,根据基于条件概率的商品相似度计算方法来计算商品的相似度。商品相似度公式如下。
1700499039
[
上一页 ]
[ :1.70049899e+09 ]
[
下一页 ]