推荐优化理论与实践

1.召回

兴趣召回

多兴趣如何解决?
爱奇艺短视频推荐:多兴趣召回篇
双塔模型最后一层为什么都进行L2 Norm?

2.排序

多目标

20220922推荐小记——推荐系统中如何对时长、完播等目标做多目标建模
多目标排序模型在腾讯QQ看点推荐中的应用实践
Weighted LR YouTube 的时长预估模型
大厂技术实现 | 多目标优化及应用(含代码实现)
知乎:深度学习的多个loss如何平衡?
推荐系统多目标优化专题(2)—融合公式设计思路
大厂技术实现 | 多目标优化及应用

多场景

多场景建模
多场景融合模型

排序优化实践

推荐系统系列之排序模型的调优实践
推荐系统排序优化迭代的一些经验
微信「看一看」 推荐排序技术揭秘
汽车之家推荐系统
大厂技术实现 | 爱奇艺短视频推荐业务中的多目标优化实践 @推荐与计算广告系列
王冬月:京东推荐算法精排技术实践
陈胜:美团搜索排序实践
深度排序模型在淘宝直播的演进与应用
推荐系统(十一) 2021-2022年工业界推荐算法实践经验汇总
推荐系统(十五) 大厂实践经验学习:排序模型
演讲:知乎如何使用 DNN 优化首页排序
微博推荐实时大模型的技术演进

3.特征

3.1特征工程

推荐系统(十) 「知识梳理」CTR模型中连续特征加入方法

3.2特征冗余

SENet

FiBiNet(FiBiNet解读)模型引入的SENet网络,学习每个特征权重,然后特征权重与embedding作Vector-Wise赋权,参与后续交叉计算,起到一个门控作用,会弱化不重要特征,强化重要特征。其核心逻辑是Squeeze&Excitation&Re-weight。FiBiNet还包含Bilinear交叉层,特征交叉那里再介绍。

Embedding层Gate

对于某个特征field,embedding向量作为输入,通过一层FC,得到该特征fields权重,计算方式分为两种:

  • Vector-Wise:embeding向量通过一层FC,输出节点为1,得到特征field权重值,权重值与原始embedding向量进行相乘。
  • Bit-Wise:embeding向量通过一层FC,输出节点为个数与embedding维度相同,得到特征field权重向量,权重向量与原始embedding向量进行Hadamard积。

3.3特征交叉

人工交叉统计特征

FM

FM(因子分解机),用于解决稀疏场景下特征组合的问题。FM原理简单,计算高效,是首个在特征交叉中引入隐向量的模型,并为后续针对特征交叉的模型结构优化提供了一个强基础。
在FM之前,LR通过人工交叉特征,而如果要将所有特征两两交叉,即如下公式:
y ( x ) = w 0 + ∑ i = 1 n w i x i + ∑ i = 1 n ∑ j = 1 n w i j x i x j y(x)=w_0+\sum_{i=1}^nw_ix_i+\sum_{i=1}^n\sum_{j=1}^nw_{ij}x_ix_j y(x)=w0+i=1nwixi+i=1nj=1nwijxixj

  • 输入特征x的维度n非常大,稀疏性强。对所有特征组合进行建模,极大地增加了LR模型的参数量。
  • 另一方面,特征组合加强了稀疏性,在数据中原本不常出现的特征,经过组合后,组合特征项的出现频率则更少。对于在训练数据中不常见甚至未出现过的特征组合,模型将无法学好对应的参数 w i j w_{ij} wij ,容易导致模型学习不充分效果差。

模型学习所有二阶交叉特征的核心是学习对应的参数 w i j w_{ij} wij ,而FM提出另一种思路,对特征的每个维度引入一个向量来表示,特征交叉项的参数 w i j w_{ij} wij 则由两个对应特征的向量计算内积得到。
y ( x ) = w 0 + ∑ i = 1 n w i x i + ∑ i = 1 n ∑ j = i + 1 n < v i , v j > x i x j y(x)=w_0+\sum_{i=1}^nw_ix_i+\sum_{i=1}^n\sum_{j=i+1}^n<v_i,v_j>x_ix_j y(x)=w0+i=1nwixi+i=1nj=i+1n<vi,vj>xixj

  • 解决了特征交叉的稀疏问题
  • 解决了参数量问题 O ( n 2 ) O(n^2) O(n2)-> O ( k n ) O(kn) O(kn),n是x的维度,k是向量的维度。
  • 提高了模型的泛化性

