What Reasoning Should a Recommender Have? Designing Reasoning for Inference-Time Scaling in Recommendation
University of Glasgow
这是一篇博士论坛论文,把推荐里的推理重新定义为推理时额外计算的设计问题:关键不在 latent 还是 text、算多还是算少,而在推理 trace 是否扎根于推荐自身的信号(用户行为与物品),而不是事后编出来的语言 rationale。已完成的 RecRec 把专用推理状态和用于预测的 R 个隐兴趣解耦,用分轮深监督训练;推理时可以跑得比训练深度更深,相对最强推理基线 NDCG@10 提升 +4.3%~+14.8%。后续计划在 SID 生成式推荐上沿形式、grounding 粒度、监督来源三个维度梳理设计空间,并建立算力对齐的评测协议。
RecSys 2026 博士论坛论文(6 页,University of Glasgow,作者 Wenhao Deng,导师 Joemon M. Jose)。已完成部分是 RecRec(RecSys 2026 full paper,arXiv 2607.12945);SID 生成式推荐(RQ2)与算力经济学(RQ3)仍处于计划阶段。
核心思路
LLM 能用推理时的额外计算换精度,最常见的形式是 chain-of-thought。作者认为,语言只是载体,起作用的是计算本身:在参数量固定时,在输入和答案之间多算几步,把答案打磨好再提交。推荐系统很适合讨论这一点,因为推理本来就不必用文本承载,它可以跑在隐状态里,也可以跑在离散码上。
作者把设计选择拆成四个:
- 形式:latent、文本还是混合。
- 算多少:更多计算并不总有用,推荐里推理步数增加会先涨后平,再往后反而变差(overthinking)。
- 怎么用:串行地反复细化同一个答案,或者并行生成多个候选再挑选。
- 扎根于什么:作者认为这是推荐场景里最先要回答的问题。常见做法是把用户历史和目标物品交给 LLM,让它解释用户为什么会选这个物品,再拿这些 trace 去训练推荐模型学推理。这类 rationale 是在答案已知之后写的,读起来通顺,拟合的却是答案,而不是背后的行为。
所以作者主张,trace 要扎根在推荐系统真正拥有的信号上,也就是用户行为和物品本身。至于用什么形式承载,由任务决定,不预先指定。
论文用三个研究问题展开:
| RQ | 场景 | 问题 | 状态 |
|---|---|---|---|
| RQ1 | 传统序列推荐 | 推理 trace 怎么设计 | 已完成(RecRec) |
| RQ2 | SID 生成式推荐 | 哪种 trace 设计是这个任务原生的 | 进行中 |
| RQ3 | 算力经济学 | 相同预算下哪种形式最划算,以及怎么在算力对齐下比较 | 计划中 |
整体实现思路
RQ1:RecRec。 作者先看前作的问题。ReaRec 把推理 token 拼接到输入序列后面,LARES 在全部历史隐状态上迭代一个共享块。无论推理多少步,两者的预测最后都塌缩成一个向量,推理和预测共用同一个表示。
问题出在推荐的打分方式上:分数是 user 表示和 item embedding 的内积。如果推理直接改写这个用于预测的向量,它只能在内积几何已经能到达的范围里移动。RecRec 因此把两者拆开:
- 推理状态:只负责中间计算,从不直接预测,可以自由演化;
- 隐兴趣:多个兴趣槽,保持与 item embedding 兼容,只接收推理状态”提交”回来的结果。
| 方法 | 推理空间 | 预测用的隐空间 | 是否解耦 |
|---|---|---|---|
| ReaRec | 附加到序列后的推理 token | 最后一个推理 token(或平均) | 否 |
| LARES | 在全部 L 个隐状态上迭代 | 最后一次迭代的末位 | 否 |
| RecRec | 专用推理状态 | 专用隐兴趣 | 是 |
RQ2:SID 生成式推荐的设计空间。 在生成式推荐里,trace 不再是挂在编码器后面的隐状态,而是模型输出的一部分。作者沿三个维度梳理设计空间:
- 形式:连续向量,或离散码序列;
- grounding 粒度:在用户状态层面,还是在单个物品层面;
- 监督来源:末端的 outcome reward、每步的 process reward,或者来自已有模型的稠密分布级指导。
现有工作各自只占设计空间里的一个点。例如 STREAM-Rec 是显式离散 token 加 RL,PROMISE 是推理时搜索加学到的过程奖励。
作者认为第三个维度最能体现推荐的特点。数学和代码推理的信用分配很稀疏:outcome reward 说不清哪一步错了,PRM 又需要训练或人工标注。推荐领域则有现成的强模型可用,可以让一个训练好的推荐模型当稠密的过程级监督者,在 trace 的每个位置给出完整分布,而不只是在末尾给一个标量。作者的说法是:这个专家不是语言模型,语言模型也不是推荐专家,但推荐专家能告诉推理器每一步该关注什么。用户画像在 trace 里用连续状态还是离散码承载,作者也当作开放维度,不预设答案。
RQ3:算力经济学。 包括三部分:
- 在算力对齐(而不是步数对齐)的条件下,比较 latent 与文本 trace 的性价比;
- 想多深:按用户或请求自适应分配预算。历史短、可预测的用户,不该和历史长、意图模糊的用户付出同样的计算;
- 建立统一的算力归一化评测协议,按同一种方式报告 latency 和质量的权衡。
子模块实现(可复现细节)
以下来自本文第 4 节对 RecRec 的概述,很多超参数(R、维度、内循环结构、正则项形式)文中没有给出,需查 RecRec 全文。
Context Compressor
- 输入:冻结 backbone(SASRec 或 BERT4Rec)的隐状态 H。
- R 个可学习 query 对 H 做 cross-attention,得到 R 个隐兴趣槽,替代单一的预测向量。
- Interest Diversity Regularizer:约束各槽不塌缩到同一方向。具体形式文中未给,推断为余弦相似度或正交类惩罚。
Recursive Reasoner(reason-then-update 循环)
- 维护两个状态:推理状态 z(从不预测)和隐兴趣 I(负责预测)。
- 每一步先由 z 做若干次内循环,每次重新读 H 和当前的 I;
- 然后经 GRU 门把结论写回 I,即 I ← GRU(I, f(z))(记号为推断),让兴趣渐变而不是跳变。
- 最终用 I 与 item embedding 做内积打分。由多个兴趣槽如何聚合成最终分数,文中未说明,推断为 max 或注意力聚合。
两阶段训练与深监督
- 阶段一:联合训练 backbone 和 compressor,直接用隐兴趣做预测。
- 阶段二:冻结 backbone 和 compressor,只训练 reasoner。
- 深监督(参照 HRM):每一轮推理结束都算一次推荐 loss,而不是只在末尾算;轮与轮之间对两个状态做 detach,使每一轮都学同一件事,即改进拿到的任何状态,与之前的轮次无关。
- 调度:3 轮 × 每轮 3 步 × 每步 3 次内循环,训练深度 N = 9。
- 结果:reasoner 学到的是一个通用的改进算子,推理时可以跑超过 9 步,不需要前作那样的 RL 阶段就能做变深度推理。
实验设置与结果
数据:Amazon 2023 发布中的 S-Shop(软件)和 V-Shop(视频游戏),MicroLens-100K(短视频),Steam(游戏)。均做 5-core 过滤,全库排序,指标为 NDCG@10/20 和 Recall@10/20。文中没有给出各数据集的规模。
基线:非推理的 SASRec、BERT4Rec;推理增强的 ReaRec-ERL、ReaRec-PRL、LARES。
主结果(NDCG@10)。 “最佳基线”指每个数据集上最强的推理增强方法;RecRec 用训练深度 N=9,没有按数据集挑最佳深度。
| 数据集 | 最佳基线 | RecRec | 相对提升 |
|---|---|---|---|
| S-Shop | 0.0818 | 0.0853 | +4.3% |
| V-Shop | 0.0182 | 0.0197 | +8.2% |
| MicroLens | 0.0460 | 0.0503 | +9.3% |
| Steam | 0.0419 | 0.0481 | +14.8% |
深度扫描(图 1,N 从 0 到 16,两种 backbone,看 NDCG@20)。 作者把结果读成三个信号:
- 这条轴有回报:不挑深度,4 个数据集全部超过最强推理基线。提升最大的是历史最长的 Steam。
- 这条轴能延伸:在 3 个数据集上,推理深度超过训练深度后仍继续提升,训练深度不是上限。MicroLens 是边界案例,早早见顶之后下降。
- 第一步贡献最大:第一步就拿回了推理带来的大部分增益,后续步骤只做细化。
作者的自我判断:增益是真实的,但幅度不大。作者推测天花板不在 RecRec,而在它继承的匹配范式:无论推理多深,最后都是一个 user 向量和冻结 item embedding 的内积,推理只能细化内积的一侧。生成式推荐逐层解码 SID,把检索变成一串决策,物品库存放在模型参数里,生成过程本身就是逐步的,所以推理可以长在生成过程内部。这也是转向 RQ2 的理由。
本文没有的东西:线上 A/B、推理延迟或 FLOPs、消融实验、方差或显著性检验。
思考与可参考价值
1. 这篇论文的价值主要在观点。 实证部分只有 RecRec 的一张表和一条曲线,而且局限在传统序列推荐、学术小数据集上,绝对值很低(V-Shop NDCG@10 约 0.02)。SID 生成式推荐部分(RQ2)还没有任何实验。
2. expert-as-supervisor 最值得在电商 GR 上试。 线上已有的强模型(双塔召回、精排,或者上一版 SID 生成模型)可以对推理 trace 的每一步给出物品分布或 SID 各层码分布,用 KL 等形式做稠密的过程监督。这样既不需要 LLM 写的事后 rationale,也避开了 RL 的稀疏奖励。要注意,学生被老师的分布约束住,可能学不到超越老师的推理;可以只在前几轮施加约束,或者给约束项加权退火(推断)。
3. 解耦与深监督可以迁移到历史压缩结构上。 如果已经有 Q-Former 一类把长历史压成若干 slot 的模块,可以把 slot 当作隐兴趣,再加一个不直接出分的推理状态迭代细化 slot。训练时每轮都算 loss 并 detach,推理时按请求选深度(推断)。
4. “第一步增益最大”对上线是好消息。 如果在电商数据上同样成立,只做 1 步推理就能拿到大部分收益,延迟可控。但要先做深度扫描,排除 MicroLens 那样的过度思考。
5. 评测要算力对齐。 作者批评领域里缺少按算力归一化的比较,但 RecRec 自己也没报告算力。我们做内部实验时应当默认画”质量 vs 额外 FLOPs/延迟”曲线,并且和同算力下直接加深 backbone 的方案比较。
采纳前要核对:
- RecRec 全文的消融能否证明解耦本身有效,而不是多兴趣槽带来的增益;
- R 和内循环的开销;
- 与 ManCAR、并行隐推理等同期方法的对比结果。