「回答得更好」这件事,很难用规则写清楚,于是 AI 的训练换了个办法:让模型看两个回答,由人来判断哪个更好。积累大量这样的人工判断,就是偏好数据。它是让大模型从「会说话」走向「说得好」的关键一环。
规则写不清「更好」:换个思路
如果「好」能写成规则,直接写进损失函数就行。但实际做不到——「有帮助」「更安全」「更准确」这些标准,边界模糊且相互冲突。偏好数据的做法是把难判断的主观问题,转化成一个相对容易的一致性判断:给两个回答,问哪个更好。
这个转化的价值在于:人做「二选一」的稳定性,明显高于「独立打分」。它绕开了把主观标准量化成绝对分数的困难,转而利用人天生更擅长做对比的特点。
一条偏好数据长什么样
一条典型的偏好数据是三件套:同一个问题、两个不同回答、以及人的判断。两个回答通常由模型生成,人的判断不仅包含「哪个更好」,还可能附带原因,比如更准确、更有帮助、语气更合适。这样的数据积累到成千上万条后,就能训练出一个打分模型,让它去预测人类更可能喜欢哪个回答。
这个打分模型再反过来用于后续训练,形成一个「先收集判断、再教会模型判断、再优化模型」的循环。这个循环的本质,是模型不断消化人工反馈,其机制与观察结果是怎么被消化的里讲的思路相通。
为什么用「对比」而不是「打分」
人做独立评分很不稳定:同一个回答今天给 7 分,明天可能给 5 分,不同标注者之间的分数也难以对齐。但让两个人回答「哪个更好」,一致性要高得多。对比把「绝对评价」降维成「相对排序」,把标注者的状态波动影响降到更低。
代价是数据效率:一条对比数据只能提供一次相对信息,远不如一个绝对分数看起来信息量大。但工程实践更看重「稳定」而非「看起来信息多」,这正是偏好数据被广泛采用的原因。
偏好数据的三种固有偏差
偏好不等于正确,这是理解偏好数据的第一前提。它有几种明显的偏差来源:其一,人容易被「说得漂亮」说服,模型可能因此学会讨好而非准确;其二,标注团队的文化背景、知识水平会塑造模型的偏好取向;其三,长度偏好——不少研究发现模型往往偏爱更长的回答,即使长回答并没有更多信息。
长度偏好尤其值得单独拎出来:它意味着「写得长」会被系统性地当成「更好」,这与回答长度是怎么被控制的里讨论的机制一脉相承。理解了这一点,你就能明白为什么有些模型倾向于冗长输出。
它做不到什么:让人满意不等于正确
偏好数据优化的目标是「让人满意」,并不能确保「正确」。所以模型有时会说得头头是道却并不准确——它在忠实执行自己学到的东西。这带来的直接后果是:关键信息仍然要自己核实,不能因为回答读起来顺眼就全盘接受。
偏好数据也无法覆盖所有判断维度。标注时看得见的维度(语气、长度、格式)容易被捕捉,看不见的维度(事实正确性、逻辑严密性)则可能被忽略。当任务对事实准确度要求极高时,单靠偏好数据还不够,需要配合自动验证等手段。
打分与对比的对照
| 判断方式 | 怎么做 | 优点 | 缺点 |
|---|---|---|---|
| 独立打分 | 给单个回答一个绝对分数 | 信息量看起来大 | 状态波动大、难对齐 |
| 两两对比 | 给两个回答选更好的一个 | 判断一致、稳定 | 单条信息量低、成本高 |
| 模型自评 | 让另一个模型打分 | 成本低、规模大 | 可靠性一般、可能带偏差 |
偏好数据速查
- 一条数据:同一个问题 + 两个回答 + 人的判断。
- 核心思路:把「打分」换成「对比」,提高标注一致性。
- 主要偏差:讨好、标注者背景、长度偏好。
- 根本边界:优化「让人满意」,不优化「一定正确」。
它和更大规模的训练是什么关系
偏好数据本身是训练数据的一种,它的规模和质量同样受到整体数据策略的影响。当人们讨论「堆更多算力、更多数据能带来什么」时,偏好数据就是其中一块拼图,其逻辑与Scaling Law 是怎么被发现的所揭示的规模规律相互呼应:数据规模上去之后,质量筛选和偏好对齐的重要性反而更突出。


