推荐系统第2周笔记

来源:互联网 发布:arm c语言编程实例 编辑:程序博客网 时间:2024/05/18 03:52

分类:基于应用领域分类

 基于设计思想

 基于使用何种数据

协同过滤的基本思想:

协同过滤一般是在海量的用户中发掘出一小部分和你品位比较类似的,在协同过滤中,这些用户成为邻居,然后根据他们喜欢的其它东西组织成一个排序的目录作为推荐给你。

实现协同过滤的步骤:

收集用户的偏好

找到相似的用户和物品

计算推荐

收集用户偏好的方法:

评分、投票、转发、保存书签、标记书    签、评论、点击流、东西停留时间、购买

相似度(基于用户的CF和基于物品的CF):

基于距离的计算相似度(欧几里得空间)、基于相关系数计算相似度(皮尔逊相关系数)、基于夹角余弦计算相似度、基于Tanimoto系数计算相似度

把数据看成空间中的向量(降噪,归一化)

邻居(用户、物品)的圈定:

固定数量的邻居:K-neighborhoods

基于相似度门槛的邻居:Threshold-based neighborhoods

 

推荐算法:

基于用户的协同过滤算法UserCF(社交网络)

基于物品的协同过滤算法ItemCF(电子商务采用最广泛)

基于物品的协同过滤算法ItemCF实现:

分为2个步骤:

1、计算物品之间的相似度

2、根据物品的相似度和用户的历史行为给用户生成推荐列表

同现度:同一个用户对不同的两个物品都进行评价

Slope One:把用户之间的评分看成是简单的线性关系

Mahout推荐的算法:


0 0