Post

深度学习推荐系统

深度学习推荐系统

深度学习推荐系统

作者:未知作者 笔记数:28 条

2.3 矩阵分解算法——协同过滤的进化

k的取值越大,隐向量的表达能力越强,但泛化程度相应降低

权重的减小自然会让模型的输出波动更小,从而达到让模型更稳定的目的。

在了解了矩阵分解的原理之后,就可以更清楚地解释为什么矩阵分解相较协同过滤有更强的泛化能力

而隐向量的生成过程其实是对共现矩阵进行全局拟合的过程,因此隐向量其实是利用全局信息生成的,有更强的泛化能力

其中μ是全局偏差常数, bi是物品偏差系数,可使用物品i收到的所有评分的均值, bu是用户偏差系数,可使用用户u给出的所有评分的均值

矩阵分解同样不方便加入用户、物品和上下文相关的特征,这使得矩阵分解丧失了利用很多有效信息的机会,同时在缺乏用户历史行为时,无法进行有效的推荐。

2.4 逻辑回归——融合多种特征的推荐模型

[插图]

梯度下降法是一个一阶最优化算法,

逻辑回归作为广义线性模型的一种,它的假设是因变量y服从伯努利分布

线性回归作为广义线性模型的另一个特例,其假设是因变量y服从高斯分布,这明显不是点击这类二分类问题的数学假设。

特征交叉、特征筛选

2.5 从FM到FFM——自动特征交叉的解决方案

该模型对所有特征进行了两两交叉(特征[插图]),并对所有的特征组合赋予权重[插图]。

2.7 LS-PLM——阿里巴巴曾经的主流推荐模型

非线性函数多个极值点很常见吧

MoE GMM

那么,注意力机制又是在哪里应用的呢?其实是在隐层和输出层之间,神经元之间的权重是由分片函数得出的注意力得分来确定的。也就是说,样本属于哪个分片的概率就是其注意力得分。

3.7 FM与深度学习模型的结合

这是理解NFM模型的另一个角度。

3.7.4 基于FM的深度学习模型的优点和局限性

本节介绍了FNN、DeepFM、NFM三个结合FM思路的深度学习模型。它们的特点都是在经典多层神经网络的基础上加入有针对性的特征交叉操作,让模型具备更强的非线性表达能力。

从这之后,越来越多的深度学习推荐模型开始探索更多“结构”上的尝试,诸如注意力机制、序列模型、强化学习等在其他领域大放异彩的模型结构也逐渐进入推荐系统领域,并且在推荐模型的效果提升上成果显著。

7.2 直接评估推荐序列的离线指标

但无论是准确率、RMSE、还是LogLoss,都更多地将推荐模型视作类似于点击率预估的预测模型,而不是一个排序模型

直接评估推荐序列的指标

在某一阈值下,模型将大于该阈值的结果判定为正样本,将小于该阈值的结果判定为负样本时,排序结果对应的召回率和精确率

只用一个点的精确率和召回率是不能全面衡量模型性能的,只有通过P-R曲线的整体表现,才能对模型进行更全面的评估

ROC曲线的横坐标为False Positive Rate(FPR,假阳性率);纵坐标为True Positive Rate(TPR,真阳性率)

其实,还有一种更直观的绘制ROC 曲线的方法。首先,根据样本标签统计出正负样本的数量,假设正样本数量为P,负样本数量为N;接下来,把横轴的刻度间隔设置为1/N,纵轴的刻度间隔设置为1/P;再根据模型输出的预测概率对样本进行排序(从高到低);依次遍历样本,同时从零点开始绘制ROC曲线,每遇到一个正样本就沿纵轴方向绘制一个刻度间隔的曲线,每遇到一个负样本就沿横轴方向绘制一个刻度间隔的曲线,直到遍历完所有样本,曲线最终停在(1,1)这个点,整个ROC曲线绘制完成。

那么什么是mAP呢?如果推荐系统对测试集中的每个用户都进行样本排序,那么每个用户都会计算出一个AP值,再对所有用户的AP值进行平均,就得到了mAP

mAP的计算方法和P-R曲线、ROC曲线的计算方法完全不同,因为mAP需要对每个用户的样本进行分用户排序,而P-R曲线和ROC曲线均是对全量测试样本进行排序

7.3 更接近线上环境的离线评估方法——Replay

仿真式离线评估方法——Replay

7.4 A/B测试与线上评估指标

(1)层与层之间的流量“正交”。(2)同层之间的流量“互斥”。

7.5 快速线上评估方法——Interleaving

(1)消除了A/B组测试者自身属性分布不均的问题。(2)通过给予每个人相同的权重,降低了重度消费者对结果的过多影响。

This post is licensed under CC BY 4.0 by the author.