作者:一元,炼丹笔记三品炼丹师
Deep Multifaceted Transformers for Multi-objective Ranking in Large-Scale E-commerce Recommender Systems(CIKM 2020)
背景
现有的推荐算法通常根据用户的历史点击序列,通过优化单个任务(如点击率预测)来学习项目的排名得分,但对于同时建模用户的多种行为或联合优化多个目标(如点击率和转化率),这对电子商务网站都至关重要。
在本文中,作者认为基于不同类型的行为来描述用户的不同兴趣,并同时进行多任务学习以实现多个目标的显著改善是至关重要的。本文提出了一个新的框架Deep multiple-aspected Transformers(DMT),它可以在多个transformer的同时对用户的多种行为序列进行建模。通过利用专家的多门混合优化多个目标。此外,还可以利用无偏学习来减少训练数据中的选择偏差。在JD真实生产数据集上的实验证明了DMT的有效性,它显著优于现有的方法。
电商推荐系统的挑战
设计一个现实世界的大规模电商推荐系统会面临大量的问题,包括:
多目标排序
需要同时优化多个目标,这些目标是相近的,但却需要一个平衡点,在电商中最典型的就是:CTR和CVR预估问题,如果我们专注在CTR优化上,那么就会出现我们最终给所有的用户推荐来最流行的商品,这些商品点击率很高,但是最终购买率却非常低。如何做到高点击高转化是一大难点。
用户行为的多种类型
在电商中的用户行为有着多种不同的类型,(例如:点击,加购,下单),这些行为反映了用户的不同的实时兴趣,当前大量的研究都会优化点击序列,但是却会忽略用户的其他行为,例如购买等;
有偏的隐式反馈
现有的推荐系统通常利用用户的隐含反馈(如点击与否)来学习排名模型。然而,在隐式反馈数据中存在选择偏差。用户可能仅仅因为某个产品排名靠前而点击它,这种观察被称为“位置偏差”。
给定一个目标商品,其相邻的商品也会影响其点击的情况,本文称之为“邻近偏差”。如果一个产品被同一类别中的许多相似产品包围,用户可能不太可能单击该产品。例如,在图1中,产品“iphone11”可能因为排名第一而被点击的概率更高,而这三个“iPhone”可能在被点击方面存在激烈的竞争。哪些类型的偏见信息更具影响力?如何有效地建模和减少偏差?这些也是非常具有挑战的问题。
问题定义
在电商推荐系统中的多目标排序问题:给定个候选商品,多目标排序问题的目标是预测基于多目标的每个候选商品的排序分数。本文重点考虑两大目标:点击率(Click-through Rate)和再点击转化率(Click-through Conversation Rate), 注意:Click-through Conversation Rate = Click-through Rate和Conversation Rate的乘积。
模型
输入和Embedding层
我们将输入分为两块,一块是类别特征;一类是dense特征.
类别特征包含两类特征:
2. Dense特征
积累的诸多dense特征。
Deep Multifaceted Transformer Layer
为了捕捉每个用户的multifaceted兴趣,我们使用三个单独的深度兴趣Transformer,此处我们的点击序列,我们使用最近50个点击商品,加购和下单都是最近的10个(一年);
对于每个行为序列,我们探索用户的实时兴趣并将其表示为一个兴趣向量。
1.Self-Attention模块
(1).为了捕获queries,keys和不同子空间的关系,我们使用multiple heads self attention,
其中是heads的个数,, , 是投影矩阵的参数. ,
(2).Point-wise Feed Forward Networks,
为了增加模型的表示能力,每个self-attention block使用FFN,
其中, ,,,.
位置编码:对于每个行为序列, S =其中T为序列的长度.
2.Encoder: 编码器在行为序列的embedding上应用了一个self-attention block,并允许序列中的每个商品都参与输入序列中的所有商品。自我注意机制模拟了用户行为序列中每两个商品之间的相互关系,可以更好地从历史行为中了解用户的兴趣。
3.Decoder: 由于用户可能有不同的兴趣,解码器使用目标商品作为查询,编码器的输出作为键和值。它学习目标商品和历史序列中每个商品之间的attention 分数,并为每个商品学习一个唯一的用户兴趣向量。兴趣向量随目标商品的不同而变化,提高了模型的表达能力。
Multi-gate Mixture-of-Experts Layers
排序系统需要能够学习和估计多种类型的用户效用,并结合这些估计来计算最终的排序分数。多个目标之间可能存在复杂的关系(如独立、相关或冲突),常用的共享底层架构可能会损害多个目标的学习。此处采用MMoE来进行多目标任务的学习。
DMT在输出的顶层使用MMoE,它使用个专家网络,这边全是带有ReLU激活函数的MLP网络,为了对输入进行建模并得到每个expert的输出,我们将其表示为,对于每个任务.我们探索一个gating网络来学习每个专家的权重,; 然后我们计算专家输出的加权和,最后,我们将输入到一个utility网络()中得到.
Bias DNN
排序模型通常使用隐式反馈进行训练,这是有偏差的,因为显示的商品是从现有的排序系统生成的,用户有选择偏差(例如,位置偏差)。如图1所示,用户可以向下滚动并在多个页面中浏览产品。本文研究了电子商务推荐系统中的两种选择偏差:位置偏差和邻近偏差。
“位置偏差”意味着用户倾向于单击显示在列表顶部附近的商品。每个商品的位置可以定义为屏幕中的索引号或页码。我们将它们分别表示为“位置索引”和“位置页面”。例如,在图1中,这四种产品的页码都是1,因为它们都在第一页,它们的索引号是1、2、3、4。我们将页面和索引的最大数量分别设置为100和400。
邻居偏差指: 点击一个商品的概率可能会被邻近的商品影响。我们将稀疏的bias特征编码到低维的向量然后将它们输入到MLP中,给定bias特征,目标商品的选择偏差:
其中是Bias的DNN。
模型训练预测
模型训练
在训练阶段,
其中为sigmoid函数,为训练集的带下,是标签,为每个任务的权重。
模型预测
最终在线生效的时候,我们没有位置信息,所以位置信息被丢弃了,
其中,为任务的排序分数, 我们使用线下的grid search以及在线的A/B测试来选择合适的.
实验
实验整体效果对比
DMT中成分有效性分析
3. 多任务学习
在线A/B测试
小结
本文提出了DMT,利用深度多面变换器(Deep Multifaceted Transformers)对用户的不同行为序列进行建模,利用MMOE对电子商务中的多目标进行联合优化,并使用Bias深层神经网络来减少隐式反馈中的选择偏差。我们进行了大量的实验,并证明了DMT在大规模电子商务推荐系统中多目标排序的有效性。线上的A/B测试也进一步证明了DMT的有效性。
参考文献