推荐系统知识体系
推荐系统基础知识体系结构:
1.为什么使用推荐系统
随着互联网行业的发展,信息量也在以几何倍数式爆发增长。垃圾信息越来越多,导致用户获取有价值信息的成本大大增加。
由于信息的爆炸式增长,对信息获取的有效性,针对性的需求也就自然出现了。面对信息过载,推荐系统应运而生。
- 促进厂商商品销售,帮助用户找到想要的商品
- 图书推荐;QQ好友推荐;优酷,爱奇艺的视频推荐;豆瓣的音乐推荐;大从点评的餐饮推荐;世纪佳缘的相亲推荐;智联招聘的职业推荐。
- 亚马逊的推荐系统深入到网站的各类商品,为亚马逊带来了至少30%的销售额。
推荐系统利用用户数据来发现规律
2.推荐系统基本原理
3.Hadoop框架Mahout的推荐系统整体架构
4.推荐系统中的算法
- 基于用户
- 基于内容
- Slope One
- 协同过滤
- 关联规则
(1)基于用户的推荐技术
(2)基于内容或物品的推荐技术
如下图所示:
2.1基于内容算法(content based personality)简介:
该算法根据用户过去喜欢的物品,给用户推荐与他过去喜欢物品的相似物品。基于内容算法
假设用户喜欢他过去喜欢物品的相似物品。 比如在给用户推荐小说时,如果用户之前读过《神雕
侠侣射雕英雄傳》和《笑傲江湖》,基于内容的个性化算法可能会给用户推荐《天龙八部》。
2.2基于内容推荐的例子:
2.3物品属性
2.4物品属性的向量模型
2.5 构建向量模型
2.6 用户属性User Profiles
2.7基于内容其他推荐方式
打标签:运动商品类,快速消费品类。粒度划分越细,推荐结果就越精确。
商品名称与关键字:通过从商品的描述信息中提取关键字,利用关键字的相似来作推荐。
同商家不同商品:用户购买了商店的一件商品,就推荐这个商店的其他热销商品。
经验:一个经典的例子就是商店在啤酒架旁边摆上纸尿布。在网上购买啤酒的人,也可以推荐纸尿布?
2.8 基于内容的推荐优缺点分析
(3)slope one算法
3.1步骤:
3.2 例子分析
3.3加权算法
上图用户对物品的评分矩阵。现预测用户user_3对item_2的评分。
3.4slope one步骤数学表述
3.5算法实现
原始数据:
3.6Slope One适用场景与优缺点
(4)协同过滤
协同:指协调两个或者两个以上的不同资源或者个体,协同一致地完成某一目标的过程或能力。
原理:协同过滤技术是基于用户对项目的历史偏好,发掘项目之间的相关性,或者是发掘用户间的相关性,根据这些相关性进行推荐。
4.1 基于用户的协同过滤推荐技术
4.2 基于物品的协同过滤推荐技术(评分)
由此得到如下图:
4.3 基于用户的协同过滤算法
步骤:
1、找到和目标用户兴趣相似的用户集合。
2、找到这个集合中的用户喜欢的,且目标用户没有听说过的物品推荐给目标用户。
物品—用户倒排表
构建用户—用户相似矩阵
4.4 推荐物品
推荐物品