跳转至

Mirroring Users: Towards Building Preference-aligned User Simulator with User Feedback in Recommendation

会议: ACL 2026
arXiv: 2508.18142
代码: https://github.com/Joinn99/UserMirrorer
领域: 用户仿真 / 推荐系统 / RLHF / LLM 数据蒸馏
关键词: 用户模拟器、推荐系统、不确定性分解、DPO 偏好对齐、决策过程蒸馏

一句话总结

作者把推荐系统里的"用户反馈日志"重写成一个 LLM 能理解的"用户记忆 + 曝光列表"统一仿真场景,再用 EKB 消费者决策模型生成显式的 chain-of-thought 决策过程作为"clarification",通过不确定性分解 + 拒绝采样蒸馏出 10K 高质量 SFT/DPO 数据,让 3B 的 Llama 用户模拟器在 8 个领域的真实用户行为预测上超过 GPT-5 和 Gemini-2.5-Flash。

研究背景与动机

领域现状:推荐系统迭代离不开用户反馈,但线上 A/B 测试周期长、有隐私限制;学术界因此转向 user simulator——构造"用户数字孪生"在离线复现真实行为。早期是规则 / RL 模拟器,近年用 LLM agent 加 prompt engineering 模拟用户决策。

现有痛点:(1) 现有 LLM 模拟器几乎不在真实用户反馈上 fine-tune,导致对任务的对齐很弱;(2) 想做好必须用 GPT-4 级别大模型,规模化到亿级用户的成本不可承受;(3) 原始用户反馈本身有三个特性让 fine-tune 很难——模糊(没有决策上下文,光看"点击"不知道为什么点)、噪声大(误点、刷量)、体量巨大(百万级日志里筛选高质量样本是个新问题)。

核心矛盾:高质量决策推理只能靠强 LLM 生成,但部署又要求小模型;如何把强 LLM 的决策能力"蒸馏"成轻量 LLM,且数据本身的噪声/模糊也得同时治理。

本文目标:用一套统一框架把 RS 日志变成可训练的"场景—决策—行为"三元组,并自动挑出"对齐效果最大化"的子集。

切入角度:消费者行为学里的 EKB 模型(Engel-Kollat-Blackwell)天然刻画了 stimulus → knowledge → evaluation 的购买决策链条;用强 LLM 按 EKB 生成显式决策过程,相当于给每条样本加 "clarification",从而能用 Hou et al. 2024 的 input-clarification 框架做不确定性分解,自动识别"对弱模型最有训练价值"的样本。

核心 idea:用 EKB 决策过程当 clarification + 用强弱模型的 epistemic uncertainty 差挑难样本 + 拒绝采样去噪 + DPO 偏好对齐,把 16K 候选场景蒸馏到 10K 高质量数据。

方法详解

整体框架

UserMirrorer 是端到端的"数据构造 + 模型训练"框架:(1) 把 8 个领域的 RS 日志(MIND/Amazon/MovieLens/Steam/Goodreads/MobileRec/LastFM/KuaiRec2)转成统一仿真场景 \(\bm{X}=\text{Prompt}(\bm{M},\bm{L})\)\(\bm{M}\) 是用户记忆(profile + 历史),\(\bm{L}\)\(N+1\) 长曝光列表,每个 item 打 [A]/[B]/[C] 标签;(2) 用 Qwen2.5-32B(强)和 Llama-3.2-3B(弱)各采样 10 个 EKB 决策过程,用拒绝采样配对作为 chosen/rejected;(3) 对 Llama-3.2-3B 先 SFT 再 DPO,得到部署级的 3B 用户模拟器。

关键设计

  1. EKB 决策过程生成(Decision-process Generation as Clarification):

    • 功能:给每条 \((\bm{M}, \bm{L}, a)\) 样本补一段显式的"为什么这个用户会点 [C]"的决策推理。
    • 核心思路:把 EKB 模型改造成三阶段——Stimulus(识别触发用户行为的外部时空/社交因素和内在需求/情绪)、Knowledge(从曝光列表抽取相关属性)、Evaluation(用直觉式或逻辑式风格评估候选行为,对应 Kahneman 的"系统 1/系统 2")。然后让强 LLM 按这三步先生成决策过程 \(\bm{D}\),再预测动作 \(\bm{Y}\)
    • 设计动机:在 Hou et al. 2024 的框架里,clarification 能把总不确定性分解为 aleatoric(数据本身模糊)和 epistemic(模型能力不足);EKB 决策过程刚好是"用户为何这么选"的合理 clarification,既补充了上下文,又让模型可以反过来量化 epistemic uncertainty。
  2. 基于不确定性的难样本筛选(Uncertainty-based Distillation):

    • 功能:从 16K 候选场景里挑出"强模型胸有成竹但弱模型抓瞎"的 case 留给训练,跳过太简单或太离谱的。
    • 核心思路:分别用强/弱 LLM 生成 \(N=10\) 个决策过程,让弱 LLM 在两种 \(\bm{D}\) 条件下分别预测行为,计算 \(\Delta_{EU}(\bm{X}, (A,B)) = \mathbb{E}_{P(\bm{D}_A|\bm{X})}\mathcal{H}(P(\bm{Y}|\bm{X}\oplus \bm{D}_A)) - \mathbb{E}_{P(\bm{D}_B|\bm{X})}\mathcal{H}(P(\bm{Y}|\bm{X}\oplus \bm{D}_B))\)\(\Delta_{EU}\) 大意味着强模型 \(A\) 一旦给了 clarification,弱模型 \(B\) 的熵会被大幅压低——这种"信息增益"最大的样本就是最有训练价值的难样本。
    • 设计动机:不确定性差比 accuracy 差更鲁棒——直接比 accuracy 容易被随机性扰动,而熵差能精确度量"决策过程提供了多少 epistemic 信号",从而锁定那些真正需要"借助强模型推理才能 align 真用户"的场景。
  3. 拒绝采样去噪 + DPO 偏好对构造(Sampling Denoised Behaviors):

    • 功能:进一步把数据集级的噪声(误点、刷量)剔除,并构造高置信度的偏好对供 DPO 使用。
    • 核心思路:对每条难样本场景,把 10 个决策过程的预测 vs. 真实用户行为做匹配,若 10 个里没有一个和真实匹配,则整条样本视为噪声直接丢弃;剩余样本里,把"决策预测正确"的过程标 accepted、把"预测错误"的过程标 rejected,并取置信度最高的一对作为 DPO 偏好对。
    • 设计动机:直接训练所有数据会把噪声当真信号;先用"是否能解释真实行为"做数据级 sanity check,再用 chosen/rejected 显式提供"该这么推理 vs. 不该那么推理"的对比信号,相当于在 DPO 里把"内容质量"和"用户行为契合度"两个目标同时优化。

损失函数 / 训练策略

两阶段训练:(1) SFT 阶段仅用 accepted 决策过程做 next-token prediction;(2) DPO 阶段用配好的偏好对,沿用 Rafailov et al. 2023 标准公式。作为对比也试了 GRPO(Shao et al. 2024),用是否匹配真实行为做规则化 reward。最终训练用 10K 数据效果最好(再加到 40K 几乎无提升)。推理时 temperature=1.0、top-p=0.9,每条场景采 5 次取均值。

实验关键数据

主实验:用户行为预测准确率(8 个领域平均,%)

模型 规模 Overall Acc. 备注
Llama-3.2-3B (base) 3B 22.7 起点
Qwen2.5-32B-Instruct (Teacher) 32B 39.7 强教师
GPT-5 (2025-08-07) 闭源 42.2 商业旗舰
Gemini-2.5-Flash 闭源 42.5 商业旗舰
Gemini-3.0-Pro-Preview 闭源 47.7 商业最强
Llama-3B + SFT 3B 46.0 仅 SFT 已超 GPT-5
Llama-3B + SFT + GRPO 3B 52.7 RL 进一步提
Llama-3B + SFT + DPO 3B 55.0 超 Gemini-3.0-Pro 7.3 点
Qwen2.5-3B + SFT + DPO 3B 54.7 跨骨干同样有效

消融实验:数据选择策略(MIND / Synthetic Overall, %)

策略 MIND Acc. Synthetic Overall
Llama-3B base 19.9 22.7
Random (w/o Decisions) 25.7 48.3
Random (w/ Decisions) 31.4 53.9
High Accuracy filter 32.4 53.3
Low Accuracy filter 30.9 54.5
Diff. Accuracy filter 30.1 53.9
IFD Score 29.9 52.7
Ours (Uncertainty + Rejection) 34.0 55.0

关键发现

  • EKB 决策过程是决定性贡献:把"随机选无决策"换成"随机选有决策"就从 25.7 → 31.4(MIND),说明显式 chain-of-thought 即使不挑样本也能拉一大截。
  • 不确定性差 > accuracy 差:所有 accuracy-based 启发式(high/low/diff)和 IFD 都不如基于 epistemic uncertainty 差的筛选,证明 entropy 差比硬正确率更能锁定有训练价值的难样本。
  • DPO > GRPO:DPO 55.0 vs GRPO 52.7,作者认为 GRPO 的 binary reward 太粗糙;偏好对的连续监督信号在用户行为这种"软"任务上更稳。
  • 3B 反超 47B/GPT-5:本质是真实用户反馈里有 base LLM 学不到的"领域 implicit preference",强模型推理强但对齐弱;先用强模型推理 + 真用户反馈过滤 + 小模型 DPO 是个高性价比的"蒸馏+对齐"组合。
  • 下游推荐增益显著:拿模拟反馈给 LightGCN/DiffRec/SASRec/NARM 做增量训练,在 Movielens 上 MRR@5 最高 +45.3%(DiffRec),说明仿真信号能真正反哺推荐模型。

亮点与洞察

  • 把"决策过程"当成 clarification 的二次利用:原本 Hou et al. 2024 只用 clarification 做不确定性估计,这里巧妙地把同一段决策过程同时用于 (a) 训练时的 SFT 监督信号、(b) DPO 偏好对的对比、(c) 数据筛选的不确定性度量——一份数据三个用途,复用率非常高。
  • EKB 模型这种"古典消费者行为学"被有效地移植到 LLM agent:相当于给 LLM 决策注入了人类心理学的归纳偏置(stimulus→knowledge→evaluation),写 chain-of-thought 比让 LLM 自由发挥要稳定得多;这条思路在其它需要建模"为何如此选"的任务(dialogue policy / NPC / 用户答题)都能复用。
  • 数据筛选用熵差而非 accuracy 差:对于"答案有随机性"的对齐任务,这是个普适 trick——直接用 logits 熵能避开 ground truth 噪声的影响。

局限与展望

  • 作者承认:当前仅支持纯文本,没接入多模态(短视频、音乐封面这些场景就受限);只建模"用户看到并交互",没建模"用户看到但不交互/直接离开"这种 implicit feedback。
  • 个人观察:EKB 模型预设了一个"理性消费者"假设,对刷视频、刷信息流这种冲动决策可能不够贴合;当下采样到 10K 是因为再多边际效益递减,但能否在跨领域 scale up 到 millions 还未验证。
  • 改进思路:把决策过程做成"层次化"(先粗后细),结合 process reward model 给每个 EKB 阶段独立打分;或在 DPO 里替换为 step-wise DPO,让 stimulus/knowledge/evaluation 三步独立对齐。

相关工作与启发

  • vs AgentCF / Agent4Rec / RecMind:他们都靠 prompt engineering + agent memory 模拟用户,不 fine-tune LLM,模拟效果天花板被 base LLM 卡死;UserMirrorer 把真实反馈做成 SFT+DPO 数据,3B 模型反超 GPT-5。
  • vs LLaVA-Critic / UnifiedReward 这类 reward model:他们做的是"评分对齐",UserMirrorer 做的是"行为对齐";但都用到了"质量过滤后的少量数据 + DPO"的同款范式,再次印证 quality > quantity。
  • vs Hou et al. 2024 (Input Clarification Ensembling):原作用 clarification 做 LLM 不确定性估计;本文把它具象化为 EKB 决策过程并落到 RS 用户模拟,是一个"理论工具落地到具体场景"的优雅迁移。

评分

  • 新颖性: ⭐⭐⭐⭐ EKB + 不确定性分解 + 拒绝采样三件套组合很巧,单点都不算颠覆但合起来非常有"工程美感"。
  • 实验充分度: ⭐⭐⭐⭐⭐ 8 个领域 + 4 个推荐 backbone + 6 种筛选基线 + 数据 size 消融,覆盖面非常完整。
  • 写作质量: ⭐⭐⭐⭐ 动机推导清晰,公式严谨,章节衔接顺畅;只是 EKB 的引入对非心理学背景读者稍突兀,需要查资料。
  • 价值: ⭐⭐⭐⭐⭐ 直接给出能部署的 3B 模拟器 + 公开数据集 + 框架代码,对 RS / agent / data distillation 社区都有可复用价值。