跳到主要内容

偏好数据 — 引擎、界面与生意

这一章讲三件事: 一条偏好数据从哪来(谁在什么界面上点出来的)、 长什么样(打分还是排序,最后变成什么)、多少钱(外包采购的真实流程)。 这是全书最「产业实地」的一章——也是公开知识最少的一环,书里明说: 这是「公开知识里最不透明的部分」1

1. 这一章讲什么

第 04 章讲了奖励模型怎么偏好数据,这一章讲偏好数据怎么。核心张力 一句话:我们无法把人类价值写成损失函数,所以拿偏好数据当代理信号——而代理 信号的收集本身,是重资本、重组织、重细节的活,两个硬约束挂在头上:收集的操作 复杂度与成本;数据必须来自被训模型自己的生成(on-policy)1

2. 顶层全景与主走查

主走查:跟着一条真实形状的偏好数据走完一生。

第 1 步 出题:标注员写一个 prompt(或从题库取)
「帮帮我,明天要演讲,我现在很慌。」
第 2 步 生成:被训模型的当前 checkpoint 生成两条回答 A、B
(on-policy —— 必须是「这一代模型」的话,不是网上捡的)
第 3 步 标注:界面上并排显示 A、B,标注员选择
「A 远好 / A 略好 / 相当 / B 略好 / B 远好」(5 点 Likert)
并可附备注与总体评分
第 4 步 坍缩:训练时「A 略好」被折成「chosen=A, rejected=B」
—— 强度信息丢掉,只剩二值
第 5 步 入库:进入第 04 章的损失函数

图说:第 3 步的界面形状、第 4 步的坍缩,是这条数据一生中
信息损失最大的两处。(prompt 与回答为演示编的,界面选项是书里的真实刻度。)

3. 核心原理

3.1 为什么非得 on-policy

on-policy 在 RL 语境里是严格术语(数据由当前策略产生),在偏好数据语境里被 放宽成「当前模型家族的生成」——比如上一个训练阶段 checkpoint 的输出2。 为什么重要:不同模型的生成有不同的毛病分布,偏好信号只有打在你模型自己会犯 的错上才有的放矢;用一池子网上捡来的各家模型输出,信号落不到你要修的地方。 书里引的实证:on-policy 数据显著优于流行数据集那种「热门模型输出大杂烩」3

一个容易忽略的细节:chosen 不等于正确答案。偏好数据里被选中的那条,只是 「比对手好」——可能两条都不合格。书里特意点破这一点,免得读者把 chosen 当成 标准答案4

3.2 界面:一门没人好好研究的学问

数据是在界面上点出来的,而界面不是中立的量杯(第 09 章的伏笔在此兑现)。书里 给了一排真实界面5:

界面形状用在哪
Anthropic 早期双答案并排选偏好 + 备注 + 总体评分专职训练数据收集
ChatGPT beta(作者本人被 A/B 过)双答案选优线上收集
ChatBotArena / LMArena双模型对战,可投平局公开评测
Ai2 playground单条点赞/点踩线上隐式信号
Midjourney一次出四张选一张图像生成的偏好来源

书里给的反直觉例子:回答太快会让用户觉得模型笨——哪怕人人都想要快。 界面速度都能改变「偏好」,其他界面因素同理6

3.3 打分还是排序:一场数据形状的取舍

ratings(给每条打绝对分)与 rankings(给一组排相对序)是最大的分岔7:

  • 打分简单,但「4 分」在不同标注员手里含义不同;UltraFeedback 的用法:多次 打分后,最高分与随机一条低分组成偏好对;
  • 排序(Likert 刻度)是主流:5 点制(远好/略好/相当/略差/远差)或 Anthropic 早期的 8 点制——偶数刻度干脆取消「相当」,逼标注员表态8;
  • 讽刺的终点:这些精细刻度最终全部坍缩成二值喂给 Bradley-Terry 损失 (第 04 章)——8 点制的信息在训练接口处只剩「谁赢」。书里把这归为「怎么用 更丰富的信号」那个反复出现又反复无解的老问题。

多轮对话另有一层:实践中通常只对「最后一轮」收偏好;训练时把对话按轮展开成 多条样本;还有个没解决的组织问题——出题的人和标注的人要不要同一个(不同人 出题能防「出题人讨好自己」的谄媚,但多轮对话又要求实时接龙,很难拆开)9

结构化偏好是自动化的例外:数学题对/错、精确指令遵循(「每句以 g 开头的 金鱼诗」——带约束的输出当 chosen、不带约束的当 rejected,一秒造出一对)。 这类「靠题目固有结构自动造出」的偏好已被证明能把指令遵循、数学等评测实打实推上去10。 信号类型还可以更瘦:KTO 算法连成对都不要,单条「好/坏」标签就能训11

3.4 生意:一份数据合同的解剖

