60

构建自己的评测集——SophiaBenchmark 是怎么设计的

阅读约 4 分钟第 60/60 课

公开的评测集(MMLU、C-Eval 等)覆盖面广,但它们是通用的——不一定能衡量你最关心的能力。Sophia 的团队因此设计了自己的评测集:SophiaBenchmark。

为什么要自己设计

Sophia 是一个以中文对话为核心的模型。通用评测集可能有大量英文题目、学术知识题、或者与对话无关的任务——这些不是 Sophia 的核心场景。

SophiaBenchmark 专门针对 Sophia 的目标场景设计:中文对话、知识问答、简单推理、多轮交互。134 道题覆盖了这些核心能力。

设计原则

覆盖核心能力。 评测集不需要覆盖所有可能的任务——只需要覆盖模型最重要的使用场景。134 道题精心挑选,确保不同能力维度都有代表。

难度适当。 题目不能太简单(所有模型都答对,区分不了好坏)也不能太难(所有模型都答错,同样区分不了)。理想的题目应该让好模型答对、差模型答错。

评分可靠。 每道题的评分标准必须明确——不能因为评判的主观性导致同一个回答时好时坏。SophiaBenchmark 使用了尽可能客观的评分标准。

去污染。 SophiaBenchmark 的题目不能出现在训练数据中——否则评测结果就不可信(第 45 章节的内容)。

每题多次采样

语言模型有随机性——相同的输入可能得到不同的输出(因为采样过程中有随机选择)。一次评测只是一个样本。

SophiaBenchmark 对每道题采样 16 次,取平均得分。这大幅减小了随机波动的影响——16 次的平均值比单次评测稳定得多。

16 次 × 134 题 = 2,144 次模型调用。对一个十亿参数的模型来说,这在几分钟内就能完成——成本可接受。

完整的评测流程

1. 134 道题 × 16 次采样 = 2,144 次生成
2. 每次生成用预定的评分标准打分
3. 每道题取 16 次的平均分
4. 134 道题的平均分 = 最终评测分数
5. 标准误差 ≈ ±1.1 个百分点
6. 用配对 t 检验比较不同版本

这门课到这里结束

六十个章节,从「什么是机器学习」到「怎么评测你训练出来的模型」。

回顾整条路线:

数据的本质(01-04)→ 文本怎么变成数字(05-08)→ 向量和矩阵(09-11)
→ 注意力机制(12-17)→ Transformer 的其余部件(18-23)
→ 梯度和反向传播(24-27)→ 优化器(28-32)→ 训练节奏(33-36)
→ 精度和硬件(37-41)→ 训练数据(42-46)
→ SFT(47-51)→ 偏好优化(52-56)→ 评测(57-60)

每一个概念都在 Sophia 的实际训练中有落点。你看到的不是抽象的理论——而是一个真实的十亿参数模型从零到能跟你对话的完整路线。

这条路线被完整地写在了技术报告里。每一步都可以沿同一路径复现。