论文《Deep Multifaceted Transformers for Multi-objective Ranking in Large-Scale E-c

65 阅读2分钟

京东DMT

论文地址:dl.acm.org/doi/pdf/10.… 论文提出用多个Transformer对用户多种类型的行为序列进行建模,在此基础上叠加MMOE建模多目标,最后使用一个消偏塔对数据进行消偏。

拿点击/未点击作为反馈通常会有位置偏差(position bias)和近邻偏差(neighboring bias),不过论文对于消偏的处理比较简单。

DMT的结构如下 在这里插入图片描述 输入分为两种特征 Categorical features 和 Dense features Categorical features:

1.用户不同的行为序列。S=<s1,s2,...,sT>S = <s_1, s_2, ..., s_T>,其中st=(ti,pi)s_t=(t_i,p_i)表示用户在时刻tit_i交互的物料pip_i,论文用到了点击click序列ScS_c,加入购物车cart序列SaS_a,购买order序列SoS_o 2. Embedding Layer,对每个物料,使用物料id pip_i,类目id cic_i,品牌id bib_i,商铺id sis_i,分别映射成低维向量epi,eci,ebi,esie_{p_i}, e_{c_i}, e_{b_i}, e_{s_i},然后concat起来,形成向量eie_i

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),

  1. user-item matching features (e.g., whether the item matches the user’s gender or age)
  2. 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

专家网络输出e1(x),e2(x),...,eN(x)e_1(x),e_2(x),...,e_N(x),每个任务的门控网络NNGk(x)NNG^k(x)学习各个专家的权重wkw^k,根据权重得到专家结果的加权和,然后送入到一个功能网络中得到任务在MMOE层的输出。 wk=softmax(NNGk(x))w^k = softmax(NNG^k(x)) fk(x)=i=1Nwikei(x)f^k(x) = \sum_{i=1}^N w_i^k e_i(x) uk=NNUk(fk(x))u_k = NN_U^k(f^k(x))

Bias Deep Neural Network

专门搭了一个bais塔,输入都是偏差相关的特征,对于位置偏差就是展示位置索引编号或者网页索引编号;对于近邻偏差,输入就是目标物料的类目和邻近K个物料的类目。 biase塔的输出 yb=NNB(xb)y_b = NN_B(x_b)

Model Training and Prediction

模型输出yky_k 都是分类任务,使用交叉熵损失函数 yk=σ(uk+yb)y_k = \sigma (u_k+y_b) Lk=1Ni=1Nyilog(yk)+(1yi)log(1yk)L_k = - \frac 1 N \sum_{i=1}^N y_i \log(y_k) + (1-y_i) \log (1-y_k) L=i=1KλkLkL = \sum_{i=1}^K \lambda_k L_k

上面是训练阶段,预测阶段,任务k输y^k\hat y_k,score由不同任务预估分加权得到,权重离线搜参得到 y^k=σ(uk)\hat y_k = \sigma (u_k) y^=k=1Kwky^kk=1Kwk\hat y = \frac {\sum_{k=1}^Kw_k \hat y_k} {\sum_{k=1}^Kw_k}

EXPERIMENTAL

在这里插入图片描述 其实这个论文是对Transformer和MMOE以及消偏做了组合,不同的Transformer对不同种类的序列分别处理,能拿到一个比较好的这个序列的Embedding结果,这种组合竟然可以很好地work,说明几个基础组件还是非常有效的。