基于Apriori算法的购物网站商品推荐系统
目 录
一、 算法内容 3
Step 1 收集用户偏好 3
Step 2 对数据进行预处理 3
Step 3 计算相似度 4
Step 4 找邻居 5
Step 5 计算推荐 6
二、 预期结果 6
三、 对比和讨论 7
一、 算法内容
Step 1 收集用户偏好
用户行为
|
变量
|
取值范围
|
说明
|
评分
|
X1
|
{1,2,3,4,5}
|
为商品评分,分值选择为1-5的整数
|
收藏
|
X2
|
{0,1}
|
如果用户收藏了该商品,则取值为1;否则为0
|
加入购物车
|
X3
|
{0,1}
|
如果用户将该商品加入购物车,则取值为1;否则为0
|
购买
|
X4
|
{0,1}
|
如果用户购买了该商品,则取值为1;否则为0
|
查看次数
|
X5
|
N
|
用户的点击查看该商品的次数
|
Step 2 对数据进行预处理
Section A min-max归一化处理
² 对评分进行归一化处理
(为归一化后的取值,为原值)
² 对查看次数进行归一化处理
(为归一化后的取值,为原值)
Section B 根据不同行为对用户喜好的反映程度,对进行加权处理,得到最终用户偏好权值:
注:为经科学分析后得出的权值
Section C 得到用户偏好的二维矩阵,纵向为用户列表,横向为物品列表,值是用户对物品的偏好,取值范围为 [0,1] 的浮点数值
Step 3 计算相似度
假设用户数为,商品数为,用户偏好的二维矩阵为:
Section A 计算不同用户间的Pearson相关系数
用户偏好矩阵中的行向量表示用户,通过计算行向量间的Pearson相关系数,衡量用户间的相似度。
任意两用户间的相似度为:
()
由此可得到用户相似度矩阵为:
Section B 计算不同商品间的Pearson相关系数
用户偏好矩阵中的列向量表示商品,通过计算列向量间的Pearson相关系数,衡量商品间的关联度。
任意两商品间的关联度为:
()
由此可得到商品关联度矩阵为: