文章目录
- 1. 数据分类
- 2. 显性反馈数据模型评价方法:
- 3. 显式反馈转换为隐式反馈
- 4. 隐式反馈的作用
- 5. 参考资料
本文来介绍一下显示反馈与隐式反馈,作为我学习推荐系统的笔记以便日后忘记了可以回过头来温习。
1. 数据分类
-
显式反馈是指:用户明确喜欢和不喜欢的物品。
-
隐式反馈是指:用户对于浏览过的物品没有明确表示喜欢或厌恶。这种类型数据只能认为全部是正反馈也即喜欢的物品。
特征:
显式反馈 (如评分、评级) 或单一的隐式反馈 (如浏览、点击、加入购物车)
-
隐式反馈 (implicit feedback):
- CTR (Wangchong)
- CDL (Wang Hao)
- Neural Collaborative Filtering (Xiangnan He)
-
显式反馈 (explicit feedback)
- ConvMF
2. 显性反馈数据模型评价方法:
模型判定推荐的 | 模型判定不被推荐的 | |
---|---|---|
测试集中应当被推荐的 | true positives(TP 正类判定为正类) | false positives(FP 负类判定为正类) |
测试集中不应被推荐的 | false negatives(FN 正类判定为负类) | true negatives(TN 负类判定为负类) |
根据TP ,FP , FN ,TN就可以计算精确率和召回率。再以精确率和召回率计算其他评价方法,精确率和召回率计算参考:
常用推荐系统评测指标
3. 显式反馈转换为隐式反馈
转换的方式主要有以下几种:
以 movielens 数据集为例,电影评分范围为:
1,2,3,4,5(observed) and missing value(unobserved)
(1) rating>=4 : r = 1(正样本,observeed, positive sample) otherwise r = 0(负样本,unobserved, negative sample)
(2) rating不为空 : r = 1(正样本,observeed, positive sample) otherwise r = 0(负样本,unobserved, negative sample),这种方式将所有缺失项都看成是负样本。
(3) rating不为空 : r = 1(正样本,observeed, positive sample) otherwise 通过负采样 r = 0(负样本,unobserved, negative sample),这种方式对缺失项都进行采样,选取一部分作为负样本,如论文Neural Collaborative Filtering (Xiangnan He)。
特别注意:
隐式反馈中,r = 1并不代表用户喜欢该物品(电影),因为不是每个打分都是5分,而且打分因人而异,有的用户比较宽容,打分偏高,有的用户比较严格,打分偏低;r=0也不意味着用户不喜欢该物品,也许用户喜欢该物品只是没有发现该物品而已。r的值仅仅代表用户对该物品有无评分操作,除此之外,别无他意。
4. 隐式反馈的作用
- 隐式反馈能显著提高推荐系统的预测准确率:
换句话说,用户通过选择表达自己的意见并投票(高或低)来隐式地告诉我们她的偏好。这将评级矩阵简化为二进制矩阵,其中“1”表示“评级”,“0”表示“未评级”。诚然,这种二进制数据不像其他隐式反馈源那样庞大和独立。尽管如此,我们发现结合这种隐式数据-它固有地存在于每个基于评级的推荐系统中-显着提高了预测精度。
5. 参考资料
-
推荐系统/分类问题正确率计算和比较方法(显性反馈数据和隐性反馈数据)
-
隐式/显式反馈
-
显式反馈和隐式反馈
-
显式反馈和隐式反馈
-
常用推荐系统评测指标