推荐系统学习笔记

本文介绍了推荐系统从传统模型到深度学习模型的发展历程,并详细探讨了协同过滤、矩阵分解、逻辑回归等经典方法及其优缺点。同时,针对推荐系统的业务关键问题如冷启动、数据稀疏等进行了讨论。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、传统模型演进史

1. 协同过滤(CF)

利用user-item交互矩阵(m x n维, 一般用户数m远大于商品数n),生成user向量和item向量。

  • UserCF
    • 通过当前用户topk相似用户对待预测商品的评分加权平均得到,具有社交性、适合热点追踪。
    • 需要维护m2m^2m2级别的用户相似度矩阵。
    • 用户的购买历史数据大多稀疏,因此用户相似度计算不可靠。
  • ItemCF:
    • 通过当前用户最喜爱topk的商品,搜索其他相似商品,生成推荐列表。具有明显的兴趣类别特征。

2. 矩阵分解(MF)

业务数据为交互矩阵Dm×nD_{m\times n}Dm×n。注意消除打分偏差(用户给分偏好、评分体系均值等)

  • 特征值分解:仅用于方阵,无法用于推荐
  • 奇异值分解:要求原始矩阵稠密、计算复杂度高
  • 梯度下降:目标函数为使user向量pu\boldsymbol p_upu和item向量qu\boldsymbol q_uqu点积尽可能逼近对应的交互评分ruir_{ui}rui
    minq,p∑(rui−qi⋅pu)+λ(∣∣qi∣∣+∣∣pi∣∣)2min_{\boldsymbol{q,p}} \sum(r_{ui} - \boldsymbol q_i\cdot \boldsymbol p_u) + \lambda(||\boldsymbol q_i|| + ||\boldsymbol p_i||)^2minq,p(ruiqipu)+λ(qi+pi)2

3. 逻辑回归(LR)

  • 步骤:

    1. 将用户特征转换成数值向量
    2. 确定优化目标(点击率、购买率)
    3. 训练、预测排序
  • 公式:
    f(x)=11+e−(w⋅x+b)f(\boldsymbol x)=\frac{1}{1+e^{-(\boldsymbol{w\cdot x} + b)}}f(x)=1+e(wx+b)1
    arg max⁡w(f(x))y(1−f(x))1−y\argmax_{\boldsymbol w}(f(\boldsymbol x))^y(1-f(\boldsymbol x))^{1-y}wargmax(f(x))y(1f(x))1y

  • 缺点:无法进行自动特征交叉、筛选等操作。存在辛普森悖论

4. 特征交叉模型(POLY2、FM、FFM)

  • POLY2
    POLY2(w,x)=∑j1=1n∑j2=j1+1nwh(j1,j2)x1x2POLY2(\pmb w, \pmb{x})=\sum^n_{j_1=1}\sum^n_{j_2=j_1+1}\pmb{w}_h(j_1,j_2)\pmb{x_1}\pmb{x_2}POLY2(www,xxx)=j1=1nj2=j1+1nwwwh(j1,j2)x1x1x1x2x2x2
  • FM
  • FFM

5. 集成学习模型(GBDT+LR)

6. 分段线性模型(LS-PLM)

通过聚类分片,在不同分段类使用LR, 实现整体上的非线性

二、深度学习模型演进史

三、业务关键问题

2.1 冷启动

2.2 数据稀疏

2.3

QA

  1. POLY2算法中,两个特征交叉为什么可以直接用乘法?与后深度学习中的各类向量乘法有什么关系?
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值