京东DMT
论文地址:dl.acm.org/doi/pdf/10.… 论文提出用多个Transformer对用户多种类型的行为序列进行建模,在此基础上叠加MMOE建模多目标,最后使用一个消偏塔对数据进行消偏。
拿点击/未点击作为反馈通常会有位置偏差(position bias)和近邻偏差(neighboring bias),不过论文对于消偏的处理比较简单。
DMT的结构如下
输入分为两种特征 Categorical features 和 Dense features
Categorical features:
1.用户不同的行为序列。,其中表示用户在时刻交互的物料,论文用到了点击click序列,加入购物车cart序列,购买order序列 2. Embedding Layer,对每个物料,使用物料id ,类目id ,品牌id ,商铺id ,分别映射成低维向量,然后concat起来,形成向量
Dense features: 归一化处理
1.item profile features (e.g.,number of clicks, CTR, CVR, rating) , 2. profile features (e.g., purchase power, preferred categories and brands),
- user-item matching features (e.g., whether the item matches the user’s gender or age)
- user-item interaction features (e.g., number of clicks on the category of the item within a time window)
Deep Multifaceted Transformers Layer
分别用3个Transformer来对点击、加入购物车、购买行为序列进行建模。encoder中,用序列的item-Embedding作为self-attention的输入,decoder中,使用target item的Embedding作为query,encoder输出的结果作为key和value。
Multi-gate Mixture-of-Experts Layers
专家网络输出,每个任务的门控网络学习各个专家的权重,根据权重得到专家结果的加权和,然后送入到一个功能网络中得到任务在MMOE层的输出。
Bias Deep Neural Network
专门搭了一个bais塔,输入都是偏差相关的特征,对于位置偏差就是展示位置索引编号或者网页索引编号;对于近邻偏差,输入就是目标物料的类目和邻近K个物料的类目。 biase塔的输出
Model Training and Prediction
模型输出 都是分类任务,使用交叉熵损失函数
上面是训练阶段,预测阶段,任务k输,score由不同任务预估分加权得到,权重离线搜参得到
EXPERIMENTAL
其实这个论文是对Transformer和MMOE以及消偏做了组合,不同的Transformer对不同种类的序列分别处理,能拿到一个比较好的这个序列的Embedding结果,这种组合竟然可以很好地work,说明几个基础组件还是非常有效的。