协同过滤算法学习笔记

原创 2018年04月16日 11:07:03

(通过观看慕课网Hadoop进阶总结出来的笔记:http://www.imooc.com/learn/890

一. 余弦相似度



其他的相似度种类

1.切比雪夫距离   2.欧式距离   3.皮尔森系数   4.曼哈顿距离    5.杰卡德距离

二. 基于物品的协同过滤算法ItemCF

算法思想:给用户推荐那些和他们之前喜欢的物品相似的物品

1.用户行为与权重

例子:

用户:A,B,C

商品:1,2,3,4,5,6

行为:点击1分,搜索3分,收藏5分,付款10分

构建用户行为列表:

用户      物品        行为

A           1            点击

C            3            收藏

B            2            搜索

B            5            搜索

B            6            收藏

A            2            付款

C            3            付款

C            4            收藏

C            1            收藏

A            1            点击

A            6            收藏

A            4            搜索

每一行表示,某个用户对某个商品产生过一次行为。

2.算法实现步骤

step1:根据用户行为列表计算用户,物品的评分矩阵

   

step2:计算物品与物品的相似度矩阵

比如:


构造成两个向量:(2,0,5)与(10,3,0)


所以物品1与物品2的相似度为0.36,其他同理,最终得出物品与物品的相似度矩阵


step3:相似度矩阵*评分矩阵=推荐列表

(注意:因为矩阵的相乘区分左右,所以相似度矩阵与评分矩阵的顺序不能变


最终将推荐矩阵与评分矩阵相比较,将用户看过的电影置为0。


最终选取值最大的推荐给用户

A-5      B-4      C-2

三. 基于用户的协同过滤算法UserCF

算法思想:给用户推荐和他兴趣相似的其他用户喜欢的物品

例子:数据样本与基于物品的一样

算法实现步骤

step1:根据用户行为列表计算用户,物品的评分矩阵


基于物品的CF与基于用户的CF的区别是:

基于物品的CF的行号是物品,列号是用户

基于用户的CF的行号是用户,列号是物品

step2:计算用户与用户的相似度矩阵


step3:相似度矩阵*评分矩阵=推荐列表



将用户产生过行为的物品的分值置0,得出最终的推荐列表


四. 基于内容的协同过滤算

算法思想:给用户推荐和他之前喜欢的物品在内容上相似的其他物品。

对物品进行特征建模Item Profile


1表示电影具有某特征,0表示电影不具有某特征

算法实现步骤

step1:构建Item Profile矩阵


step2:构建Item User评分矩阵


step3:Item User*Item Profile=User Profile



最后得出的矩阵表示用户对某种标签的感兴趣程度。

可以看出U1用户对特征(4)和(7)最感兴趣,其权重均为6。

step4:对Item Profile和User Profile求余弦相似度










版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/wydyd110/article/details/79957986

推荐系统:协同过滤算法简介

“探索推荐引擎内部的秘密”系列将带领读者从浅入深的学习探索推荐引擎的机制,实现方法,其中还涉及一些基本的优化方法,例如聚类和分类的应用。同时在理论讲解的基础上,还会结合 Apache Mahout 介...
  • suibianshen2012
  • suibianshen2012
  • 2016-04-28 15:13:35
  • 1183

协同过滤算实现

  • 2017年07月12日 09:55
  • 14KB
  • 下载

协同过滤算法的基本原理与实现

协同过滤算法的基本原理与实现
  • jingyi130705008
  • jingyi130705008
  • 2018-01-09 16:38:33
  • 354

[机器学习]推荐系统之协同过滤算法

在现今的推荐技术和算法中,最被大家广泛认可和采用的就是基于协同过滤的推荐方法。本文将带你深入了解协同过滤的秘密。下面直接进入正题.1. 什么是推荐算法推荐算法最早在1992年就提出来了,但是火起来实际...
  • BaiHuaXiu123
  • BaiHuaXiu123
  • 2017-03-15 22:04:17
  • 2998

机器学习----推荐系统之协同过滤算法

机器学习中的推荐系统,协同过滤算法进行电影推荐。
  • u011470552
  • u011470552
  • 2017-02-04 17:07:26
  • 1582

ItemCF与UserCF协同过滤算法简单入门和一般过程

这是一篇简单的协同过滤算法简介协同过滤算法,对这个名词稍有了解就知道其应用范围之广,常见的淘宝、京东上的商品推荐,再比如网易云音乐的每日新歌推荐,都采用了基于协同过滤的思想。这个算法神奇之处和缺点本篇...
  • laotumingke
  • laotumingke
  • 2017-09-24 14:25:40
  • 1066

协同过滤算法的实现

  • 2016年05月23日 21:20
  • 7KB
  • 下载

机器学习入门--协同过滤算法[推荐算法]

一、推荐算法前言        大数据时代产生了海量的数据,数据对企业来说是一种隐形的资产,里面蕴含了丰富的价值。但是,大数据体量之大、种类之繁以及产生速率之快,海量的数据并不都是有价值的,用户从海...
  • u012995888
  • u012995888
  • 2018-01-16 18:30:50
  • 231

基于物品的协同过滤算法:理论说明,代码实现及应用

基于物品的协同过滤算法:理论说明,代码实现及应用标签: 爬虫 Python主要参考资料: 项亮. 推荐系统实践[M]. 北京:人民邮电出版社, 2012.转载请注明出处:sss0.一些碎碎念从4月中...
  • xuelabizp
  • xuelabizp
  • 2016-07-04 20:25:50
  • 9400
收藏助手
不良信息举报
您举报文章:协同过滤算法学习笔记
举报原因:
原因补充:

(最多只允许输入30个字)