1. 参考书籍
- 《推荐系统实战》项亮
- 《推荐系统》Dietmar Jannach
- 《推荐系统:技术、评估及高效算法》Francesco Ricci
2. 推荐算法
- 按数据分:
- 协同过滤
- 内容过滤
- 社会化过滤
- 按算法分:
- 基于领域的算法
- 基于图的算法
- 基于矩阵分解或概率模型
3. 推荐系统的评测
完整推荐系统的参与方一般为:用户、物品提供者、提供推荐系统的网站,一个好的推荐系统是三方共赢的系统。
注意:准确预测不一定代表好的预测,因为可能用户本身就会买那一样,这样你的推荐并不会带来价值,所以,好的推荐系统不仅能准确预测用户行为,而且可帮助用户发现那些他们可能会感兴趣,但却不那么容易发现的东西。
指标:准确度、覆盖度、新颖度、惊喜度、信任度、透明度
评测推荐效果实验方法:
- 离线实验:将数据集分为训练和测试,然后通过预先定义的指标进行比较
- 用户调查:询问用户
- 在线实验:将用组分为几组,不同组采用不同算法,线上测试。
评测指标:
- 用户满意度:对用户调查与反馈
预测准确度
评分预测
- RMSE(均方根误差)
RMSE=∑u,i∈T(rui−r^ui)2−−−−−−−−−−−−−−−√|T| MAE(平均约对误差)
MAE=∑u,i∈T|rui−r^ui||T|rui 为用户 u 对物品
i 的实际评分, r^ui 为推荐算法给出的预测评分, |T| 为所有用户数与物品的迪卡尔积的模,即数据条数。
- RMSE(均方根误差)
TopN推荐
- 准确率
Precision=∑u∈U|R(u)∩T(u)|∑u∈U|R(u)| 召回率
Recall=∑u∈U|R(u)∩T(u)|∑u∈U|T(u)|R(u) 为基于训练推荐列表, T(u) 为用户在测试集上的行为,准确率与召回率呈反相关性,所以在判断算法性能时会分析他们的曲线,根据具体场景再评价选取。
- 准确率
覆盖率
- 多样性
- 新颖性
- 惊喜度
- 信任度
- 实时性
- 健壮性:防止作弊行为,比如搜索引擎的作弊与反作弊,注入噪声数据,影响推荐结果。
离线实验一般优化目标为:
最大化预测准确度
使得 覆盖率>A,多样性>B, 新颖性>C
评测维度:
- 用户维度
- 物品维度
- 时间维度