多兴趣如何解决?
爱奇艺短视频推荐:多兴趣召回篇
双塔模型最后一层为什么都进行L2 Norm?
20220922推荐小记——推荐系统中如何对时长、完播等目标做多目标建模
多目标排序模型在腾讯QQ看点推荐中的应用实践
Weighted LR YouTube 的时长预估模型
大厂技术实现 | 多目标优化及应用(含代码实现)
知乎:深度学习的多个loss如何平衡?
推荐系统多目标优化专题(2)—融合公式设计思路
大厂技术实现 | 多目标优化及应用
推荐系统系列之排序模型的调优实践
推荐系统排序优化迭代的一些经验
微信「看一看」 推荐排序技术揭秘
汽车之家推荐系统
大厂技术实现 | 爱奇艺短视频推荐业务中的多目标优化实践 @推荐与计算广告系列
王冬月:京东推荐算法精排技术实践
陈胜:美团搜索排序实践
深度排序模型在淘宝直播的演进与应用
推荐系统(十一) 2021-2022年工业界推荐算法实践经验汇总
推荐系统(十五) 大厂实践经验学习:排序模型
演讲:知乎如何使用 DNN 优化首页排序
微博推荐实时大模型的技术演进
FiBiNet(FiBiNet解读)模型引入的SENet网络,学习每个特征权重,然后特征权重与embedding作Vector-Wise赋权,参与后续交叉计算,起到一个门控作用,会弱化不重要特征,强化重要特征。其核心逻辑是Squeeze&Excitation&Re-weight。FiBiNet还包含Bilinear交叉层,特征交叉那里再介绍。
对于某个特征field,embedding向量作为输入,通过一层FC,得到该特征fields权重,计算方式分为两种:
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=1∑nwixi+i=1∑nj=1∑nwijxixj
模型学习所有二阶交叉特征的核心是学习对应的参数
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
计算优化,将计算量由
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=1∑nj=i+1∑nviTvjxixj=21i=1∑nj=1∑nviTvjxixj−21i=1∑nviTvixixi=21(i=1∑nj=1∑nf=1∑kvi,fvj,fxixj−j=1∑nf=1∑kvi,fvi,fxixi)=21f=1∑k((i=1∑nvi,fxi)(i=1∑nvi,fxi)−i=1∑nvi,f2xi2)=21f=1∑k((i=1∑nvi,fxi)2−i=1∑nvi,f2xi2))
FFM(Field Factorization Machine)是在FM的基础上引入了“场(Field)”的概念而形成的新模型
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(Automatic Feature Interaction Learning viaSelf-Attentive Neural Networks)将transformer中的multi-head self attention和resnet引入CTR预估模型。实现了自动特征交叉学习以提升CTR预测任务的精度。
如何在工业界优化点击率预估:(八)Debias&Loss&校准
推荐系统中的偏差问题
推荐系统,离线 AUC 涨了,线上 CTR 等效果没涨,可能有哪些原因?