连续迁移学习跨域推荐排序模型在淘宝推荐系统中的应用利用连续预训练的源域模型的中层表示结果作为目标域模型的附加知识,设计了一个轻量级的Adapter模块来跨域迁移领域知识,并在良好产品推荐排名中取得了显着的业务成果。背景近年来,随着深度模型的应用,行业推荐系统的推荐效果得到显着提升。随着模型的不断优化,仅仅依靠场景中的数据来优化模型结构和特征变得越来越困难。在淘宝这样的大型电商平台上,为了满足不同用户的多样化需求,出现了一系列大小不一的推荐场景,比如信息流推荐(首页猜你喜欢什么)、好品、购后推荐、聚划算等。这些场景共享淘宝商品体系,但在具体的商品选品池、核心用户、业务目标等方面存在显着差异,不同场景的规模差异较大。我们的场景有好货是淘宝精选商品的导购场景。与信息流推荐、主搜等场景相比,规模相对较小。因此,如何利用迁移学习、跨域推荐等方法来提升模型效果一直是货物分拣模型优化的重点之一。虽然淘宝不同业务场景下的商品和用户有重叠,但由于场景差异显着,信息流推荐等大场景的排序模型直接应用于商品好的场景效果并不好。因此,团队在跨域推荐方向上进行了相当多的尝试,包括利用预训练-微调、多场景联合训练、全局学习等一系列已有的方法。这些方法要么效果不够明显,要么在实际在线应用中存在相当多的问题。持续迁移学习项目是针对这些方法在业务中应用中出现的一系列问题而提出的一种简单有效的新型跨域推荐方法。该方法将连续预训练的源领域模型的中间层表示结果作为目标领域模型的附加知识,在淘宝好货推荐排名中取得了显着的商业效果。本文的详细版本,ContinualTransferLearningforCross-DomainClick-ThroughRatePredictionatTaobao,已经发表在ArXivhttps://arxiv.org/abs/2208.05728。方法?现有工作及其不足分析现有学术界和工业界的跨域推荐(Cross-DomainRecommendation,CDR)相关工作可分为两类:联合学习(JointLearning)和预训练-微调(Pre-培训和微调)。其中,联合训练方法同时优化源域(SourceDomain)和目标域(TargetDomain)模型。但是这类方法在训练时需要引入源域数据,而源域样本通常都比较大,因此会消耗巨大的计算和存储资源,很多小企业无法承受如此大的资源开销。另一方面,这类方法需要同时优化多个场景目标,场景之间的差异也可能带来目标冲突的负面影响。因此,预训练-微调的方式在业界的很多场景都有更广泛的应用。工业推荐系统的一个重要特点是模型训练遵循持续学习(ContinualLearning)范式,即模型需要使用最新的样本,通过离线增量更新(IncrementalLearning)或在线学习的方式学习最新的数据(在线学习)分布式。对于本文研究的跨域推荐任务,源域和目标域的模型遵循持续学习的训练方式。因此,我们提出了一个将在学术和工业领域都有广泛应用的新问题:持续迁移学习,定义为将知识从一个随时间变化的领域转移到另一个也随时间变化的领域。我们认为现有的跨领域推荐和迁移学习方法在工业推荐系统、搜索引擎和计算广告中的应用应该遵循连续迁移学习范式,即迁移过程应该是连续的、多次的。原因是数据分布变化很快,只有不断迁移才能保证稳定的迁移效果。结合这个行业推荐系统的特点,我们可以发现在实际应用中预训练-微调的问题。由于源域和目标域的场景差异,通常需要大量的样本对源域模型进行微调以获得更好的结果。为了实现持续的迁移学习,我们需要每隔一段时间使用最新的源域模型进行微调,导致非常巨大的训练成本,而且这种训练方式也很难上线。此外,用大量样本进行微调也可能使源域模型忘记保留的有用知识,避免模型的灾难性遗忘(CatastrophicForgetting)问题;使用源域模型参数替换目标域中已经学习到的原始参数也是可以的。丢弃了原始模型历史上获得的有用知识。因此,我们需要设计一种更高效的适用于行业推荐场景的连续迁移学习模型。本文提出了一种简单有效的模型CTNet(ContinualTransferNetwork,连续传输网络)来解决上述问题。不同于传统的预训练-微调方法,CTNet的核心思想是不遗忘和丢弃模型在历史上获得的所有知识,保留原始源域模型和目标域的所有参数模型。这些参数存储的是经过很长时间的历史数据学习得到的知识(比如淘宝有好货的精化模型已经连续增量训练了两年多)。CTNet采用简单的双塔结构,使用轻量级的Adapter层映射ContinuousPre-trained源域模型的中间层表示结果,作为目标域模型的附加知识。与预训练-微调方法需要回溯数据以实现连续迁移学习不同,CTNet只需要增量数据进行更新,从而实现高效的连续迁移学习。该方法不需要使用大量的源域样本,不受源域场景目标的影响。它只需要增量数据就可以实现持续的迁移学习。联合训练不是pre-training-fine-tuning就是本文提出的CTNet是否是。表1:CTNet和当前一些跨域推荐模型的比较?问题定义本文讨论了连续迁移学习的新问题:给定源域和目标域随时间连续变化,连续迁移学习(ContinualTransferLearning)希望能够使用历史或当前获取的源和目标领域知识提高对未来目标领域的预测准确性。我们将连续迁移学习的问题应用于淘宝的跨域推荐任务。该任务具有以下特点:不同推荐场景的规模差异很大,可以利用在更大源域训练的模型的知识来提高目标域的推荐效果。不同场景下的用户和商品共享同一个大锅。但由于所选产品池、核心用户、图文等展示效果不同,不同场景下存在明显的领域差异。所有推荐场景的模型都是基于最新的数据不断增量训练的。图1:模型部署示意图上图展示了我们的方法在线部署。源域模型和目标域模型都是在时刻之前仅使用各自场景的监督数据单独连续递增训练的。时不时地,我们在目标域上部署一个跨域推荐模型CTNet,它会在不忘记历史上获得的知识的情况下,在目标域数据上继续增量训练,同时不断地从源域中学习最新的迁移知识模型。?连续传输网络模型(CTNet)图2:连续传输网络CTNet如图2所示,我们提出的连续传输网络(CTNet)模型将源域模型嵌入到目标域的原始微调模型中所有的CTNet的特征及其网络参数形成一个双塔结构,其中CTNet的左塔是SourceTower,右塔是TargetTower。与仅使用源域模型进行最终评分或仅使用一些浅层表示(例如Embedding)的常见方法不同,我们使用轻量级的Adapter网络来集成源域模型MLP(尤其是源域MLP)的所有中间隐藏层。将深层包含的user和item的高层特征交互信息表示结果映射到目标推荐域,并将结果添加到TargetTower对应层(下式表示)。提高CTNet效果的方法是利用MLP中深度表示信息的迁移,借鉴GatedLinearUnits(GLU)的思想,Adapter网络采用门控线性层,可以有效实现对特征的自适应选择sourcedomainfeatures.模型中有用的知识会被迁移,过滤掉不符合场景特征的信息出去。由于源域模型持续使用最新的源域监督数据进行持续的预训练,所以在我们的训练过程中,SourceTower也会不断加载最新更新的源域模型参数,并在反向传播过程中保持固定,从而保证了连续迁移学习的有效进展。因此,CTNet模型非常适合持续学习范式,使目标领域模型能够不断学习源领域模型提供的最新知识,以适应最新的数据分布变化。同时,由于模型只在目标域数据上进行训练,保证了模型不受源域训练目标的影响,完全不需要源域数据训练,避免了大量的存储和计算开销。另外,这样的网络结构采用加法设计的方式,使得在迁移过程中不需要改变原模型MLP层的维度,TargetTower完全由目标域的原在线模型初始化以避免随机重新初始化MLP层。最大程度的不破坏原有模型的效果,只需要少量的增量数据就可以得到很好的效果,实现了模型的热启动。我们定义源域模型为,原单域推荐的目标域模型为,新部署的目标域跨域推荐模型为,即跨域推荐模型的部署时间,模型不断地增量更新到时间。Adapter、SourceTower和TargetTower的参数分别为、和。CTNet训练过程如下:图3:CTNet训练实验?离线效果表2:离线实验结果如上表所示,我们分别对应有好货业务的两个子场景(领域B和C)表)在的生产数据集上进行了一系列离线实验,其中源域(表中的域A)为首页信息流推荐场景。可见,直接使用信息流推荐(首页猜你喜欢)对排序模型(表中SourceDomainModel)的结果进行评分,在有好货的业务中效果不佳。与在线全模型相比,绝对值为GAUC-5.88%和GAUC-9.06%,体现了场景间的差异。我们还比较了一系列传统的跨域推荐Baseline方法,包括常见的预训练-微调方法和联合训练方法(如MLP++、PLE、MiNet、DDTCDR、DASL等),提出的CTNet在两个数据集明显优于现有方法。与在线全尺寸主模型相比,CTNet在两个数据集上分别取得了GAUC+1.0%和+3.6%的显着提升。我们通过实验进一步分析了连续传输(ContinualTransfer)相对于单次传输的优势。在CTNet框架下,单次迁移带来的效果提升会随着模型的增量更新而衰减,而持续的迁移学习可以保证模型效果的稳定提升。图4:连续迁移学习相对于单迁移的优势下表展示了传统预训练-微调的效果,我们使用完整的源域模型在目标域数据上进行训练。由于领域之间的差异,需要非常大量的样本(比如120天的样本)才能将模型的效果调整到与在线全尺寸Base模型相当的水平。为了实现持续迁移学习,我们需要每隔一段时间使用最新的源域模型进行重新调整,而每次调整的巨大代价也使得这种方法不适用于持续迁移学习。此外,该方法在效果上并没有超越没有迁移的基础模型。主要原因是大量的目标域样本的训练也使得模型忘记了源域原有的知识,而最终训练出来的模型效果也类似于只在a上训练的效果目标域数据。在预训练-微调范式下,仅加载部分Embedding参数的效果优于复用所有参数(如表2所示)。表3:使用预训练的源域模型在目标域上训练的效果?上线效果CTNet最快2021年底完成,2022年2月全面上线有好货推荐业务。与上一代全量模型相比,两个推荐场景都实现了显着的业务指标提升:场景B:CTR+2.5%,追加购买+6.7%,交易笔数+3.4%,GMV+7.7%场景C:CTR+12.3%,停留时间+8.8%,追加购买+10.9%,交易笔数+30.9%,GMV+31.9%Tower和TargetTower同一部分的Attention层只需要计算一次。与Base模型相比,CTNet的在线响应时间(RT)基本一致。总结与展望本文讨论了业界如何实现持续学习框架下的跨域推荐模型,提出了一种新的持续迁移学习的跨域推荐范式,利用连续预学习的中间层表示结果训练好的源领域模型作为目标领域模型的额外知识,设计了一个轻量级的Adapter模块来实现知识的跨领域迁移,在推荐产品的排名上取得了显着的商业效果。这种方法虽然是针对好产品的业务特性实现的,但也是一种比较通用的建模方法。相关的建模方法和思想可以应用到很多其他类似业务场景的优化中。由于CTNet现有的连续预训练源域模型只针对信息流推荐场景,未来我们会考虑将连续预训练源域模型升级为全局学习预训练模型,包含更多场景,如推荐、搜索和私有域。训练模型。团队介绍我们是大淘宝科技内容算法-有好货算法团队。有好货是淘宝基于口碑推荐,旨在帮助消费者发现好东西的导购场景。团队负责好货推荐和短视频内容推荐业务的全链路算法优化,提升优质商品挖掘能力和渠道导购能力。目前主要技术方向为连续迁移学习跨域推荐、无偏学习、推荐系统全链路建模、序列建模等。在创造商业价值的同时,我们还在SIGIR、SIGIR、主要成果包括PDN、UMI、CDAN等。
