前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >STEM:释放多任务推荐中embedding的力量

STEM:释放多任务推荐中embedding的力量

作者头像
秋枫学习笔记
发布2024-01-10 15:31:22
2380
发布2024-01-10 15:31:22
举报
文章被收录于专栏:秋枫学习笔记秋枫学习笔记

1. 导读

本文主要针对多任务学习在推荐系统中应用时的负迁移问题提出的相关方法。现有的方法通常是在所有样本中探索负迁移性,忽略了其中固有的复杂性。作者根据任务之间的相对正反馈量对样本进行拆分,从而深入研究样本的复杂性。

作者做了这样一个实验,将数据集中两个任务划分成三部分:finish正样本占主导,like占主导和两个势均力敌。x轴表示两个任务的占比大小,越往左finish的正样本越多。y轴表示多任务模型相比单模型的AUC的提升,可以发现在两侧多任务模型都有提升,但是在中间是负向的(MMoE,PLE),而STEM可以缓解这个问题。

MMoE和PLE都有共享embedding,所以作者认为可能是这个原因,因此在设计STEM-Net的时候,每个专家组都有自己对应的emb table。并且在门控上也进行了设计,防止任务之间互相干扰。

2.方法

Alt text

2.1 共享的和任务特定的emb层

x=\{x_1,...,x_M\}

为M个field的特征,分别有共享的emb table

E^S \in \mathcal{R}^{N\times K}

和任务特定的emb table

E^t \in \mathcal{R}^{N\times K}

,N为所有field中的特征数,K为emb维度。则每个field的特征我们都可以得到:

v_i^t=Lookup(x_i,E^t) \\ v_i^S=Lookup(x_i,E^S)

将所有特征的emb拼接得到

h_0^t=[v_0^t,...,v_M^t]\\ h_0^S=[v_0^S,...,v_M^S]

2.2 共享的和任务特定的专家网络

如图3所示,中间的是共享的专家网络,其他的是不同任务的专家网络,这里和PLE是一样的。不同的是,这里每个专家网络组都有各自对应的emb table,防止其他参数的干扰。基于此,可以形式化为下式,其中K表示专家组中专家网络的个数。

\begin{aligned} \boldsymbol{h}_{i}^{t} & =\operatorname{MLPs}_{i}^{t}\left(\boldsymbol{h}_{0}^{t}\right), \forall i=1, \ldots, K_{1} \\ \boldsymbol{h}_{j}^{S} & =\operatorname{MLPs}_{j}^{S}\left(\boldsymbol{h}_{0}^{S}\right), \forall j=1, \ldots, K_{2} \end{aligned}

2.3 定制门控机制

门控机制主要是用来集成不同的专家网络的表征,在STEM-Net中,门控机制确保某个特定任务的专家网络和emb不会因其他任务的梯度更新而更新,防止其他任务影响当前任务。这个门控操作是用来停止梯度反向传播的,如下式所示对于任务t,门控网络的输出由三部分

  • 第一项,是任务t对应的门控网络权重对任务t专家组内各个专家产出的emb进行加权,这部分是有梯度的
  • 第二项,是共享的门控权重和共享的专家组emb加权,也有梯度
  • 第三项,这部分只使用其他任务的信息,但不让当前任务去影响其他任务,因此梯度不会回传(SG表示stop gradient)
\begin{aligned} \boldsymbol{o}^{t}= & \sum_{i}^{K_{1}} \boldsymbol{g}_{i}^{t \rightarrow t} \boldsymbol{h}_{i}^{t}+\sum_{i}^{K_{2}} \boldsymbol{g}_{i}^{S \rightarrow t} \boldsymbol{h}_{i}^{S}+ \\ & \sum_{t^{\prime} \in \mathcal{T}, t^{\prime} \neq t} \sum_{i}^{K_{1}} \boldsymbol{g}_{i}^{t^{\prime} \rightarrow t} \mathrm{SG}\left(\boldsymbol{h}_{i}^{t^{\prime}}\right) \end{aligned}
[g^{t\to t},\{g^{t^{\prime}\to t}\},g^{S\to t}]=\text{Softmax}(W_g^t(\boldsymbol{h}_0^t+\boldsymbol{h}_0^S))

其中

W_g^t\in \mathcal{R}^{d \times (K_1\times K_1+K_2)}

d是变换后的维度。

2.3 预测塔和损失函数

预测tower部分是类似的,每个任务对应一个预测tower进行该任务的预估

\hat{y}^t=\sigma(MLPs^t(o^t))

,若是分类任务则采用常规的交叉熵损失函数

2.4 门控网络对比

门控机制的对比如图4所示。与MMoE相比,STEM-Net门控机制针对特定任务和共享专家进行了优化,而MMoE的门控网络则无差别地更新所有专家。与PLE相比,STEM-Net允许塔直接传递来自其他任务专家的知识,而PLE的门网络需要共享专家作为知识传递的中介,这可能会导致信息丢失。

3. 结果

平均AUC是最高的

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2024-01-06,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 秋枫学习笔记 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1. 导读
  • 2.方法
    • 2.1 共享的和任务特定的emb层
      • 2.2 共享的和任务特定的专家网络
        • 2.3 定制门控机制
          • 2.3 预测塔和损失函数
            • 2.4 门控网络对比
            • 3. 结果
            领券
            问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档