精准推荐的秘术:阿里解耦域适应无偏召回模型详解

在训练过程中,为了降低损失,推荐系统往往更频繁地推荐流行商品,将流行度信息注入 ID 表征中,进而加剧热门商品表示与长尾商品表示之间的流行度分布差异 。此外,长尾商品在交互中的稀疏性使其难以获得好的表示,导致长尾分布也发生转移 。本次分享主要提出了一种解耦域适应无偏网络,可以在分离流行度表示和商品属性表示的前提下同时训练有偏和无偏模型,并有效利用流行度偏差 。

精准推荐的秘术:阿里解耦域适应无偏召回模型详解

文章插图
一、场景介绍 
精准推荐的秘术:阿里解耦域适应无偏召回模型详解

文章插图
 
首先来介绍一下本文涉及的场景—— “有好货”场景 。它的位置是在淘宝首页的四宫格,分为一跳精选页和二跳承接页 。承接页主要有两种形式,一种是图文的承接页,另一种是短视频的承接页 。这个场景的目标主要是为用户提供满意的好货,带动 GMV 的增长,从而进一步撬动达人的供给 。
二、流行度偏差是什么,为什么接下来进入本文的重点,流行度偏差 。流行度偏差是什么?为什么会产生流行度偏差?
1、流行度偏差是什么 
精准推荐的秘术:阿里解耦域适应无偏召回模型详解

文章插图
 
流行度偏差有很多别名,比如马太效应、信息茧房,直观来讲它是高爆品的狂欢,越热门的商品,越容易曝光 。这会导致优质的长尾商品或者达人创作的新商品没有曝光的机会 。其危害主要有两点,第一点是用户的个性化不足,第二点是达人创作的新商品得不到足够的曝光,使得达人参与感降低,因此我们希望缓解流行度偏差 。
从上图右边的蓝色柱状图可以看出,曝光 top10% 的商品在某一天中占据了 63% 的曝光,这证明在有好货的场景下马太效应是非常严重的 。
2、为什么会产生流行度偏差接下来我们去归因为什么会产生流行度偏差 。首先,需要阐明我们为什么会在召回截断做缓解流行度偏差的工作 。排序模型拟合的是商品的 CTR,它的训练样本包含正样本和负样本,CTR 越高的商品越容易获得曝光 。但是在召回阶段,我们通常会采用双塔模型,它的负样本通常会通过两种方式产生,第一种是全局随机负采样,第二种是 batch 内负采样,batch 内负采样是将同一个 batch 取正样本的其它曝光日志当作负样本,所以它在一定程度上可以缓解马太效应 。但是,通过实验我们发现,全局负采样实际的线上效率型效果会更好 。不过,推荐系统中的全局随机负采样可能导致流行度偏差,因为它只为模型提供了正反馈 。这种偏差可能归因于流行度分布差异和先验知识干扰,即用户倾向于点击更受欢迎的物品 。因此,模型可能会优先推荐热门物品,而不考虑它们的相关性 。
我们也分析了流行度分布差异,如上图右边绿线所示,通过将商品按照曝光频率分组并计算每组的正样本平均分,发现即使所有样本都是正样本,平均分数也随曝光频率的下降而下降 。推荐系统模型训练时存在流行度分布差异和长尾分布差异 。模型会倾向于把流行度信息注入到商品的 ID 特征中,导致流行度分布差异 。高爆品获得的训练次数远大于长尾商品,使得模型过拟合于高爆品,长尾商品难以得到充足训练和合理向量表示 。如上图右边的 TSN 图所示,蓝点表示高曝商品的商品向量,而红点表示长尾商品的商品向量,显示出分布上的显著差异 。而且如上图右边的红线所示,hit ratio 也会随着曝光数的降低而降低 。所以,我们把流行度偏差的产生归因于流行度分布差异和长尾分布差异 。
三、流行度偏差当前解决方案
精准推荐的秘术:阿里解耦域适应无偏召回模型详解

文章插图
当前业界的解决方案主要包括两种,分别是逆倾向评分(IPS)和因果推断 。
1、逆倾向评分(IPS)通俗来讲就是将主任务损失函数中高曝光概率商品的权重调低以避免过度关注于高曝光概率商品,从而可以更平均地关注整个正样本分布 。但是,这种方法需要提前预测曝光概率,这种预测是不稳定的,容易失效或者波动较大 。
2、因果推断我们需要构建一张因果图,i 代表商品特征,u 代表用户特征,c 代表点击概率,这张图就表示给模型输入用户特征和商品特征,预测点击率 。如果我们把流行度偏差也考虑到这个模型中,用 z 来代表,它不仅会影响点击率,还会影响商品的特征表示  i,因果推断的方法是尝试去阻断 z 对 i 的影响 。


推荐阅读