前言
推荐导购场景在电商中是重要的满足用户“逛”和“买”的场景,本次主要聚焦在深度学习在阿里B2B电商推荐系统中的应用,其中包括商品推荐中的召回(多兴趣Deep Match)、排序(自研DMR)的相关工作,在新兴的互动内容场景(直播、短视频)中通过异构网络来解决异构信息的精准匹配问题。
本文分享大纲如下:
从17年开始,我们才更加的专注于个性化的分发,不管是搜索还是推荐。如果做推荐的同学们也知道:一开始,我们要做召回、排序、业务的定制以及类似的一些工作。所以我们在17年的时候,主要借助阿里之前淘系的基建,比如SWING&E-TREC这些I2I方法,这其实就是协同过滤的升级版本,然后去进行一个基本的召回方式,以及用LR到GBDT去做一个最初是的CTR预估。到去年年底的时候,我们从LR到GBDT转换到W&DL,因为当时,大概是16年吧,谷歌的W&DL的论文出来后,然后17年在阿里有一个比较大的场景的一些实践。可能针对业务定制的使我们的Unblance I2I,这个I2I的意思呢?是我们总有一些业务是一些小小的商品池,它是一个比较特定的,他不是一个全域可推荐的范围,当我们进行一个大的商品出发的时候,就是定向的往这个商品池里触发。
18年深度学习在业界越来越火,所以我们顺着这个潮流,在排序当中走到了DIN和DIEN,这两个工作是阿里妈妈背景的团队做的在广告上的一个CTR的模型的排序,以及顺着Youtube的Deep Match的工作,我们也做了我们这边的Deep Match,以及一些机制的构建,不足了之前我们只有CTR模型没有CVR模型的短板,一些标题党商品会往下落。
在最近的一年,我们在召回上去进行一个多兴趣点的Deep Match的尝试,在粗排上从GBDT走到了双塔,以及在排序当中,之前是借鉴公司以及业界的一些先进的经验。我们这边有一些自己的更多的创新工作,比如在CTR中有一些DMR,等一下会详细讲到(AAAI 2020),还有就是在CVR模型当中走到了ESMM+MMOE这样子的模型。最近特别火的就是直播了,以及直播这种内容化的一些推荐。
大家知道,一开始做召回的话主要就是协同过滤的方法,例如比较经典的是I2I召回和U2I召回,1688使用过的是Deep Match U2I召回。
LFM: 隐语义模型
16年YouTube提出的Deep Match的方法主要是解决了之前召回效率低的问题,因为这种方法是把用户的历史序列记忆对应的user profile 进行一个embedding之后,然后通过一个MLP得到一个用户的表征。这个表征由于是实时生成的,用户的足迹是不断往里面增加的,那么这个效率是比较高的。Deep Match模型可以更多的用到一些商品侧的自身的一些行为、类目和属性信息,从而能更好地构建模型。但是他的可解释性比较差。另外召回的badcase还是惊喜是一个各花入个眼的方法,需要新上ABTest给出答案。
在Youtube Deep Match的基础上,我们基于序列上下文的Attention,构建用户表征,即通过时间衰减/行为类别/停留时间等信息对用户序列进行建模,模型结构图如上所示:
经过线上测试uv点击率+0.92%,人均点击次数+9.81%,发现性曝光占比+8.04%。
DIN是显性的用户表征学习,对behavior和candidate引入了Attention,使得用户表征随着候选的不同而发生了变化。DIN结构如上图所示。
用户长期兴趣偏好(广告区别于推荐)词袋模型,序列不敏感(对最近的行为无额外的偏好)没利用raw feature
基于DIN存在的一些问题,我们做了一些改进,提出了LSRMM(long short-Range Mixture Model),该模型能够去抽取一些长期的用户偏好。这个兴趣偏好不是end-to-end学习出来的,而是直接通过离线的方式统计出来用户在各个时间是否都对于一个特定的类别的东西有一个偏好。比如我喜欢羽毛球,那么再额外的候选中会出现羽毛球。
CUN CTR+1.5%, CVR + 3.32%(baseline: DIN)
当我们知道DIN和DIEN的时候,这两篇paper都出来了,但是为什么我们没有直接上DIEN而是用了DIN呢?主要原因在于DIEN在用户表征例有两层GRU结构,用GRU跑起来还是一个串行结构,它不能并行。我们预估起来,他这个耗时比较厉害,存在一定上线的工程风险,所以我们这边线上了DIN在上了DIEN。
这是我们做的一些优化以及改进DIN效率,原版DIEN(350ms):
DMR使我们最新发表在AAAI2020上的论文(oral),在Ranking中融合了Matching的思想,建模u2i相关性。DIN和DIEN都是聚焦用户兴趣相关性的建模。而DMR又往前走了一步,对u2i相关性进行建模。这个相关性可以直接衡量用户对商品的偏好程度,从而提升模型的效果。这个u2i相关性是无法通过统计的方法得到的,因为通常不会给用户推荐重复的商品。也无法从召回得到,因为通过是有多路召回,没路召回的相关性不能比较。
DMR提供了一个统一的任意u2i相关性的建模方法。DMR中采用两个子网络建模u2i相关性,其中user-to-item Network直接通过user和item向量内积建立u2i的相关性,并且用一个辅助的deepmatch任务联合训练,促使更大的内积表征更强的相关性,从而提升效果。item-to-item网络采用简介的方式建模u2i相关性,类似于DIN网络,我们先做一个target Attention,这个attention权重可以理解成i2i权重。在讲权重求和得到第二种u2i相关性。DMR提供了一个u2i相关性建模的范式,可以很方便地加入到其他深度模型中。
1688自2019年开始大规模的去做直播业务,最近直播有多火呢?连法院拍卖这件事都开始上直播了。
业务初期选择了特征工程+机器学习LR/GBDT,核心在于实时数据、实时交叉特征打点日志的建设。在特征工程上,选取了经典的user,item(live),user X item三个维度,这相比于之前排权重,uv和转换率都有一个明显的提升。
我们通过拆解用户行为轨迹中,直播和商品作为两条不同的行为序列去进行分别的Attention,直播中每一个卖家都在贴一个正在介绍的商品,所以图中会有一个candidate Item。
此外,由于DNN类模型难以处理Scale不一的实时统计特征,我们采取了DNN+GBDT embedding的模型结构,实时统计特征预训练GBDT模型,线上实时获取多棵叶子节点的Multi-Hot encoding当做表征,在连接Dense层映射为表征向量。相比于V1版本离线测试显示CTR和CVR AUC均有增长,线上预测UV CTR + 2.2%,CVR+5.2%,AST+17.6%。
动机:
预期要完成的工作
URL: https://mp.weixin.qq.com/s/OU_alEVLPyAKRjVlDv1o-w