这节是全书独家性最强的部分——作者在 HuggingFace 亲自买过数据。要点12:

  • 供应商是稀缺资源:抢数据供应商的激烈程度堪比抢 GPU;名牌团队能拿到 折扣与优先档期;
  • 合同里全是坑:有供应商不威胁诉讼就不交货;有供应商把没合作过的公司列成 客户做公关;默认条款的小字可能禁止开源产出物;
  • 节奏是周批交付:作者在 HF 的合同约 50 万美元、6 周交付——前几周 校准口径,后几周冲效果;目标是第 4–5 周就能看到数据推动评测;
  • 数据可能白买:HF 第一次买人类偏好数据时自家管线没准备好,最后几周只能 对着没把握的端点继续收——「数百万美元的数据集没进最终模型,是这个行业的 日常成本」;
  • 指令数据是另一码事:人写指令数据不受 on-policy 约束(直接盖在基座上用), 所以采购节奏宽松得多;如今人类数据的重心已经移向「出 prompt」和「最难的前沿 任务」13

3.5 偏差清单:数据里自带的私货

书里清点的偏差,每一个都会原样传给模型14:

偏差表现
前缀偏差回答开头几个字过度主导选择
谄媚顺着用户说、恭维,哪怕牺牲真实
冗长长回答系统性胜出(第 13 章的主角)
格式偏好列表、加粗、emoji 更讨喜

这些大多不在标注指南里——它们是人类的习惯,不是任务的要求。书里的判词: 滤不滤得掉这些偏差,就是「好偏好数据」与「伟大偏好数据」的分界

4. 作者的判断与证据

书里有证据的部分:on-policy 优势、UltraFeedback 的构造法、Llama 2 的 14 轮 数据收集,都有出处;界面例子(含作者自己被 A/B 的截图)是亲历。书里给判断 的部分:开放问题清单占了整节——「职业标注员跟随的是指令还是自己的价值观?」 「标注分歧是噪声(随机误差)还是信号?」「数据收集的语境能否迁移到真实用户?」——作者 把它们明标为未解,并且指出一个结构性盲区:工业界的 RLHF 是封闭不公开的,没人 能审计「标注指南里的规格」与「模型实际学到的行为」是否一致,OpenAI 的 Model Spec 是少数可对照的公开物15

判断(我们的,不是书里的): 偏好数据的采购模式(按周交付、按条计价) 正在被两头挤压:头上是合成数据(第 11 章,便宜两个数量级以上),脚下是 RLVR (第 07 章,绕开偏好)。人类偏好数据不会消失——第 09 章的哲学问题和 「最后一公里的人类判断」保证了它——但「按吨买」的形态大概率是过渡形态。 如果错,会错在: 如果某些领域(安全、长尾人际场景)的人类偏好被证明 无法合成替代且需求爆发,「按吨买」可能反而成为长期形态。

5. 边界与局限

  • 最大玩家的做法不可见:OpenAI/Anthropic 的标注指南、验收标准从不公开, 书里只有 InstructGPT 一份 2022 年的公开指南可引16;
  • 标注员画像数据缺失:多少人来标、什么背景、分歧率多少——书里列为开放 问题,而非给出数据;
  • 本章的界面案例都是 2022–2025 年的产品快照,界面形态本身在快速演化。

6. 可带走的

  1. 偏好数据要 on-policy(至少同模型家族)——打在模型自己会犯的错上;
  2. chosen ≠ 正确,只是相对更好;
  3. 界面不是量杯:速度、布局、刻度都在塑造「偏好」;
  4. 打分/排序之争的终点是二值坍缩——丰富信号目前喂不进训练;
  5. 5 点/8 点 Likert、多轮只标末轮、结构化偏好自动造对、KTO 单标签——按成本 与场景挑;
  6. 采购现实:50 万美元、6 周批交付、供应商违约风险真实存在、数据可能白买;
  7. 前缀/谄媚/冗长/格式四大偏差,滤不滤得掉决定数据档次;
  8. 「规格 vs 行为」无法审计,是这个行业的结构性盲区。

7. 原文地图

