1.什么是推荐系统
推荐系统的任务就是联系用户和信息,一方面帮助用户发现对自己有价值的信息,另一方面让信息能够展现在对它感兴趣的用户面前,从而实现信息消费者和信息生产者的双赢。
2.什么是个性化推荐系统
和搜索引擎不同,个性化推荐系统需要依赖用户的行为数据,个性化推荐系统的主要作用是通过分析大量用户行为日志,给不同用户提供不同的个性化页面展示,来提高网站的点击率和转化率。
3.推荐系统的评测指标与方法
3.1 推荐系统实验方法
3.1.1 离线实验(offline experiment)
离线实验的方法一般由如下几个步骤构成:
(1) 通过日志系统获得用户行为数据,并按照一定格式生成一个标准的数据集;
(2) 将数据集按照一定的规则分成训练集和测试集;
(3) 在训练集上训练用户兴趣模型,在测试集上进行预测;
(4) 通过事先定义的离线指标评测算法在测试集上的预测结果。
![](https://img-blog.csdnimg.cn/a459042af59f4a0080bf173ec36c0aab.png)
3.1.2 用户调查(user study)
离线实验的指标和实际的商业指标存在差距,比如预测准确率和用户满意度之间就存在很大差别,高预测准确率不等于高用户满意度,在对算法会不会降低用户满意度不太有把握的情况下,上线测试具有较高的风险,所以在上线测试前一般需要做一次称为用户调查的测试。
3.1.3 在线实验(online experiment)
AB测试(AB test)AB测试是一种很常用的在线评测算法的实验方法。它通过一定的规则将用户随机分成几组, 并对不同组的用户采用不同的算法,然后通过统计不同组用户的各种不同的评测指标比较不同算 法,比如可以统计不同组用户的点击率,通过点击率比较不同算法的性能。
3.2 评测指标
3.2.1 用户满意度
3.2.2 预测准确度
3.2.2.1 评分预测:
RMSE(均方根误差):
评分预测的预测准确度一般通过均方根误差(RMSE)和平均绝对误差(MAE)计算。对于测试集中的一个用户u和物品i,令是用户u对物品i的实际评分,而
是推荐算法给出的预测评分,那么RMSE的定义为:
MAE采用绝对值计算预测误差,定义如下:
RMSE加大了对预测不准的用户物品评分的惩罚(平方项的惩罚),因而对系统的评测更加苛刻
如果评分系统是基于整数 建立的(即用户给的评分都是整数),那么对预测结果取整会降低MAE的误差.
3.2.2.2 TopN推荐:
TopN推荐的预测准确率一般通过准确率(precision)和召回率(recall)度量:是用户在训练集上推荐列表,
是用户在测试集上的推荐列表。
召回率定义如下:
准确率定义如下:
3.2.2.3 覆盖率
基尼系数:
其中表示按照物品流行度p()从小到大排序后的第j个物品,基尼系数为0-1的数越小代表流行度越平均,越大代表流行度很不均匀。
3.2.2.4 多样性
多样性描述了推荐系统中物品两两之间的不相似性。假设s(i,j)∈[0,1]定义了物品i和j之间的相似性,那么用户U的推荐列表R(u)的多样性定义如下:
推荐系统的整体多样性可以定义为所有用户推荐列表多样性的平均值: