阅读《AI Engineering》笔记13 评估大模型有多难
能用功能验证的,就别用相似度;能用相似度的,就别太信参考答案;能用语义向量的,才是比较接近“人类理解”的评估方式。
评估大模型有多难?你以为“给分”很简单,其实全是坑
很多人以为:
评估一个 AI 模型,不就是“看对不对”吗?
但真正做过模型评测的人都知道:
“对”这件事,本身就充满了歧义。
有些题可以100%判断对错,有些答案却像作文一样——谁来评,分就不一样。
这就是 AI 评估中最核心的一个概念:
精确评估(Exact Evaluation) VS 主观评估(Subjective Evaluation)
一、什么叫“精确评估”?什么叫“主观评估”?
先看一个简单例子:
-
选择题答案是 A,你选了 B → 错就是错,没有争议 ✅
-
一篇作文评分 → 老师心情不同,分数可能不同 ❌
这两种评价方式有本质区别:
| 类型 | 是否有歧义 |
|---|---|
| 精确评估 | ✅ 没有歧义 |
| 主观评估 | ❌ 依赖评审者 |
AI 面临的尴尬情况是:
很多任务输出是“开放文本”,而不是固定答案。
这让评估成为一个非常难的问题。
二、真正“硬核”的评估方式:功能正确性(Functional Correctness)
这是目前最可靠的一种评估方法。
它的核心问题很简单:
模型真的完成了应该完成的功能吗?
举几个例子:
-
你让模型 写一个网站 → 网站能不能正常运行?
-
你让模型 预订餐厅 → 真的订成功了吗?
-
你让模型 写代码 → 代码能不能跑得通?
代码是最适合自动评估的场景
比如你让模型写一个:
gcd(num1, num2)
测试方法很直接:
输入:15 和 20
期望输出:5
如果模型输出不是 5,那么——直接判错 ✅
这也是 LeetCode、HackerRank 等平台的核心逻辑:
跑测试用例,而不是看长得“像不像正确答案”。
三、pass@k:为什么模型会“生成很多答案”?
实际评测时不会只生成一个代码,而是:
对每个问题生成 k 个候选答案
只要其中有一个通过全部测试,就算成功。
这个指标叫:
pass@k
举个例子:
-
总共 10 道题
-
生成 3 个答案(k=3)
-
通过了 5 题 → 那么:
pass@3 = 50%
且有一个规律几乎总成立:
pass@1 < pass@3 < pass@10
因为写的越多,蒙对的概率越大。
四、但很多任务不能自动运行,怎么办?
比如这些任务:
-
翻译
-
摘要
-
写文章
-
图像描述
此时就用第二大类方法:
和“标准答案”进行相似度比对
也叫:
✅ 基于参考答案的评估(Reference-based Evaluation)
五、文本相似度的4种主流方式
模型输出和参考答案如何对比?
常见方式有四种:
-
人工判断是否相同
-
完全匹配(Exact Match)
-
词面相似度(Lexical Similarity)
-
语义相似度(Semantic Similarity)
六、为什么“看起来很像”不代表真的对?
看个例子:
| 句子 | 语义是否相同 |
|---|---|
| “What's up?” | ✅ |
| “How are you?” | ✅ |
这两个句子:
-
词几乎不重叠 ❌
-
但意思几乎一样 ✅
而下面这两个:
| 句子 | 是否相同 |
|---|---|
| Let’s eat, grandma | ❌ |
| Let’s eat grandma | ❌ |
只差一个逗号,意思完全变了。
这就是为什么:
仅靠“词面相似度”是会翻车的。
七、语义相似度靠的是什么?——Embedding(向量嵌入)
模型会把文字变成:
[0.11, 0.02, 0.54, ...]
这种向量叫:
Embedding(语义向量)
之后再通过:
✅ 余弦相似度(cosine similarity)
来判断语义是否接近:
| 相似度值 | 含义 |
|---|---|
| 1 | 完全相同 |
| 0 | 毫无关系 |
| -1 | 完全相反 |
这就是今天:
-
搜索
-
推荐系统
-
RAG
-
语义检索
底层全部依赖的技术。
八、为什么现在越来越少用 BLEU / ROUGE?
过去翻译领域常用指标:
-
BLEU
-
ROUGE
-
METEOR
-
CIDEr
但现在发现问题很大:
✅ 有些“正确答案”不在参考集中 → 得分很低
✅ 参考答案本身可能是错的
✅ 看起来像 ≠ 真的对
甚至 OpenAI 发现:
错误代码和正确代码的 BLEU 分数很接近
这意味着:
优化相似度 ≠ 优化正确性
九、最容易被忽视的真相
很多团队评估效果不好,不是模型太差,而是:
参考答案数据本身就有问题
真实案例:
-
WMT 2023 发现大量翻译参考数据是错误的
-
企业模型输得“很惨”,只是因为标准答案少了很多正确表达
十、一句话总结这套评估逻辑
送你一句工程圈公认的真理:
能用功能验证的,就别用相似度;
能用相似度的,就别太信参考答案;
能用语义向量的,才是比较接近“人类理解”的评估方式。
更多推荐



所有评论(0)