显示反馈
Explicit Feedback是基于用户行为的。在搜索结果列表,用户判断文档是否相关。搜索引擎再根据反馈的信息调整搜索结果。
优点:反馈的结果是准确的。
缺点:用户需要做额外的工作
隐式反馈
隐式反馈是基于用户点击行为的反馈。在搜索结果列表,用户点击的文档认为是相关的,用户跳过的文档认为是不相关文档。依据这些再调整搜索引擎。
优点:无需用户参与,反馈基本可靠。
基于用户的协同过滤
将购买比较相似的其他用户买过的商品 推荐给用户
基于用户的协同过滤存在的问题:
-
必须要有一定的数据积累(冷启动问题)。对于新网站或数据量较少的网站,只能选用基于物品的协同过滤算法
-
一个不错的商品 但是没有人买 那么永远得不到推荐
-
评分矩阵比较稀疏
基础解决方案:
相似度计算最好使用皮尔逊相似度
考虑共同打分物品的数目,如乘上min(n,N)/N (n:共同打分数N:指定阈值)
对打分进行归一化处理
设置一个相似度阈值
基于用户的协同过滤不流行原因
稀疏问题
数百万的用户计算,量非常大
并且人是善变的
基于物品的协同过滤
通过计算不同用户对不同物品的评分获得物品间的关系。基于物品间的关系对用户进行相似物品的推荐。这里的评分代表用户对商品的态度和偏好。简单来说就是如果用户A同时购买了商品1和商品2,那么说明商品1和商品2的相关度较高。当用户B也购买了商品1时,可以推断他也有购买商品2的需求
基于物品的协同过滤主要优势
计算性能高,通常用户数量远大于物品数量
可预先计算保留,物品并不善变
UserCF与ItemCF的比较
常见的几种评价方式
其中皮尔逊相关系数,是x与y的协方差与x与y的标准差之积的比值。协方差表示的是x与y的相关性 取值在[-1,1]之间
归一化处理
https://blog.csdn.net/likeyou1314918273/article/details/89633033
交叉熵损失函数
把KL散度的公式拆开:
前者H (p(x))表示信息熵,后者即为交叉熵,KL散度 = 交叉熵 - 信息熵
化简后交叉熵的公式为
交叉熵能够衡量同一个随机变量中的两个不同概率分布的差异程度,在机器学习中就表示为真实概率分布与预测概率分布之间的差异。交叉熵的值越小,模型预测效果就越好。
交叉熵在分类问题中常常与softmax函数是标配,softmax将输出的结果进行处理,使其多个分类的预测值和为1,再通过交叉熵来计算损失。
的值越小,模型预测效果就越好。
交叉熵在分类问题中常常与softmax函数是标配,softmax将输出的结果进行处理,使其多个分类的预测值和为1,再通过交叉熵来计算损失。