标题:Multi-Scenario Ranking with Adaptive Feature Learning
地址:https://arxiv.org/pdf/2306.16732.pdf
会议:SIGIR 2023
学校,公司:武大,阿里
1.导读
多场景学习有助于从不同场景进行迁移学习,缓解数据稀疏性。一些工作主要关注于如何找到更好的网络结构如辅助网络,专家网络,多塔结构等;本文主要关注如何针对不同的场景保留各自特定的特征和意图,即不同的特征在不同的场景中有不同的表现。本文提出了一个具有自适应特征学习的多场景排序框架(Maria)。Maria在网络的底部注入场景语义,以得到更具鉴别力的特征表征。包含三个模块:特征缩放,特征细化和特征相关性建模。
- 特征缩放的目的是突出与场景相关的filed,同时抑制不相关的字段。
- 特征细化针对每个特征字段利用自动细化器选择子网络,使得可以利用最优专家提取关于场景的高级语义。
- 导出跨filed的特征相关性作为互补信号。然后,将得到的表征送到具有额外的场景共享塔的简单MoE结构中,用于最终预测。
文末省流版哦
2.方法
image.png
2.1 特征缩放
同一个特征在不同场景也会有不同的表现,因此特征缩放模块就是基于场景信息对特征进行缩放。将编码层得到的用户emb,商品emb,行为序列emb,上下文信息emb等emb拼接后得到整体的表征Q,特征缩放模块为Q中的每个特征计算得到一个缩放因子,这样每个场景中同一特征都有了不同的表达。缩放因子向量计算为下式,其中freeze()表示梯度不反向传播,e分别是用户,商品和场景emb。
基于得到缩放因子向量对特征emb进行缩放
,其中
为特征数。
ps:这里感觉和其他动态权重的多场景模型差不多,比如PEPNet,感觉就是名字不一样,实现方式略有差异。
2.2 特征细化
为了在实例级别适应特定场景的特征,本节设计了一个特征细化模块,该模块利用自动细化器选择网络来支持高级语义编码。为每个特征域filed设置了一组特征细化器,每个细化器都是一个浅的全连接层。如图3(a)所示,细化器的选择是以场景感知的方式自动进行的。选择器采用场景emb
和输入的某个field的emb作为输入,计算权重β。以用户行为field为例,公式如下,其中GS为Gumbel Softmax。GS层是用来近似离散化的选择过程。使用relu作为每个细化器的激活函数。将每个field的特征都经过特征细化后得到对应的emb,然后将他们拼接得到
ps:这里有点类似多任务中的一些方法,比如mmoe?
2.3 特征相关性建模
在特征缩放之后,对不同特征field之间的语义相关性进行显式建模。首先,field的表征通过全连接层被投影到相同的维度。然后,计算每个field对的点积,计算得到不同field的点积分数后,将他们拼接得到
。 将
和
拼接后得到
在上述自适应特征学习之后,使用标准的MoE作为网络层的主要结构(如图3(b)所示)。为所有的场景构建一个共享的专家网络组,其中专家网络是一个独立的全连接的网络。门控机制用于将这些专家网络的输出汇总公式如下,其中
为专家网络的个数,
为场景emb,基于场景emb得到权重向量g,然后对多个专家网络的输出进行加权。
2.4 预测
在预测层,采用多塔结构,为每个场景搭建特定场景的DNN塔
。此外,还有一个额外的DNN塔
用于利用场景共享信息(如图3(c)所示)。因此,最终表征
为下式,其中α衡量场景相关性,最终的预测打分为
3.结果
image.png
4.总结
本文是针对多场景推荐问题提出的相关方法,主要包含几部分:
- 特征缩放模块,主要是利用场景信息对输入特征进行缩放,从而是每个特征在不同场景中有各自的特异性,这点类似其他动态权重的方法,如PEPNet等
- 特征细化模块,在特征缩放后,对不同field的特征(用户域,商品域,行为域等)进行细化,细化过程类似mmoe,利用多个fcn某个field的高阶表征后,通过加权汇总这些fcn得到的表征得到细化后的表征
- 特征相关性建模,对特征缩放后的不同filed的特征两两组成对,不同对计算点积
- 上层网络,依旧通过moe对细化后的特征进行处理,然后每个场景构建各自的fcn进行预测