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

☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 免费无限量使用 DeepSeek R1 模型☜☜☜

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

一、场景介绍

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

首先来介绍一下本文涉及的场景—— “有好货”场景。它的位置是在淘宝首页的四宫格,分为一跳精选页和二跳承接页。承接页主要有两种形式,一种是图文的承接页,另一种是短视频的承接页。这个场景的目标主要是为用户提供满意的好货,带动 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 的影响。

比较简单的方法是利用商品的一些统计特征单独得到一个 bias 塔,此时模型会输出两个分,一个是真实的点击率,另一个是商品的流行度分,在线上预测的时候会将商品的流行度分去掉,实现对流行度偏差的解耦。

第二种方法是将用户点击归因为两类,一类是从众兴趣,一类是真实兴趣,分别构建样本联合训练。相当于得到两个模型,一个模型去得到用户的从众兴趣分,一个模型去得到用户的真实兴趣分。因果推断其实也存在问题,它解决了流行度分布差异,但不能解决长尾商品缺乏训练数据的问题。当前的解决方案倾向于消除流行度偏见,但这对于需要“马太效应”来生存的推荐系统可能并不总是有益的。所以,我们建议不要完全去除推荐系统中的流行度偏差,因为流行的项目通常更优质,用户也有从众心理和真实兴趣两种心理,完全去除流行度偏差会影响用户从众兴趣的满足。应该合理利用流行度偏差,不加剧偏差。

四、CD2AN 基本框架

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

我们这一次探索的工作就是如何合理地利用流行度偏差,要想合理地利用流行度偏差,需要解决一个难点:“如何提取无偏且学习充分的商品表示?”针对流行度分布差异,我们需要从商品 ID 中解耦出真实内容向量和流行度向量。针对长尾分布差异,我们借鉴了域适应的范式将整体分布对齐,借鉴了对比学习的范式将实例分布对齐。

先来介绍 base 模型的基本结构,base 模型其实就是一个经典的双塔模型。接下来详细介绍下我们是如何解决前面提到的两个问题的(流行度分布差异和长尾分布差异)。

1、特征解耦模块缓解流行度分布差异

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

特征解耦模块是本文针对推荐系统中的流行度偏差问题提出的一种解决方案。该模块通过将物品向量表示中的流行度信息与属性信息分离开来,从而减轻流行度对物品向量表示的影响。具体地,该模块包括流行度编码器和属性编码器,通过多层感知器的组合学习得到每个物品的属性和流行度向量表示。这个模块的输入是物品的属性特征,例如物品 ID、物品类目、品牌等,如上图模型结构中的右边部分所示。这里会有两个约束,包括正交正则化和流行度相似度正则化,旨在将流行度信息与物品属性信息分离。其中,通过流行度相似度正则化,模块被鼓励将嵌入物品属性的流行度信息与真实流行度信息对齐,而通过正交正则化,模块被鼓励在编码中保留不同的信息,从而实现分离流行度信息和物品属性信息的目标。

我们还需要一个学习真实流行度的模块,如上图模型结构中的左边部分所示,它的输入主要就是商品的统计特征,然后经过一个 MLP 得到真实的流行度表示。

2、正则化缓解分布差异

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

接下来,我们想要解决长尾分布差异的问题。

我们借鉴了迁移学习的思想,实现热门商品和长尾商品的分布对齐。我们在原来的双塔模型中,引入了一个未曝光商品,使用了 MMD 的损失函数(如上图左上所示),这个损失函数希望热门商品域和长尾商品域的簇中心尽可能靠近,如上图右上示意图所示。由于这种域对齐是无监督的,可能会产生负迁移,我们做了如下优化:曝光样本在域对齐损失上的梯度被停止,防止影响到任务损失;对于未曝光样本,引入精排分进行知识蒸馏。

我们还借鉴了实例对齐的思想,希望可以学习得到更好的商品向量表示,主要思想就是有效共现次数越多的商品,向量表示越相似。这里的难点是如何去构造 pair。在用户有过往行为的商品序列中,天然存在这样的 pair。以一个用户举例,一条样本包含了一个用户的行为序列和目标商品,那么目标商品和用户行为序列中的每个商品就能构成共现的 pair。我们在经典的对比学习的损失函数的基础上还考虑了用户的兴趣多样性和商品频率,具体的损失函数公式可见上图中左下部分。

