机器学习笔记(18): RouteLLM

可能更好的阅读体验 Jeefy's Blog: RouteLLM

在强模型和弱模型间,通过人类偏好数据对,学习一个二元路由,可以节约 2 倍以上的成本。

\[D_{pref} = \{ (q, l_{s, \omega})\} \]

其中 \(l_{s, \omega}\) 表示偏好对的情况,也就是 \(win_s, tie, win_w\)。

  • Win Prediction Model

也就是一个估计胜率的模型:

\[\max_{\theta} \sum_{(q, l) \in D} \log P_{\theta}(l | q) \]

  • Cost Threshold

也就是通过胜率控制:

\[R^\alpha(q) = strong ~ \text{if} ~ P_\theta(win_s | q) \ge \alpha ~ \text{else} ~ weak \]

\(\alpha\) 越低,控制成本时更倾向于使用强模型。


指标:

  • \(c(R^\alpha)\) 成本通过强模型调用的次数来判断
  • \(r(R^\alpha)\) 表现通过计算平均回答质量:可能是是正确率,也可能是程序判分 。
  • PGR:通过 router 恢复了多少大模型的能力,越高越好,完全恢复时 \(PGR = 1\)

\[PGR = \frac {r(M_{R^\alpha})- r(M_w)}{r(M_s) - r(M_w)} \]

  • 为了获取 quality-cost 权衡指标,我们枚举 \(\alpha\),得到一个 \(\alpha \to c(R^\alpha)\) 的对应关系,然后计算:

\[\int_0^1 PGR(M_{R^\alpha}) {\rm d} c(M_{R^\alpha}) \]

由于非连续,所以依据对应关系采用离散化的方式,\(APGR(M_{R^\alpha}) \approx \frac 1 {10} \sum_{i = 1}^{10} PGR(M_{R^{\alpha_i}})\)


Win Prediction Model

  • SW Ranking

\[S(q, q') = \frac {\cos \langle \epsilon, \epsilon' \rangle}{\max_s \cos \langle \epsilon, \epsilon_s \rangle} \]

利用上述归一化后的相似度计算权重:

\[\omega' = \gamma^{1 + S(q, q')}, \gamma = 10 \]

然后就可以计算:

\[\begin{aligned} P_\theta(win_s | q) &= \frac {1} {1 + e^{\xi_s} - e^{\xi_w}} \\ \arg \min_{\xi_s, \xi_\omega} & \sum_{(q, l) \in D} \left[ \omega' \cdot {\rm cross-entropy}(l_, \frac {1} {1 + e^{\xi_s} - e^{\xi_w}}) \right] \end{aligned} \]

  • Matrix factorization

\[\begin{aligned} P_\theta(win_s | q) &= \sigma(\delta(M_s, q) - \delta(M_w, q)) \\ \delta(M, q) &= w_2 \cdot (v_M \odot(W_1 v_q + b)) \\ \end{aligned} \]

其中 \(W_1 \in {\mathbb R}^{d_m \times d_q}\),\(w_2, v_M, b \in {\mathbb R}^{d_m}\)

损失函数就是:

\[loss = BCE(l, P_\theta(win_s | q)) \]

  • BERT classifier

就是通过一个预训练的 BERT 模型,将 query 嵌入到一个向量中:

\[P_\theta(win_s | q) = \sigma(W \times BERT(q) + b) \]

其中 \(W, BERT, b\) 都是可训练的参数。

  • Casual LLM

就是通过在词表中新增三个 token:{win, tie, lose},然后增加开头和末尾的一点参数,然后训练即可。全量微调。


维度 SW Ranking Matrix Factorization BERT classifier Causal LLM classifier
类型 非参数 / 近邻加权 低秩双线性打分 判别式分类 生成式分类
核心机制 embedding 近邻 + 加权 Bradley–Terry 学“模型×query”质量矩阵的低秩分解 CLS 表示 + sigmoid 分类头 扩词表加 3 个标签 token,末位置 softmax
\(P(\text{win}_s\mid q)\) 参数化 \(\sigma(\xi_s-\xi_w)\),\(\xi\) 随 query 相似度现解 \(\sigma(\delta(M_s,q)-\delta(M_w,q))\),双线性 \(\sigma(Wh_{\text{CLS}}+b)\) 3 个标签 token 的 softmax
是否需训练 ❌ 无训练阶段,推理时求解 ✅ 显式训练 ✅ full fine-tuning ✅ full fine-tuning
结构先验 近邻局部性 低秩/双线性 预训练语言先验(弱) 预训练生成先验(强)
容量 极低(2 个标量/query) 低 中(~110M) 高(8B)
低数据表现(仅 \(\mathcal{D}_{arena}\)) 好,稳定优于 random 好,MT Bench 最佳之一 差,不如 random 一般,弱于 SW/MF
数据增强后 稳定提升 MT Bench 最强(APGR 0.802) MT Bench 提升最猛(+50.2%) GSM8K 最强(APGR 0.622)
对未见模型对迁移 天然不依赖具体模型身份 较好(\(v_m\) 细节论文未展开) 较好 较好
训练资源 无需训练 单卡 8GB,~10 epochs 2×L4,~2000 steps 8×A100,~2000 steps
输入长度 embedding 模型决定 embedding 模型决定 512 2048
推理开销 最高($39.26/M 请求,2.9 req/s,CPU) 低($3.32/M,155 req/s) 低($3.19/M,69.6 req/s) 中($5.23/M,42.5 req/s)
优点 简单稳定、零训练、低数据可靠 轻量、结构性好、MT Bench 性能上限高 数据够时性价比高、提升空间大 上限最高,长 query/复杂 pattern 强
缺点 依赖 embedding 质量、\(\gamma=10\) 敏感、推理最贵 未见模型 embedding 构造未交代 低数据过拟合 最吃数据和算力,低数据不稳
一句话 “像谁,就看谁的投票” “模型和 query 各学一个向量做双线性打分” “BERT 学一个 query 难度分类器” “让 Llama 直接生成胜负判断”
posted @ 2026-09-26 20:55  jeefy  阅读(4)  评论(0)    收藏  举报