Gradient-Based Diversity Optimization with Differentiable Top-\(k\) Objective¶
会议: ICLR 2026
OpenReview: cuzWopwoZG
代码: 待确认
领域: 优化 / 多目标学习 / 可微排序
关键词: 可微排序, top-k 多样性, 多目标优化, MGDA, 推荐系统
一句话总结¶
把"top-\(k\) 集合的多样性"这个本来不可导的目标,用可微排序(soft-rank)松弛成可以直接塞进梯度训练的损失,再用 MGDA 自适应地平衡"相关性 vs 多样性"两个对立梯度,从而无需改模型结构、无需后处理就能在训练里同时优化两者;在五个推荐数据集上以几乎不掉精度的代价显著提升多样性。
研究背景与动机¶
领域现状:在推荐、检索、排序这类"从大量候选里挑 top-\(k\)"的任务里,模型几乎都只奔着"相关性/准确率"去训练(用 MSE 或排序损失拟合 ground-truth 评分)。多样性只能事后补救:要么用 MMR、DPP 这类 后处理重排,对已经训好的相关性排序做二次挑选;要么用 模型专属的学习方法,把多样性目标硬编进某个特定架构里。
现有痛点:后处理方法(MMR/DPP)是 model-agnostic、好实现,但天花板被初始相关性排序卡死,而且加多样性几乎必然掉准确率——这是被反复观察到的现象(Chen et al., 2017)。学习类方法效果更好,但要么改架构、要么上对抗训练,是 model-specific 的,收敛慢、对"相关性—多样性权衡系数"极其敏感。数据侧的去偏/重加权又只针对分布偏差,并不直接对准 top-\(k\) 多样性。
核心矛盾:根子上是一个 不可导 + 多目标冲突 的双重难题。多样性定义在 topk(·) 这个离散选择算子上,没法求梯度,所以无法和相关性一起做端到端梯度优化;而即使能优化,相关性梯度和多样性梯度方向常常是对立的,简单线性加权一定会牺牲一方。
本文目标:造一个 统一、可微、模型无关 的框架,让"相关性 + top-\(k\) 多样性"能在标准梯度训练里一起优化,既支持从头训也支持在已训好的相关性模型上微调。
切入角度:作者从"可微排序"(Blondel et al., 2020 的 soft-rank)出发——既然离散排序可以被松弛成对置换多胞形的投影,那 top-\(k\) 指示函数也能被松弛成可导的软指示,多样性目标就自然变得可导。再借多目标优化里的 MGDA 来处理两个梯度的冲突。
核心 idea:用 soft-rank 把 top-\(k\) 多样性变成可微的代理目标(DDRO),并把它和相关性损失组成联合目标,用 MGDA 自适应求解权衡系数 \(\beta\),保证两个目标"共同下降"并收敛到 Pareto-稳定点。
方法详解¶
整体框架¶
方法要解决的是"如何让一个不可导、且与相关性相冲突的多样性目标,进入标准梯度训练"。整体转法是:模型先对所有候选打相关性分 \(\tilde r_u\) → 用 soft-rank 把分数转成软排名、再转成可微的 top-\(k\) 软指示 \(\tilde l_u\) → 用软指示算出可微多样性目标 DDRO → 把 DDRO(取负)和相关性损失组成联合损失 → 用 MGDA 在线求最优权衡 \(\beta^\star\) 后做梯度更新。在这套可微目标之上,作者给出两条互补的落地策略:DDT 直接改训练目标,MDR 不改目标、改数据权重。两条策略既能从头训,也能在相关性预训练模型上微调。
%%{init: {'flowchart': {'rankSpacing': 24, 'nodeSpacing': 28, 'padding': 6, 'wrappingWidth': 400}}}%%
flowchart TD
A["相关性模型 F_Θ<br/>对候选打分 r̃_u"] --> B["可微 top-k 多样性目标<br/>soft-rank → 软指示 → DDRO"]
B --> C["联合目标<br/>L=βL_rel+(1-β)L_div"]
C --> D["梯度冲突分析 + 自适应 β<br/>MGDA 闭式解 β*"]
D -->|改训练目标| E["DDT 直接多样性调优"]
D -->|改数据权重| F["MDR 元学习重加权"]
E --> G["从头训 / 微调<br/>同时高相关 + 高多样"]
F --> G
关键设计¶
1. 可微 top-\(k\) 多样性目标(DDRO):把离散选择松弛成可导代理
痛点直接:多样性定义在"被选中的 top-\(k\) 集合"上,而选哪 \(k\) 个是离散操作,挡住了梯度。先看离散版多样性——给定物品两两亲和矩阵 \(S\),top-\(k\) 集合 \(Z_u(k)\) 的多样性是平均成对不相似度
其中 \(l_u=\mathrm{topk}(\tilde r_u)\) 是 0/1 指示向量,正是它不可导。作者用可微排序把硬指示换成软指示:先把预测分数 \(\tilde r_u\) 投影到置换多胞形 \(P_m\)(所有 \((1,\dots,m)\) 排列的凸包)上,得到熵正则的软排名
再用一个缩放 sigmoid 把"软排名是否落在前 \(k\)"变成连续指示 \(\tilde l_u(i)=\sigma_\tau(k-\tilde z_u(i))\),\(\sigma_\tau(x)=[1+\exp(-x/\tau)]^{-1}\)。把 \(D_S\) 里的硬指示换成 \(\tilde l_u\) 就得到可微多样性目标 DDRO。这样有效是因为:soft-rank 保留了 \(O(n\log n)\) 时间、\(O(n)\) 空间的复杂度,且有逼近保证——当 \(\varepsilon\to 0\),软排名收敛到真实离散排名(Lemma 1);论文实验也确认 \(\varepsilon=1/n\) 时排名逼近误差几乎为零,DDRO 与离散 DRO 高度吻合。代价是 \(\varepsilon\) 必须选好:\(k\) 越大需要越小的 \(\varepsilon\),否则多样性度量会失真。
2. 梯度冲突分析与自适应 \(\beta\):用 MGDA 保证"共同下降"
有了可微目标,作者把相关性与多样性写成联合损失
实践里 \(L_{\mathrm{rel}}=L_{\mathrm{MSE}}\)、\(L_{\mathrm{div}}=-L_{\mathrm{DDRO}}\)。难点是这两个目标天然对立:相关性梯度 \(g_{\mathrm{rel}}\) 与多样性梯度 \(g_{\mathrm{div}}\) 方向不一致时,任何固定的线性组合都会偏袒一方。作者记梯度模长 \(a=\|g_{\mathrm{rel}}\|\)、\(b=\|g_{\mathrm{div}}\|\)、余弦相似度 \(\rho\),给出让组合梯度 \(g_\beta=\beta g_{\mathrm{rel}}+(1-\beta)g_{\mathrm{div}}\) 同时让两个损失都下降的 \(\beta\) 可行区间(Lemma 3:对齐时全可行,对立时区间收缩)。但仅"可行"还不够均衡,于是选最大化"每步最小下降量"的 \(\beta\),得到二目标特化的 MGDA 闭式解
这样有效在于:\(\beta^\star\) 把相关性和多样性的一阶下降量拉平,给出平衡更新,并且在递减步长下能保证收敛到 Pareto-稳定点(Corollary 4)。和"手调固定 \(\beta\)"相比,自适应 \(\beta\) 不用反复试参,且实验里 \(\beta^\star\) 始终落在 Lemma 3 的可行区间内,随训练从偏相关逐渐滑向偏多样。
3. DDT(直接多样性调优):改训练目标
这条最直接——直接对联合损失 \(L_{\mathrm{JOINT}}\) 做梯度优化,用上面的自适应 \(\beta^\star\)(或省算力时用固定 \(\beta\))更新模型参数 \(\nabla_\Theta L_{\mathrm{JOINT}}\)。它针对的痛点是"现有学习类方法要改架构":DDT 完全不碰模型结构,只在损失层加一项联合相关性—多样性目标,因此 model-agnostic,既能从头训也能微调。实验显示 DDT 在神经网络模型上多样性增益最强。
4. MDR(元多样性重加权):不改目标、改数据分布
DDT 改的是目标,MDR 换个思路:保留标准的纯相关性训练循环,但给每个用户—物品对 \((u,i)\) 学一个权重 \(w_{u,i}\in[0,1]\),优化重加权后的相关性损失
这针对的痛点是"多样性能否不靠改目标、而靠纠数据偏差获得"。做法是元学习的内外环:内环用一步更新拿到临时模型 \(\Theta'\),外环把联合损失 \(L_{\mathrm{JOINT}}\) 当 元目标,对权重 \(w\) 求梯度得到每个样本的"效用分",再归一化使一个 mini-batch 内权重和为 1——联合目标只用来更新权重,从不直接作用于模型参数。直觉是给"小众/长尾"物品加权以提高它们的曝光机会。作者用一个受控案例(所有物品评分相同但属不同多样性簇)验证:一步元更新后,权重会自动偏向"增加簇间覆盖"的物品、压低同簇冗余物品,无需任何显式簇监督。实验里 MDR 对矩阵分解这类简单低秩模型尤其受益。
损失函数 / 训练策略¶
框架对相关性损失不挑:主实验用 MSE,但任意 pointwise 或排序损失(如 BPR)都能替换。两种部署设定:(i) 从头训——相关性与多样性联合优化;(ii) 微调——在相关性预训练模型上为多样性做适配,实验表明微调能更好保住预训练模型的相关性,从头训则容易收敛到更差的稳定点。
实验关键数据¶
主实验¶
五个推荐数据集(Coat / Yahoo-R2 / Netflix / MovieLens / KuaiRec)、两类模型(MF、NCF),亲和矩阵 \(S\) 用 genre/category 的 Jaccard 相似度预计算。下表为 \(k=10\)、\(\beta=0.2\)、对预训练 MF 微调 100 epoch 的相关性—多样性对比(值越高越好,节选):
| 方法 | MovieLens 多样性 | MovieLens 相关性 | KuaiRec 多样性 | KuaiRec 相关性 | Yahoo-R2 多样性 | Yahoo-R2 相关性 |
|---|---|---|---|---|---|---|
| NMF(仅相关性) | 0.62 | 0.98 | 0.89 | 0.84 | 0.09 | 0.76 |
| DPP(后处理) | 0.98 | 0.95 | 1.00 | 0.75 | 1.00 | 0.58 |
| DGRec(图学习) | 0.73 | 0.47 | 0.91 | 0.18 | 0.33 | 0.83 |
| DDT(本文) | 1.00 | 1.00 | 0.98 | 0.95 | 0.98 | 0.85 |
| MDR(本文) | 0.97 | 0.99 | 0.97 | 0.85 | 0.86 | 0.82 |
DDT 在几乎所有数据集/指标上拿到最好或次好,关键是 多样性涨上去的同时相关性几乎不掉;而 DPP 在 Yahoo-R2 拿满多样性却把相关性砸到 0.58,DGRec 在 KuaiRec 多样性 0.91 但相关性崩到 0.18——典型的"换皮多样性"。
多样性增益随 \(k\) 与"超出目标范围"分析¶
固定 \(\beta=0.5\)、微调 10 epoch、变 \(k\in\{5,10,20,30,40\}\),报告相对相关性基线的归一化多样性增益(%):
| 设定 | 数据集 | top-\(k\)(目标内)增益 | \(k{+}1\sim2k\)(目标外)增益 | 说明 |
|---|---|---|---|---|
| NMF, \(k{=}20\) | Yahoo-R2 | 78.5 (3.8) | 47.1 (2.7) | 初始多样性极低(0.09),增益最猛 |
| NMF, \(k{=}5\) | MovieLens | 41.4 (13.1) | 25.6 (10.4) | 稀疏场景仍显著 |
| NMF, \(k{=}10\) | Netflix | 13.8 (1.0) | 4.2 (1.7) | 稠密场景 |
关键发现¶
- 增益会"溢出"到目标范围之外:只优化 top-\(k\),但 \(k{+}1\sim2k\) 这些没被显式优化的物品多样性也普遍上升,说明优化重塑了整条排序,而非只挪动被优化的那 \(k\) 个。Coat 因规模小、物品池有限,目标外增益在 0 附近波动,是个例外。
- 微调 > 从头训:微调能保住预训练模型的相关性,从头训会收敛到更差的相关性稳定点;两者多样性水平相近,提示多样性正则可能拖累从头训的相关性收敛。
- \(\varepsilon\) 是命门:\(\varepsilon=1/n\) 时 soft-rank 逼近误差近乎为零,且存在一段较大 \(\varepsilon\) 仍保持小误差(可换取数值稳定与更平滑梯度);但 \(k\) 越大需要越小 \(\varepsilon\),选错会让多样性度量误差任意大。
- 固定 \(\beta\) 的鲁棒性:recall 在很宽的 \(\beta\) 区间里低方差稳定,只有 \(\beta\to 0\)(几乎纯多样性)才明显掉精度;DDT 在神经网络上多样性优于 MDR,MDR 则对简单低秩模型更划算。
亮点与洞察¶
- 把"不可导的集合级目标"变成可微损失的范式:soft-rank + 缩放 sigmoid 软指示这套组合,本质上给所有"定义在 top-\(k\) 选择上的指标"(不止多样性,覆盖率、长尾曝光等同理)提供了可微化模板,可迁移到检索、主动学习、子集选择等任意 top-\(k\) 任务。
- 二目标 MGDA 闭式解 + Pareto 保证:把多目标优化的理论(共同下降可行区间、minimax 选 \(\beta\)、Pareto-稳定)干净地落到"相关性 vs 多样性"上,给出 \(\beta^\star=\frac{b(b-a\rho)}{a^2+b^2-2ab\rho}\) 这种可直接算的更新规则,省掉了反复调权衡系数的痛苦。
- 目标内优化带来目标外泛化:只显式优化 top-\(k\) 却能改善更深位置的多样性,这个"溢出"现象很有启发——说明梯度优化学到的是比显式目标更广义的多样性结构,而非局部 hack。
- DDT/MDR 的对偶视角:"改目标"与"改数据权重"两条路都能拿到多样性,且 MDR 对简单模型更有效——把"多样性来自目标还是来自数据偏差纠正"这个问题做成了可对比的实验。
局限与展望¶
- 多样性靠预定义亲和矩阵 \(S\):\(S\) 用 genre/category 的 Jaccard 相似度算,多样性的"语义"完全由这个先验决定;没有类别标注或类别噪声大的场景如何定义 \(S\),论文未深入。
- 评测局限在推荐:方法声称 model-agnostic、适用于一般排序/选择任务,但所有实验、数据集、baseline 都是推荐系统,跨任务(如文档检索、主动学习子集选择)的实证缺位。
- \(\varepsilon\) 敏感性是真实成本:大 \(k\) 下要很小的 \(\varepsilon\) 才能保住逼近精度,而过小 \(\varepsilon\) 又带来数值不稳,实际部署需要按 \(k\) 仔细调,论文给了趋势但没给自动选 \(\varepsilon\) 的方案。
- 从头训收敛更差:作者承认多样性正则会拖累从头训的相关性收敛,目前的优解是"先相关性预训练再微调",但这要求已有一个好的相关性模型。
相关工作与启发¶
- vs 后处理重排(MMR / DPP / DUM):它们对已训好的相关性排序做二次挑选,model-agnostic 但被初始排序质量卡死,且加多样性几乎必然掉相关性(实验里 DPP 在 Yahoo-R2 多样性满分却相关性 0.58);本文把多样性放进训练梯度里,多样性涨而相关性几乎不动。
- vs 模型专属学习方法(如 DGRec 等图模型):它们把多样性编进特定架构或上对抗训练,model-specific、收敛慢;本文不改架构、不加推理开销,可直接接入标准训练管线。
- vs 多目标优化(标量化 / 进化算法 / MGDA 应用于公平性、收益):MGDA 此前多用于"准确率 vs 公平/收益",本文首次把它用在"相关性 vs 多样性",并配上可微多样性目标,补上了 MGDA 一直没碰的多样性维度。
评分¶
- 新颖性: ⭐⭐⭐⭐ 可微 top-\(k\) 多样性 + 二目标 MGDA 的组合干净且通用,是把两条成熟技术接到新问题上的漂亮工作
- 实验充分度: ⭐⭐⭐⭐ 五数据集两模型、含 \(\beta\)/\(k\)/\(\varepsilon\) 消融与目标外泛化分析,但全在推荐域内,跨任务声称未验证
- 写作质量: ⭐⭐⭐⭐ 理论(Lemma/Corollary)与实验衔接清晰,问题—目标—方法链条完整
- 价值: ⭐⭐⭐⭐ 给"top-\(k\) 选择类指标可微优化"提供了可复用范式,对推荐去同质化有直接实用价值