©作者 | 范欣妍
单位 | 中国人民大学
来源 | RUC AI Box
本文介绍的是推荐系统中模型自适应的相关技术。本文将主要基于近三年已发表的顶会论文(ICML、ICLR、SIGIR、KDD、WWW、AAAI等),梳理了与模型自适应相关的研究工作,介绍了模型自适应常用的技术以及在推荐系统中的应用。这些技术可能来自其他研究领域,本文也会简单介绍模型自适应在这些领域的应用。文章最后列出了一些近期顶会的相关工作,供大家学习参考。
什么是模型自适应(Model Adaptation)
模型自适应(Model Adaptation,简称MA)目前在多个领域已经成为研究热点。它的目标是在使用源训练数据和目标数据来最大化目标任务的表现。如下图所示,我们在丰富的源数据/训练数据上训练好一个原始模型(Original Model),在应用阶段用额外的任务相关的数据调整模型(Adaptation),得到适应后的模型(Adapted Model)来更好的适应目标任务/目标数据。模型自适应可以看做迁移学习的一种方式。考虑到训练数据和测试数据之间存在分布的不一致,如何利用少量的自适应数据(Adaptation Data)使源模型泛化到目标任务是一项关键挑战。
目前的推荐系统服从“Offline Training”->“Online Serving”的结构,这种框架假设在在线服务时对于用户的不同请求的数据的分布是稳定的,且与线下训练模型时的数据分布是一致的。然而这种假设在现实中并不总是成立的。例如,受时效性的影响,推荐系统中的召回模块给出的数据分布是随着时间不断变化的,比如在新闻推荐中,选举期间召回的政治类新闻占比大,奥运会期间则体育类新闻更多;此外用户的请求也可能来自不同的领域,例如在电商平台,同一个用户可能会输入查询词“裙子”或“手机”,不同的请求下得到的数据分布不同,甚至与训练用的数据分布也不同。对于推荐系统中的这种动态服务(Dynamic Serving)需求,一个解决上述问题的思路就是使用模型自适应(MA)。
MA有三个典型的应用场景:
跨领域推荐【Cross-Domain Recommendation,包括单一目标域(single target domain)的传统跨领域推荐和多域(multiple domains)的多领域推荐】:目前的大型推荐系统通常服务于多个不同的域(例如新闻网页中的「热门新闻推荐板块」和「政治新闻栏目」),如果对每个域都训练一个模型代价太大;而且一些域的数据很稀疏,无法有效的训练好一个模型。一个好的思路是在混合多个域包含丰富信息的大数据集上训练一个模型,然后根据目标域的数据做adaptation,自适应地应用到不同的场景。
在线服务【Online Service】:线上应用线下已经训练好的推荐模型进行服务时,往往因为数据分布不一致(offline-online inconsistency)导致在线服务效果不好。频繁收集线上数据并在线下重新训练模型并不是一个高效的办法。一个比较自然的想法是应用模型自适应,通过捕捉线上数据的分布特征,调整原始模型,来适应到线上场景,减轻线上线下数据不一致带来的负面影响,以达到更好的线上服务效果。
用户冷启动【Cold-Start】:用户冷启动问题是推荐系统中最重要的挑战之一,它是指向新/冷用户推荐商品的任务,该用户的交互记录在系统中非常少。如何从以往不同的用户的交互数据学到一个模型,使得面对新的用户时能够借助以往学习的知识以及少量的样本快速适应到新用户的推荐任务中,在初始给出好的推荐来更好地留住用户,也是模型自适应一个重要的应用场景。
MA在其他研究领域的一些典型应用:
在NLP中,目前一个通用的范式是pre-train+fine-tune。先用大语料训练一个模型,然后使用下游数据对预训练好的语言模型进行微调,让模型适应到不同的下游任务。这种fine-tune的框架也可以看做是一种模型自适应。
在CV中,有一项任务是visual reasoning answer,即看图回答所给问题。模型需要根据问题来提取图片中需要的特征进行计算,不同的问题提取的特征应该不同。一些研究提出根据不同的问题,对模型参数做出自适应地调整,从而做出不同的回答。
在Speech中,自定义语音(Custom voice)是商业语音平台中的一种特定文本到语音的服务,该任务需要使用目标用户的少量语音调整一个训练好源模型,来自适应地合成目标说话者的个人语音库。
相关工作
TL针对源任务训练模型,旨在提高模型在不同但相关的目标域/任务上的性能。Pre-train+fine-tune是迁移学习的常用策略,其中源域和目标域具有不同的任务且目标域的数据在训练时可以被用到。但是当目标域数据很稀疏时,传统的pre-train+fine-tune范式容易产生过拟合。后文将介绍的一些高效finetune的MA方法能有效避免这个问题。
DA是一种特殊形式的迁移学习(直推式迁移学习),是在一个包含丰富标签信息的源数据上训练一个模型,能够很好的泛化到目标域。在DA中,目标域和源域的分布不同;且不一定需要根据目标域对训练好的模型做修改。本文的MA强调的是根据目标数据(可能来自与源数据来自同一个域,也可能不同;可能很大,也可能很小,例如冷启动时的一个用户)对模型做调整,适应到目标任务。DA可以看做本文MA的一种情况。
MTL通过同时联合训练多个相关任务来优化模型。由于相关任务之间的知识共享,该模型为特定任务学习了更广阔的视角,可以更好地泛化。多任务学习可以在多个相关领域进行训练,以学习对每个原始领域都良好的模型,从而应用到多领域学习(例如,跨领域推荐),但并不在于增强对新任务/新数据的适应能力。
OL并不是一种模型,而是一种模型的训练方法,OL要求数据以流的方式顺序到来,并且能够根据线上的反馈数据,实时快速地进行模型调整,使得模型及时反映线上的变化,提高线上预测的准确率。它的流程包括:将模型的预测结果展现给用户,然后收集用户的反馈数据,再用来训练模型。与MA不同,OL是一个不断更新模型的过程,且每次的更新是在获得真实反馈之后;而MA更强调如何在将预测结果展示给用户前,根据目标任务的数据对一个已经训练好的模型做调整(adaptation)。
本文梳理了与模型自适应相关的近期的研究工作,目前在推荐领域中涉及到的Model Adaptation的主要技术大致可以分为以下三类:
1. Parameter Patch:这类方法的核心是在原始网络中插入一些参数补丁,根据目标域的数据训练/调整补丁的参数,来达到自适应到目标任务的效果;
2. Feature Modulation:这类方法的假设是在源域上学到的表示与目标域不在同一个空间,因此他们关注于如何使用目标域的数据对原有模型得到的特征表示变换到目标域空间中;
3. Meta Learning:这类方法的目标是将task视作样本,通过对多个task的学习,以使训练好的模型能够根据少量数据快速适应到新的task,从而做出准确的学习。目前主要应用在冷启动任务中。
下面将对这三类Adaptation的方法进行介绍。
Parameter-Efficient Transfer from Sequential Behaviors for User Modeling and Recommendation. SIGIR 2019.
许多的推荐系统为用户项交互序列建模, 但很少有人尝试迁移模型来服务于不同的下游任务。这篇文章的任务:在具有丰富序列交互信息的源域上学习一个通用的用户表示模型,并将其迁移到目标域上的各种任务中(在目标域中,用户是冷的或新的)。
pre-train + fine-tune是实现适应下游任务的一个简单有效的方法,但是作者发现:1)fine-tune每个任务的附加输出层,在推荐场景中表现不佳;2)fine-tune最后(几个)隐藏层与输出层一起,表现良好但是需要需要大量的工作来确定fine-tune哪几层;3)fine-tune整个网络不高效,而且如果目标域的数据比较稀疏的时候,fine-tune整个网络容易产生过拟合现象。
本文提出的高效fine-tune的灵感来自于Adapter-Tuning in NLP,这篇工作的思路是将 Adapter (下图中黄色方块,为bottleneck状的两层FFN网络)加入到 Transformer 中,在针对某个下游任务微调时,仅仅改变 Adapter 的参数。
BERT and PALs: Projected Attention Layers for Efficient Adaptation in Multi-Task Learning. ICML 2019.
K-ADAPTER: Infusing Knowledge into Pre-Trained Models with Adapters. AAAI 2020.
Pretrained Transformers As Universal Computation Engines. 2021.
Meta-Learning for User Cold-Start Recommendation. IJCNN 2019. (与MeLU类似,使用MAML的框架,但是对local更新参数时的步长做了限制,步长与global的更新步长有关。)
Fast Adaptation for Cold-Start Collaborative Filtering with Meta-learning. ICDM 2020. (CF中引入meta learning,同时提出了动态子图采样的方法,对于新用户能够自适应生成当前的任务表示。)
Personalized Adaptive Meta Learning for Cold-Start User Preference Prediction. AAAI 2021. (当用户偏好差异较大时MAML很难对不同用户都能做到快速更新,本文提出了一种个性化的自适应学习速率的元学习方法,给每个用户提供个性化的学习率,提高MAML的性能)
Nonintrusive-Sensing and Reinforcement-Learning Based Adaptive Personalized Music Recommendation. SIGIR 2020. (在音乐推荐系统中使用强化学习动态适应当前用户的偏好。)
MetaSelector: Meta-Learning for Recommendation with User-Level Adaptive Model Selection. WWW 2021.(使用来自所有用户的数据对一组推荐模型进行训练,在此基础上通过元学习对模型选择器进行训练,根据用户特定的历史数据为每个用户适配到最佳的单一模型。)
A User-Adaptive Layer Selection Framework for Very Deep Sequential Recommender Models. AAAI 2021. (一个自适应的序列化模型推理框架,学习为每个用户自适应地跳过原有模型中非活动的隐藏层,每个用户做推理时保留的参数是不同的。类似于动态蒸馏。)
Learning Personalized Itemset Mapping for Cross-Domain Recommendation. IJCAI 2020. (使用两个生成器来构建用户在两个不同域中的行为随时间变化的双向个性化项集映射,并不断优化生成的item集合与实际交互的item集之间的距离,缩小源域和目标域的差距。)
Personalized Transfer of User Preferences for Cross-domain Recommendation. WSDM 2022. (用辅助源域中的冷启动用户之间的交互可以帮助目标域中的冷启动推荐。大多数现有方法建模一个公共偏好桥接器(preference bridge),为所有用户迁移偏好。本文则通过元学习,为每个用户生成自适应的偏好迁移函数,实现每个用户的个性化偏好转移。)
跨域推荐:
Cross-Domain Recommendation: Challenges, Progress, and Prospects.
A Survey on Cross-domain Recommendation: Taxonomies, Methods, and Future Directions.
元学习:
Meta-Learning in Neural Networks: A Survey.
领域自适应:
A Survey of Unsupervised Deep Domain Adaptation.
Neural Unsupervised Domain Adaptation in NLP--A Survey.
领域泛化:
Generalizing to Unseen Domains: A Survey on Domain Generalization.
特别鸣谢
感谢 TCCI 天桥脑科学研究院对于 PaperWeekly 的支持。TCCI 关注大脑探知、大脑功能和大脑健康。
更多阅读
#投 稿 通 道#
让你的文字被更多人看到
如何才能让更多的优质内容以更短路径到达读者群体,缩短读者寻找优质内容的成本呢?答案就是:你不认识的人。
总有一些你不认识的人,知道你想知道的东西。PaperWeekly 或许可以成为一座桥梁,促使不同背景、不同方向的学者和学术灵感相互碰撞,迸发出更多的可能性。
PaperWeekly 鼓励高校实验室或个人,在我们的平台上分享各类优质内容,可以是最新论文解读,也可以是学术热点剖析、科研心得或竞赛经验讲解等。我们的目的只有一个,让知识真正流动起来。
📝 稿件基本要求:
• 文章确系个人原创作品,未曾在公开渠道发表,如为其他平台已发表或待发表的文章,请明确标注
• 稿件建议以 markdown 格式撰写,文中配图以附件形式发送,要求图片清晰,无版权问题
• PaperWeekly 尊重原作者署名权,并将为每篇被采纳的原创首发稿件,提供业内具有竞争力稿酬,具体依据文章阅读量和文章质量阶梯制结算
📬 投稿通道:
• 投稿邮箱:hr@paperweekly.site
• 来稿请备注即时联系方式(微信),以便我们在稿件选用的第一时间联系作者
• 您也可以直接添加小编微信(pwbot02)快速投稿,备注:姓名-投稿
△长按添加PaperWeekly小编
🔍
现在,在「知乎」也能找到我们了
进入知乎首页搜索「PaperWeekly」
点击「关注」订阅我们的专栏吧