我们可以看一个直观的示意图,如上图中右下所示,灰色的点是目标商品,橙色的点是用户的行为序列,蓝色的点是我们随机负采样得到的负样本。我们希望借鉴对比学习的方法去约束用户行为序列中每个商品都和目标商品靠近。

3、有偏无偏联合训练

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

以上模块有效地得到了商品的无偏内容表示和解耦的流行度表示,我们应该怎样去应用呢?我们利用了无偏模型和有偏模型联合训练的方式,无偏商品向量可以基于解耦模块及正则化提取,为了能够利用流行度信息,我们还引入了流行度特征,有偏模型只会继承流行度偏差,不会加剧偏差。线上服务部分,如上图右边所示,我们将无偏的商品表示和有偏的商品表示通过参数 α 融合起来得到线上的商品表示,这样即可通过用户向量来召回商品,这个 α 是调节召回关注流行度信息的程度。

4、离线及线上实验

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

上图中展示了这个模型离线及线上的效果。在离线实验中,我们引入了 C-Ratio 的指标,来衡量召回结果中有多少商品是高曝光商品。通过离线实验我们可以看出各个模块都有一定程度的贡献。无偏模型在线上效率指标方面并没有收益,说明流行度信息是有用的,我们还是需要使用有偏模型去利用流行度信息。

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

最后,我们对模型结果做了可视化的展示。我们发现新的模型结构的确可以将高爆商品和长尾商品的分布记性对齐,解耦出来的流行度表示向量和商品无偏的内容表示几乎是没有交集的,并且同类目的商品能有更紧密的联系,通过对 α 的调整,可以让模型有方向地去拟合用户的从众兴趣和真实兴趣。

今天的分享论文标题是《Co-training Disentangled Domain Adaptation Network for Leveraging Popularity Bias in Recommenders》。

五、问答环节

Q1:未曝光样本是怎么加入到样本中的?

A1:离线生成的,针对一条样本,我们可以拿到目标正样本及对应的类目,然后离线地随机采样出若干个和目标正样本相同类目的商品,挂载到训练样本中。

Q2:引入同类的未曝光样本,会不会增加学习难度?

A2:引入的未曝光样本是没有标签的,是通过无监督的方式来进行分布对齐,可能会存在负迁移的情况,我们用了两个技巧来解决这个问题:曝光样本在域对齐损失上的梯度被停止,防止影响到任务损失;对于未曝光样本,可以引入精排分进行知识蒸馏。

Q3:未曝光样本获取精排分成本会不会很高?

A3:离线对样本用精排模型打一遍分,作为特征来使用,性能还好。

Q4:未曝光样本是进精排未曝光的样本吗?

A4:不是,这样大概率还是一个高爆品,我们使用的是全局同类目下随机采样的结果。

以上就是精准推荐的秘术:阿里解耦域适应无偏召回模型详解的详细内容,更多请关注创想鸟其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/533109.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2025年11月9日 11:36:59
下一篇 2025年11月9日 11:38:19

