《推荐系统手册》笔记

//2015年5月3日

0.推荐系统来源

如何解决信息过载:

搜索引擎:被动,智能程度低

广播:信息找人,需要用户自己过滤

信息过滤:

推荐系统:相比信息过滤,并不把信息收集作为重点


分类:

基于内容(可离线计算,缓解冷启动,稀疏性,解决不了多媒体,语义级别不行,对用户兴趣建模)

协同过滤(解决了多媒体;潜在需求):

混合过滤(。。)

基于模型(SVD)

网络(二部图:热传导、物质扩散)


1.冷启动问题

新用户,新商品

转向了附加信息、用户个人信息、社会标签等

但只适合特定对象和环境,拓展和移植不方便


2.稀疏性

极度影响相似度计算的效果

收集隐式评分,缓解稀疏性问题;

填充、降维来缓解稀疏性(降维但在高维、稀疏下表现不好)(填充则利用相似性填充、机器学习算法、其他信息来源等)

基于内容的过滤可以缓解稀疏性

聚类(因为比较的项目少了,对于邻居用户多了)

在稀疏度不变情况下,提高推荐质量(用户相似度传递,来解决最近邻数少)


3.可拓展性

高维情况下计算相似度并找最近邻花费很多时间

而增加服务器,只能提供吞吐率,不能解决单个推荐的时间

用SVD改善最近邻算法(在类中进行寻找)

降维方法。但在高维、稀疏下表现不好

聚类方法:对用户、商品同时聚类,co-cluster(推荐的时候只需要在簇内比较)

离线模型:生成用户偏好模型,在线使用模型根据用户实时喜好信息进行预测。但推荐效果差


4.概念漂移

对相似度计算、评分预测过程产生影响


5.Top N推荐

排序问题

意义:指出电影推荐的目的是发现用户最可能感兴趣的但还没看的;而不是在用户看完后再去预测评分

如人们对《泰坦尼克》评分肯定高


5.矩阵分解

假设:存在项和用户一个较小的特征集合能确定大部分作用。(大部分用户只对小规模特征反应)

UV分解,防止过拟合加入正则项(岭回归)、交替下降法(固定一个,另一个为凸函数)

并行化梯度下降;

实现矩阵分解算法,重点在于矩阵乘法的实现(hadoop)


6.各种SVD

隐语义模型:通过中间一个model层来对term进行语义上的关联

基本SVD:

如何补全一个稀疏矩阵:对原始矩阵扰动较小;一般认为补全后矩阵的特征值和补全之前的特征值相差不大

缺点:需要首先对原始评分矩阵进行补全

最优化算法的SVD:


潜在因子模型(LFM):

更像UV分解

是矩阵分解的拓展

LFM改进在于只沿用了SVD语义分析的思想,不需要真正对原始矩阵进行原地分解。

P,Q是直接通过训练集中观察值针对一定目标函数进行优化算法得到的。LFM是一个机器学习算法


Asymmetric-SVD:

LFM的缺点在于需要学习的实验参数较多

相对显式地对用户进行参数建模,可以通过用户历史评分对用户进行描述

不同点在于P_u与用户耦合,而x与项目耦合;而用求和(x)表示用户


SVD++

r_ui=b_ui+q_i(p_u+求和(beta_j*y_j))

两层模型

第一层:偏好模型,用于描述用户、商品自身属性

第二层:矩阵分解,用于挖掘用户兴趣与项目属性之间的交互信息


matrix factorization,Non-negative matrix factorization在处理missvalue上比SVD好

SVD,MF都抗过拟合;用Regularzied kernel MF更加好


7.协同过滤

基于最近邻:保持了local的性质(不像SVD)
1.model-base好是因为latent factor;但用户体验上有一个新奇性问题
2.相比model-based,但也可以离线计算
3.较稳定;新用户,新商品。。。


三大组件:
1.规整化:Z-Score(考虑了异常评分)等
困难:如只评价好的用户,相对低不代表不满意;评分少,效果不好
2.计算相似性:最关键
用于过滤;用于计算权重
cosin最好(item-based)
3.选择邻居:对每个user保存N个最近用户,在里面选K个进行预测

advance in CF
评价,RMSE,小提高却大大改善;因为只要top k






  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值