主题原书章原文位置
两大挑战与数据地位11 Preference Datatext/30-ch11-11-preference-data.txt:32(搜「operational complexity and cost」) · text/30-ch11-11-preference-data.txt:32(搜「on-policy」)
为什么需要与「区分比生成容易」11 Preference Datatext/30-ch11-11-preference-data.txt:50(搜「differentiate between a good and a bad answer」)
on-policy 的软定义11 Preference Datatext/30-ch11-11-preference-data.txt:74(搜「current family of models」) · text/30-ch11-11-preference-data.txt:74(搜「particularly important」)
chosen 非全局正确11 Preference Datatext/30-ch11-11-preference-data.txt:86(搜「not a globally correct answer」)
界面案例11 Preference Datatext/30-ch11-11-preference-data.txt:98(搜「replies too fast」) · text/30-ch11-11-preference-data.txt:104(搜「Anthropic」) · text/30-ch11-11-preference-data.txt:156(搜「Midjourney」)
ratings vs rankings11 Preference Datatext/30-ch11-11-preference-data.txt:175(搜「rankings」) · text/30-ch11-11-preference-data.txt:204(搜「UltraFeedback」)
Likert 5 点与 8 点11 Preference Datatext/30-ch11-11-preference-data.txt:210(搜「Likert」) · text/30-ch11-11-preference-data.txt:242(搜「8-step Likert」) · text/30-ch11-11-preference-data.txt:280(搜「reduced to a binary signal」)
多轮11 Preference Datatext/30-ch11-11-preference-data.txt:292(搜「final」) · text/30-ch11-11-preference-data.txt:292(搜「sycophancy」)
结构化偏好与 IFEval11 Preference Datatext/30-ch11-11-preference-data.txt:316(搜「constraint」) · text/30-ch11-11-preference-data.txt:310(搜「letter g」) · text/30-ch11-11-preference-data.txt:378(搜「inductive biases」)
KTO 等替代11 Preference Datatext/30-ch11-11-preference-data.txt:390(搜「Kahneman-Tversky」)
采购生意11 Preference Datatext/30-ch11-11-preference-data.txt:408(搜「who-you-know」) · text/30-ch11-11-preference-data.txt:420(搜「breach of contract」) · text/30-ch11-11-preference-data.txt:444(搜「6 week」) · text/30-ch11-11-preference-data.txt:451(搜「500K」) · text/30-ch11-11-preference-data.txt:463(搜「wasted」)
指令数据例外11 Preference Datatext/30-ch11-11-preference-data.txt:475(搜「on-policy restrictions」)
偏差清单11 Preference Datatext/30-ch11-11-preference-data.txt:487(搜「prefix bias」) · text/30-ch11-11-preference-data.txt:487(搜「sycophancy」)
开放问题与 Model Spec11 Preference Datatext/30-ch11-11-preference-data.txt:517(搜「professional setting」) · text/30-ch11-11-preference-data.txt:526(搜「Model Spec」)

Footnotes

  1. 出处:「11 Preference Data」第 62 段(text/30-ch11-11-preference-data.txt:62,搜「most opaque pieces」)与第 32 段(text/30-ch11-11-preference-data.txt:32,搜「proxy signal」)。 2

  2. 出处:「11 Preference Data」第 68 段(text/30-ch11-11-preference-data.txt:68,搜「on-policy」)与「A.1 Language Modeling Overview」(text/38-fm-a-1-language-modeling-overview.txt:155,搜「expanded to mean」)。

  3. 出处:「11 Preference Data」第 74 段(text/30-ch11-11-preference-data.txt:74,搜「particularly important」)。

  4. 出处:「11 Preference Data」第 86 段(text/30-ch11-11-preference-data.txt:86,搜「not a globally correct answer」)。

  5. 出处:「11 Preference Data」第 104 段(text/30-ch11-11-preference-data.txt:104,搜「Anthropic」)、第 130 段(text/30-ch11-11-preference-data.txt:130,搜「ChatBotArena」)、第 156 段(text/30-ch11-11-preference-data.txt:156,搜「Midjourney」)。

  6. 出处:「11 Preference Data」第 98 段(text/30-ch11-11-preference-data.txt:98,搜「replies too fast」)。

  7. 出处:「11 Preference Data」第 175 段(text/30-ch11-11-preference-data.txt:175,搜「rankings」)。

  8. 出处:「11 Preference Data」第 210 段(text/30-ch11-11-preference-data.txt:210,搜「Likert scale」)与第 242 段(text/30-ch11-11-preference-data.txt:242,搜「8-step Likert」)。

  9. 出处:「11 Preference Data」第 292 段(text/30-ch11-11-preference-data.txt:292,搜「final」)与第 292 段(text/30-ch11-11-preference-data.txt:292,搜「John Schulman」)。

  10. 出处:「11 Preference Data」第 304 段(text/30-ch11-11-preference-data.txt:304,搜「IFEval」)与第 378 段(text/30-ch11-11-preference-data.txt:378,搜「inductive biases」)。

  11. 出处:「11 Preference Data」第 390 段(text/30-ch11-11-preference-data.txt:390,搜「Kahneman-Tversky」)。

  12. 出处:「11 Preference Data」第 408 段(text/30-ch11-11-preference-data.txt:408,搜「who-you-know」)、第 420 段(text/30-ch11-11-preference-data.txt:420,搜「breach of contract」)、第 444 段(text/30-ch11-11-preference-data.txt:444,搜「6 week」)、第 451 段(text/30-ch11-11-preference-data.txt:451,搜「500K」)、第 463 段(text/30-ch11-11-preference-data.txt:463,搜「wasted」)。

  13. 出处:「11 Preference Data」第 475 段(text/30-ch11-11-preference-data.txt:475,搜「on-policy restrictions」)。

  14. 出处:「11 Preference Data」第 487 段(text/30-ch11-11-preference-data.txt:487,搜「prefix bias」)与第 487 段(text/30-ch11-11-preference-data.txt:487,搜「good or great」)。

  15. 出处:「11 Preference Data」第 517 段(text/30-ch11-11-preference-data.txt:517,搜「professional setting」)与第 526 段(text/30-ch11-11-preference-data.txt:526,搜「Model Spec」)。

  16. 出处:「11 Preference Data」第 426 段(text/30-ch11-11-preference-data.txt:426,搜「InstructGPT」)。原文:data instructions 的 popular example 是 OpenAI 为 InstructGPT 发布的那份。