相关推荐

  • HTML数据如何构建推荐系统 HTML数据推荐算法的数据基础

    HTML是推荐系统数据来源的载体,通过解析网页提取用户行为(如点击、停留)、物品特征(如标题、价格)及上下文信息(如URL路径、设备类型),经结构化处理后形成用户画像和特征矩阵,为协同过滤、内容推荐等算法提供输入,实现精准推荐。 构建推荐系统时,HTML数据本身不直接用于算法计算,但它承载了生成推荐…

    2025年12月23日
    000
  • 如何用JavaScript实现一个支持多因子决策的推荐系统?

    设计可扩展评分模型需构建模块化权重与评分函数,如基于类型、演员、导演、年份等因素配置权重及匹配逻辑,利用对象结构实现灵活调整;通过数据索引、并行计算(Web Workers)、分页加载与缓存提升大数据处理效率;采用准确率、召回率、CTR、NDCG等指标结合A/B测试评估效果;应对冷启动可采用内容推荐…

    2025年12月20日
    000
  • 如何利用C++进行高效的推荐算法开发?

    如何利用C++进行高效的推荐算法开发? 推荐算法是现代化互联网平台不可或缺的一部分,它提供了个性化的推荐内容,为用户提供更好的体验。C++作为一种高效的编程语言,在推荐算法开发中具有良好的性能。本文将介绍如何利用C++编写高效的推荐算法,并提供一些代码示例。 一、数据准备在开始推荐算法的开发之前,我…

    2025年12月17日
    000
  • 如何使用C++进行高效的推荐系统开发?

    如何使用C++进行高效的推荐系统开发? 引言:推荐系统已经成为了现今互联网行业中不可或缺的一部分,它能够通过分析用户的历史行为和偏好,为用户推荐个性化的内容。C++作为一种高效、灵活且具有跨平台特性的编程语言,被广泛应用于推荐系统的开发中。本文将介绍如何使用C++进行高效的推荐系统开发。 一、数据预…

    2025年12月17日
    000
  • Python怎样开发推荐系统?Surprise库协同过滤

    python开发推荐系统的核心答案是选择合适的协同过滤算法并进行数据处理。首先,使用surprise库内置的knnbasic、svd等算法搭建基础模型;其次,通过pandas进行数据准备,并转换为surprise所需格式;第三,划分训练集和测试集后训练模型;第四,对测试集进行预测并输出结果;第五,使…

    2025年12月14日 好文分享
    000
  • Python推荐系统 Python协同过滤算法实现步骤

    协同过滤推荐系统可通过以下步骤用python实现:1. 数据准备:获取用户-物品评分数据,如movielens等;2. 构建用户-物品矩阵,使用pandas的pivot方法转换数据结构;3. 计算相似度,基于用户或物品,常用余弦相似度或皮尔逊相关系数;4. 预测评分并生成推荐,通过加权平均相似用户评…

    2025年12月14日
    000
  • 如何在Python中构建一个简单的推荐系统

    如何在Python中构建一个简单的推荐系统 推荐系统是为了帮助人们发现和选择他们可能感兴趣的物品而设计的。Python提供了丰富的库和工具,可以帮助我们构建一个简单但有效的推荐系统。本文将介绍如何使用Python构建一个基于用户的协同过滤推荐系统,并提供具体的代码示例。 协同过滤是一种推荐系统的常见…

    2025年12月13日
    000
  • 在Python中的推荐系统

    推荐系统是Python中的一个工具,它根据用户的偏好和过去的行为向用户推荐项目或内容。该技术利用算法来预测用户未来的偏好,从而为他们提供最相关的内容。 该系统的范围非常广泛,广泛应用于电子商务、流媒体服务和社交媒体等各个行业。产品、电影、音乐、书籍等都可以通过这些系统推荐。提供个性化推荐不仅有助于提…

    2025年12月13日
    000
  • 应用于推荐系统的GNNs技术及其实际应用

    ☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 免费无限量使用 DeepSeek R1 模型☜☜☜ 一、GNNs 推荐系统的底层算力演化 近 20 年来,计算形态在不断的演化。2010 年之前,云计算特别火,其他的计算形态比较微弱。随着硬件算力突飞猛进的发展,以及端侧芯片的引进,边缘计算也变得…

    2025年12月2日 科技
    100
  • 使用MySQL创建推荐系统表实现推荐系统功能

    使用mysql创建推荐系统表实现推荐系统功能 推荐系统是一种用于根据用户的喜好和行为给用户个性化推荐内容的系统。在推荐系统中,数据库是一个关键的组成部分,它保存了用户数据、物品数据和用户-物品交互数据等信息。MySQL作为一种常用的关系型数据库管理系统,可以用来创建推荐系统表,并实现推荐系统的功能。…

    数据库 2025年11月28日
    000
  • 客服机器人是怎么实现的?对话推荐系统

     本文转载自微信公众号「活在信息时代」,作者活在信息时代。转载本文请联系活在信息时代公众号。 大家在使用很多APP的时候,一定对于智能机器人客服系统都有所了解。客服机器人就像真人客服一样,可以与人进行简单的对话,并针对人们的需求给出相应的回答。虽然大部分时间得到的答案并不怎么靠谱吧,但是总的还是比较…

    2025年11月27日 科技
    000
  • 如何设计一个高性能的MySQL表结构来实现推荐系统功能?

    如何设计一个高性能的MySQL表结构来实现推荐系统功能? 推荐系统是很多互联网平台的重要组成部分,它通过分析用户的行为和偏好,提供个性化的推荐内容。在推荐系统的实现中,数据库扮演着关键角色,因此设计一个高性能的MySQL表结构非常重要。本文将介绍如何设计一个高性能的MySQL表结构来实现推荐系统功能…

    2025年11月25日 数据库
    000
  • 通过MySQL开发实现数据挖掘与推荐系统的项目经验分享

    在当前互联网时代,大数据的应用已经成为许多企业的重要战略。数据挖掘作为一种重要的数据分析技术,帮助企业从庞大的数据中挖掘出有价值的信息,为企业决策和业务发展提供支持。而推荐系统则是针对用户的个性化需求,通过分析用户的历史行为和兴趣,为用户提供个性化的推荐内容。本文将分享我在一个数据挖掘与推荐系统项目…

    2025年11月18日
    100
  • 泊松矩阵分解:无需数据解决推荐系统冷启动问题的矩阵分解算法

    作者 | 汪昊 审校 | 孙淑娟 推荐系统是目前互联网行业最火爆的技术之一。在过去的十年中,互联网行业诞生了数以百万计的推荐系统模型迭代版本。尽管针对不同场景进行优化的推荐系统模型非常之多,但是经典的模型非常少。矩阵分解是推荐系统领域勃兴早期,在 Netflix 大赛中展露头角的推荐系统算法,也是过…

    2025年11月10日 科技
    000
  • 利用PHP框架构建社交媒体推荐系统:个性化体验并增加互动

    本文介绍了如何使用php框架构建社交媒体推荐系统,以提供个性化体验。推荐系统包含5个步骤:选择php框架、设置数据模型、构建推荐算法、实现推荐引擎、集成推荐到页面。通过实施,社交媒体平台可以为用户提供个性化内容,提高用户参与度和满意度。 利用PHP框架构建社交媒体推荐系统:为用户提供个性化体验 简介…

    2025年11月9日 后端开发
    000
  • 关于网易云音乐冷启动技术的推荐系统

    ☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 免费无限量使用 DeepSeek R1 模型☜☜☜ 一、问题背景:冷启动建模的必要性和重要性 作为一个内容平台,云音乐每天都会有大量的新内容上线。虽然相较于短视频等其他平台,云音乐平台的新内容数量相对较少,但实际数量可能远远超出大家的想象。同时,…

    2025年11月8日 科技
    000
  • AAAI2022推荐系统论文集锦

    2022年第36届人工智能顶级会议aaai公布了论文列表,此次会议共收到9251篇论文投稿,9020篇经过审稿,最终录取1349篇,录取率仅为15%。鉴于当前国外疫情的严峻形势,会议将于2月22日至3月1日通过线上方式举办。 与往年相比,今年的录取率显著下降。下图展示了2017年至今的投稿量和录取率…

    2025年11月8日 运维
    000
  • 百度视频推荐跨域多目标预估与融合的实践和思考

    ☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 免费无限量使用 DeepSeek R1 模型☜☜☜ 一、百度视频背景介绍 1、统一产品形态 一方面,百度 APP 的所有视频场景已经升级成统一的沉浸式(上下滑)交互形态;另一方面,基于百度统一的大模型,我们打通了所有场景的数据和推荐体验。交互和数…

    2025年11月8日 科技
    300
  • 使用Swoole开发高性能的推荐系统

    使用Swoole开发高性能的推荐系统 推荐系统是现代互联网应用极为重要的一部分,它通过分析用户行为数据和物品属性来为用户提供个性化的推荐内容。然而,随着用户数量和数据量的不断增加,传统的架构往往无法满足高并发和高性能的需求。针对这个问题,我们可以借助Swoole这个高性能的PHP扩展来开发推荐系统。…

    2025年11月7日 PHP框架
    000

发表回复

登录后才能评论
关注微信