核心内容:
协同过滤算法:
- 包括基于用户的协同过滤(UserCF)和基于商品的协同过滤(ItemCF),这是入门推荐系统的人必看的内容,因为这些算法可以让初学者更加容易的理解推荐算法的思想。
矩阵分解算法:
- 矩阵分解算法通过引入了隐向量的概念,加强了模型处理稀疏矩阵的能力,也为后续深度学习推荐系统算法中Embedding的使用打下了基础。
FM(Factorization Machines): 该算法属于对逻辑回归(LR)算法应用在推荐系统上的一个改进,在LR模型的基础上加上了特征交叉项,该思想不仅在传统的推荐算法中继续使用过,在深度学习推荐算法中也对其进行了改进与应用。
GBDT+LR:
- 该模型仍然是对LR模型的改进,使用树模型做特征交叉,相比于FM的二阶特征交叉,树模型可以对特征进行深度的特征交叉,充分利用了特征之间的相关性。
Wide&Deep:
- 从深度学习推荐系统的演化图中可以看出Wide&Deep模型处在最中间的位置,可以看出该模型在推荐系统发展中的重要地位,此外该算法模型的思想与实现都比较的简单,非常适合初学深度学习推荐系统的学习者们去学习。
常用评测指标
用户满意度
- 比如电商场景中,用户如果购买了推荐的商品说明一定程度上他们是满意的,因此可以通过购买率度量用户的满意度,与购买率类似的点击率,用户停留时间和转化率等指标都可以用来度量用户的满意度.
预测准确度
-
评分预测
TopN推荐:精确率(precision):
分类正确的正样本个数占分类器判定为正样本的样本个数比例(这里R(u)相当于是模型判定的正样本)
召回率(recall):
分类正确的正样本个数占真正的正样本个数的比例(这里的T(u)相当于真正的正样本集合)
覆盖率
信息熵定义覆盖率: 其中p(i)是物品i的流行度除以所有物品流行度之和基尼系数定义覆盖率: 其中ij是按照物品流行度p从小到大排序的物品列表中第j个物品
多样性
新颖性
AUC曲线 :
AUC(Area Under Curve),ROC曲线下与坐标轴围成的面积
召回
召回层在推荐系统架构中的位置及作用
- 多路召回策略
- Embedding召回
- 多路召回存在的问题
虽然多路召回权衡了计算速度和召回率的问题,可以使得用于排序的候选商品更加的丰富,但是实际的多路召回仍然存在一些问题。如上图所示,对于每一路召回都会从商品集合中拉回K个商品,这里的K是一个超参数,对于K的选择一般需要通过离线评估加线上的A/B测试来确定合理的K值。除此之外,对于不同的任务具体策略的选择也是人工基于经验的选择,选择的策略之间的信息是割裂的,无法总和考虑不同策略对一个物品的影响。
基于上述问题,Embedding召回是一个综合性强且计算速度也能满足需求的召回方法。
常见的Embedding技术有哪些?
目前主流的Embedding技术主要可以分为三大类。
- text embedding
- image embedding
- graph embedding
在推荐系统领域,text embedding技术是目前使用最多的embedding技术,对于文本特征可以直接使用该技术,对于非文本的id类特征,可以先将其转化成id序列再使用text embedding的技术获取id的embedding再做召回。
常见的text Embedding的技术有:
静态向量:word2vec, fasttext, glove
动态向量:ELMO, GPT, BERT