计算优化,将计算量由 O ( k n 2 ) O(kn^2) O(kn2)-> O ( k n ) O(kn) O(kn)
y ( x ) = ∑ i = 1 n ∑ j = i + 1 n v i T v j x i x j = 1 2 ∑ i = 1 n ∑ j = 1 n v i T v j x i x j − 1 2 ∑ i = 1 n v i T v i x i x i = 1 2 ( ∑ i = 1 n ∑ j = 1 n ∑ f = 1 k v i , f v j , f x i x j − ∑ j = 1 n ∑ f = 1 k v i , f v i , f x i x i ) = 1 2 ∑ f = 1 k ( ( ∑ i = 1 n v i , f x i ) ( ∑ i = 1 n v i , f x i ) − ∑ i = 1 n v i , f 2 x i 2 ) = 1 2 ∑ f = 1 k ( ( ∑ i = 1 n v i , f x i ) 2 − ∑ i = 1 n v i , f 2 x i 2 ) ) y(x)=\sum_{i=1}^n\sum_{j=i+1}^nv_i^Tv_jx_ix_j \\=\frac{1}{2}\sum_{i=1}^n\sum_{j=1}^nv_i^Tv_jx_ix_j-\frac{1}{2}\sum_{i=1}^nv_i^Tv_ix_ix_i\\ =\frac{1}{2}(\sum_{i=1}^n\sum_{j=1}^n\sum_{f=1}^kv_{i,f}v_{j,f}x_ix_j-\sum_{j=1}^n\sum_{f=1}^kv_{i,f}v_{i,f}x_ix_i)\\ =\frac{1}{2}\sum_{f=1}^k((\sum_{i=1}^nv_{i,f}x_i)(\sum_{i=1}^nv_{i,f}x_i)-\sum_{i=1}^nv_{i,f}^2x_i^2)\\ =\frac{1}{2}\sum_{f=1}^k((\sum_{i=1}^nv_{i,f}x_i)^2-\sum_{i=1}^nv_{i,f}^2x_i^2)) y(x)=i=1nj=i+1nviTvjxixj=21i=1nj=1nviTvjxixj21i=1nviTvixixi=21(i=1nj=1nf=1kvi,fvj,fxixjj=1nf=1kvi,fvi,fxixi)=21f=1k((i=1nvi,fxi)(i=1nvi,fxi)i=1nvi,f2xi2)=21f=1k((i=1nvi,fxi)2i=1nvi,f2xi2))

FFM(Field Factorization Machine)是在FM的基础上引入了“场(Field)”的概念而形成的新模型

DCN Cross网络

DCN使用Cross网络替代了原来简单的LR网络,增加了特征之间的交互力度,使用多层交叉层对输入特征进行交叉。第 l l l层和第l + 1 +1 +1层之间的关系如下所示。
x l + 1 = x 0 x l T w l + b l + x l x_{l+1}=x_0x_l^Tw_l+b_l+x_l xl+1=x0xlTwl+bl+xl
在这里插入图片描述

DCNv2则是将向量 w w w换为矩阵 W W W,考虑计算量将 W W W矩阵低秩性,将其分解通过两个小矩阵代替,同时也可以利用MoE建模低维空间的交叉特征。
【总结】推荐系统——精排篇【2】WDL/DCN/DCN-v2

AutoInt

AutoInt(Automatic Feature Interaction Learning viaSelf-Attentive Neural Networks)将transformer中的multi-head self attention和resnet引入CTR预估模型。实现了自动特征交叉学习以提升CTR预测任务的精度。

4.偏差

如何在工业界优化点击率预估:(八)Debias&Loss&校准
推荐系统中的偏差问题

5.在线学习

阿里在线学习分享

6.关键问题

推荐系统,离线 AUC 涨了,线上 CTR 等效果没涨,可能有哪些原因?

7.参考

LR+FTRL算法原理以及工程化实现

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值