← 返回 PaperDaily
大模型与智能体
人大&阿里联合提出PSD:零额外参数的自蒸馏框架
序列推荐通常只用one-hot标签训练,浪费了用户序列中大量的“未来”信息。本文核心想法极其简洁:让同一个Transformer模型同时担任教师和学生——教师看未来,学生只看过去,通过门控蒸馏只传递“可达”的知识。不需要额外参数、不需要预训练教师、不改推理过程,在SASRec、BERT4Rec、UniSRec三大骨干上平均提升19.8%,远超现有蒸馏策略。强
龙哥读论文
发布于 2026-09-05 00:31:11
阅读 4
查看原文
原论文信息如下:
用“未来”教模型?序列推荐的新思路
龙哥导读时间:你有没有想过,一个推荐系统在训练时偷偷看到了用户“未来”会点什么,但却不能把未来当作输入塞进去——这听起来就像考试前老师给你看了答案,但规定你必须用过去学过的知识推导出来。没错,人大、新国大和阿里这篇论文就是干这个的:用“未来”当老师,却不让学生作弊。
序列推荐(Sequential Recommendation)的核心任务是:给定用户过去的行为序列,预测他下一步最可能交互的商品。听起来很直接,对吧?但现有的主流训练方法有一个“省料”的坏习惯:只用 one-hot 标签——也就是只告诉模型“用户点了这个商品”,而对其他成千上万个候选商品之间的相对偏好完全沉默。每个训练位置只有一个硬标签,其他商品一概不管。这就像老师只给学生批对错,却不解释为什么选A不选B。
等等,真的只能这样吗?论文作者注意到一个被忽略的宝藏:在训练时,每个交互序列的未来后缀 ——也就是目标商品之后用户实际交互的商品——也是完整可观测的。这些未来交互反映了用户意图的演化,能够降低当前目标的不确定性。比如,用户昨天买了《塞尔达传说》,今天买了Switch pro手柄,明天又买了《王国之泪》。如果你只看“昨天→今天”,模型只能学到“买了塞尔达之后会买手柄”;但如果你让模型看到“明天还买了王国之泪”,它就能更确定“今天买手柄是因为要玩后续大作”,而不是随机行为。
这种“未来信息”在训练时存在,但在线上服务时永远无法获得。作者把它称为特权信息(Privileged Information) ——学习阶段可用,推理阶段不可用。图1给出了一个诊断实验:随着未来可见比例从0%增加到100%,HR@20、NDCG@20和平均排名都有显著提升。即使只看到20%的未来,性能提升就已经很可观了。这说明未来交互中蕴含着大量因果模型无法从前缀中提取的预测信号。
图1:随着未来可见比例增加,推荐性能(HR@20、NDCG@20、平均排名)的相对提升。即使部分可见也能带来显著增益。
那能不能直接把未来当输入呢?比如像BERT4Rec那样用双向掩码做掩码预测?问题在于:训练时双向,推理时单向——这产生了严重的训练-推理不一致 。模型在训练时见过未来,推理时却看不到,它的预测路径就变了,学到的能力无法直接迁移。图1下方也暗示了这一点:给模型未来可见虽然能提升训练指标,但这不代表因果模型也能得到同样提升。那怎么办?知识蒸馏(Knowledge Distillation)提供了一个自然的思路:让一个能看见未来的“教师”模型生成软标签,去指导一个只看见过去的“学生”模型。但传统蒸馏需要额外训练一个教师,或者需要额外特征,甚至多阶段训练。能不能更优雅?本文的方法来了。
同一模型,两种视角:如何在不增加参数下获得特权信息
本文的核心创新点可以用一句话概括:同一个Transformer backbone,两种注意力掩码,同时扮演教师和学生 。这听起来简单,但实际做起来需要解决两个棘手问题。
先看基本构造。对于一个训练序列S和位置t,学生视图(Student View)使用因果掩码(Causal Mask),只能看到前缀S<t,这和推理时完全一致。教师视图(Teacher View)使用特权掩码(Privileged Mask),可以同时看到前缀和未来后缀S>t,但注意要排除目标商品本身(防止标签泄露)。两个视图共享相同的嵌入、Transformer层和输出投影。也就是说,教师并没有额外的参数,它的优势完全来自于更丰富的信息访问。
如图2所示,教师用交叉熵损失(LCET)学习预测目标商品,学生则通过KL散度损失(LKDS)去匹配教师生成的软分布。注意,学生不直接使用one-hot标签 ——它所有关于排名结构的“暗知识”都来自教师。这样一来,教师和学生在训练过程中是共同演化(Co-evolving) 的:每次更新后,教师(本质上是同一套参数)的特权视角会生成新的软目标,学生再去逼近;学生变强了,教师也同时变强,因为参数共享。这避免了传统蒸馏中“静态教师跟不上学生”的问题。
图2:PSD框架概览。同一Transformer backbone在两种注意力掩码下评估:因果掩码(学生)、特权掩码(教师)。参数共享且共同演化。教师通过门控蒸馏监督学生。推理时只用因果学生。
等等,这里有一个暗坑:如果直接把教师的所有软目标都丢给学生,那意味着要求学生用过去的信息去解释只有未来才能看到的东西。这就像让一个出生在2020年的人去解释2023年的流行梗——他根本没经历过,怎么可能理解?硬学只会造成干扰。
为了提高可读性,我们先把整体训练流程的伪代码放在这里(算法1),后面再解释关键细节。
算法1:PSD训练过程。初始化参数,每步从两个掩码获取输出,计算KL散度,通过分位门控,更新EMA参数。
门控蒸馏:只传授可抵达的“暗知识”
为了解决上述问题,作者提出了一个非常聪明的优势可达门控(Advantage-Reachability Gate) 。核心思想是:只把那些学生当前就能理解 的教师信号传递过去。
具体怎么做?对于每个训练位置t,我们先计算教师分布和学生分布之间的KL散度dt。这个dt度量了“教师比学生多知道多少”。如果dt很大,通常有两种可能:1)教师的优势主要来自未来信息,学生不可能仅从前缀还原;2)模式过于复杂,学生当前能力不够。无论是哪种,强制学生学习都只会引入噪声。
门控的实现非常简洁:在每个mini-batch内,计算所有位置KL散度的第δ分位数γδ,然后只保留那些dt ≤ γδ的位置进行蒸馏。γδ是batch内动态计算的,所以门控阈值会随着训练过程和学生能力自动调整。一开始学生很弱,很多位置都被门控过滤掉;随着学生变强,越来越多的位置可以“过关”接受蒸馏。所有被门控拒绝的位置并不会完全浪费——它们依然通过交叉熵损失训练教师(监督信号来自目标商品),但它们的软目标不会传递给学生。
这个设计解决了两个关键问题:一是避免了学生被不可实现的目标带偏,二是让蒸馏的难度自适应学生的成长。整个框架不需要任何绝对阈值,是一个非常优雅的自适应机制。
动量平均教师:让自我蒸馏更稳定
参数共享虽然优雅,但带来了另一个隐患:教师不是固定的超级导师,而是和学生在同一套参数上不断变化。如果直接把当前步骤的学生参数当教师,那么教师输出的误差会通过蒸馏写回共享参数,形成自确认的反馈循环 :教师的错误被学生吸收,学生下次更新又放大了这个错误。
解决方法也很经典——指数移动平均(Exponential Moving Average, EMA) 。作者维护了一个动量教师参数θ̄,它是历史参数的平滑版本:θ̄(r) = α·θ̄(r-1) + (1-α)·θ(r)。这个EMA参数只在训练中使用,不参与梯度更新。蒸馏时,教师分布是由这个动量教师在特权掩码下生成的。由于动量参数聚合了整个训练轨迹,单步的错误被平均掉了,目标变得更稳定。这相当于给教师加上了一个“低通滤波器”,过滤掉瞬时的噪声。
注意,整个PSD框架(包括门控和动量教师)是端到端单阶段训练的,不需要预训练教师或单独热身。推理时,只使用因果掩码下的学生,模型结构和服务成本与原始backbone完全一致。
为了更直观地对比PSD与现有蒸馏方法的区别,表1列出了关键特性:PSD不需要额外参数、不需要辅助特征、不需要多阶段训练,是唯一同时满足这三个条件的。
表1:PSD与代表性蒸馏方法对比。PSD是唯一不需要额外参数、辅助特征和多阶段训练的。
实验验证:在三大骨干上全面超越现有方法
实验部分充分体现了PSD的通用性和鲁棒性。作者在三个公开基准(Amazon Video Games、Amazon CDs & Vinyl、Yelp)上测试了三种不同的backbone:SASRec(单向Transformer)、BERT4Rec(双向Transformer)、UniSRec(文本增强的预训练推荐模型)。对比的基线包括vanilla训练、RD、TCE、RCE、S4Rec和三种CSRec变体。
先看数据集统计信息(表2),三个数据集都比较稀疏(99.95%以上),长短不一。
- PSD在所有backbone和所有数据集上全面第一: 没有一次排名第二,所有指标都是第一(加粗)。在三个骨干、三个数据集、四个指标共36项对比中,PSD全部拿下最佳。
- 提升幅度大而稳定: 平均相对提升19.8%(相对最强baseline提升9.9%)。最夸张的是BERT4Rec在CDs & Vinyl上的NDCG@10提升了75.4%——这证明了当训练和推理不一致越严重时,PSD的解决方案越有效。
- 没有退化案例: 门控机制保证了即使未来信号不可靠,也不会伤害学生。PSD在所有36个设置中均优于基线,没有出现任何退化。
- 对比基线表现参差不齐: RD依赖于静态预训练教师,在SASRec上有效但在UniSRec上反而拖累(因为UniSRec本身更强了)。S4Rec仅在Yelp的BERT4Rec上表现较好。CSRec三种变体没有一个能稳定胜出。这进一步凸显了PSD自适应门控和共同演化设计的优越性。
表3:在三个数据集和三种backbone上的总体性能对比。PSD在所有设置中均取得最优(加粗)。
图3进一步展示了门控的效果:随着未来可见比例增加,教师和学生各自的性能提升曲线。注意学生(实线)的提升几乎与教师(虚线)同步增长,说明门控确实只传递了学生“可抵达”的知识。在100%未来可见时,学生和教师的差距很小,说明门控蒸馏有效压缩了特权鸿沟。
图3:在不同未来可见比例下,教师和学生的相对性能提升。学生与教师差距很小,说明门控蒸馏有效。
实验结果分析:PSD之所以能取得如此一致的提升,关键在于三个设计的协同 :双掩码共享参数实现了零额外开销的特权信息利用;分位门控自适应地过滤不可达信号,避免了负迁移;动量教师稳定了自我蒸馏的优化轨迹。与依赖外部知识源的蒸馏方法不同,PSD从数据内部挖掘监督信号,因此不会受到外部知识偏差或预训练教师能力上限的限制。特别值得指出的是,UniSRec本身已经很强(受益于预训练文本嵌入),PSD仍能带来6.6%~13.1%的提升,说明未来交互信息与商品语义信息是互补的——前者提供的是协同信号中的时序因果信息 ,后者提供的是商品本身的静态属性信息 。
龙迷三问
PSD和直接用双向模型(如BERT4Rec)有什么本质区别? BERT4Rec在训练时用双向注意力,但推理时只能用单向,这造成了训练-推理不一致。PSD则通过蒸馏的方式,让因果模型(学生)从双向教师那里学到知识,但推理时因果模型本身没有见过未来。所以PSD的学生是纯因果的,训练和推理完全一致,这是质的不同。
门控门限δ是怎么选的? 论文在{0.6, 0.7, 0.8, 0.9, 0.99, 1.0}中搜索,其中1.0代表禁用门控。实验发现δ=0.8或0.9效果最好。门控不是把高分歧的样本永久抛弃,而是动态过滤——随着学生变强,更多位置会进入门控接收蒸馏。
动量教师更新率α怎么选? 论文搜索了{0.6, 0.7, 0.8, 0.9, 0.99},最终推荐α=0.99,也就是教师更新非常缓慢,以提供稳定目标。如果α太小(如0.6),教师变化太快,稳定性不足。
如果你还有哪些想要了解的,欢迎在评论区留言或者讨论~
龙哥点评
论文创新性: ★★★★✰
将未来交互作为特权信息并通过自蒸馏教给因果模型,思路新颖。双掩码共享参数的设计简洁高效,门控机制和动量教师的结合稳扎稳打。虽然不是颠覆式创新,但方法完整、自洽,在序列推荐领域属于非常实用的改进。
实验合理度: ★★★★★
实验结果令人信服。涵盖了3个骨干、3个数据集、4个指标,共36项对比,全面第一。对比基线包括当前主流蒸馏方法,超参数调优细致。特别诚实地报告了BERT4Rec的劣势原因(训练-推理不一致),以及RD在UniSRec上退化的现象,增加了实验的说服力。
学术研究价值: ★★★★✰
揭示了“未来作为特权信息”这一普遍适用于序列预测任务的范式,对其他序列建模(如视频预测、文本生成)有借鉴意义。门控机制的设计思路也可迁移到其他知识蒸馏场景。但方法本身没有突破性理论贡献,属于强工程创新。
稳定性: ★★★★★
36项实验无退化,门控机制确保了即使未来信号不可靠也不会伤害模型。EMA教师进一步稳定了训练。方法对超参数不敏感,δ和α在一定范围内表现稳定。
适应性以及泛化能力: ★★★★✰
在三种不同类型的backbone上都有效,包括纯序列模型和文本增强模型。但方法本质依赖Transformer的自注意力机制,对非Transformer的序列推荐模型(如GRU4Rec)可能无法直接应用。不过当前主流推荐系统基本都用Transformer了。
硬件需求及成本: ★★★★★
训练时需要对同一batch做两次前向传播(教师掩码+学生掩码),训练时间大约是原来的2倍。但推理时完全不变,没有任何额外开销。线上服务成本为0,这对工业界非常友好。
复现难度: ★★★★✰
方法实现非常简单:只需要在训练时增加一个注意力掩码和一个分位数计算。论文给出了完整的算法伪代码(算法1),关键超参数也明确。但论文未提供代码开源链接,略遗憾。不过从头实现预计工作量很小。
产品化成熟度: ★★★★★
该方法可直接集成到现有的基于Transformer的推荐系统训练流程中,只需修改训练代码(增加一个掩码和蒸馏损失),不改变线上模型和推理流程。在阿里巴巴这样的场景中实用性极高。
可能的问题: 论文只在三个公开数据集上验证了效果,且这些数据集的序列长度较短(平均10-16)。在长序列场景(如新闻推荐、视频流推荐)中,未来信息的重要性可能会减弱(因为长序列中的远距离依赖可能不那么强)。另外,门控的分位数阈值δ依赖整个batch的样本分布,如果batch size很小或数据分布极端,可能不稳定。论文没有讨论batch size敏感性。
主要参考文献
[1] J. Tang et al., "Learning from the Future: Privileged Self-Distillation for Sequential Recommendation," arXiv:2607.27055, 2026.
[2] W.-C. Kang & J. McAuley, "Self-Attentive Sequential Recommendation," in ICDM, 2018 (SASRec).
[3] F. Sun et al., "BERT4Rec: Sequential Recommendation with Bidirectional Encoder Representations from Transformer," in CIKM, 2019.
[4] J. Hou et al., "UniSRec: Towards Unified Sequential Recommendation with Pre-trained Language Models," in SIGIR, 2022.
[5] G. Hinton et al., "Distilling the Knowledge in a Neural Network," in NIPS Workshop, 2015.
*本文仅代表个人理解及观点,不构成任何论文审核或者项目落地推荐意见,具体以相关组织评审结果为准。欢迎就论文内容交流探讨,理性发言哦~ 想了解更多原文细节的小伙伴,可以点击 "阅读原文", 查看更多原论文细节哦!
欢迎加入龙哥读论文粉丝群,
扫描下方二维码或者添加龙哥助手微信号加群 :kangjinlonghelper。
一定要备注:研究方向+地点+学校/公司+昵称(如 图像处理+上海+清华+龙哥) ,根据格式备注,可更快被通过且邀请进群。
『龙哥读论文』微信群目前包含:图像处理、大模型及智能体、自动驾驶及机器人、AI医疗及AI金融5个群 - 和同行一起聊PFD、PSD等前沿推荐技术,下次分享就是你的热门话题!