English interface selected · this article is currently written in Chinese.
怎样积累可复用的实验结论:版本、失败记录与下一轮决策
English overview →具备清晰骨架、初步数学推导或工程验证,持续补充论据与实测。
数字花园
🌿 什么是数字花园与思想演进?
遵循 Maggie Appleton 与 Andy Matuschak 的常青笔记理念:这里不是按时间沉底的流水账,而是持续修剪打磨的知识生态。文章按成熟度经历:
- 🌱 萌芽 (Seedling): 发散灵感、读书摘录、开放猜想
- 🌿 演进 (Budding): 结构渐明、初步代码推导、积极修正
- 🌳 常青 (Evergreen): 逻辑闭环、持久经得起检验的基石
- 🔬 实验待证 (Speculative): 结合沙盒与仿真探针的理论探索
两个月前,你发现加入错误恢复样本后,工具任务的成功率提高了。现在想复用这个结论,却发现只剩一张曲线图:不知道训练数据是哪一版,评分器有没有更新,也不知道失败的几次运行是否被删掉了。
图上的数字可能没错,但已经不能支持下一次决策。研究积累的关键,是让后来的人能够沿着结论找到证据,并知道它在哪些条件下成立。
本文继续使用“加入工具错误恢复数据”的例子。运行记录、结果表和任务计数均为教学构造;实际执行的是文件身份、兼容性与汇总逻辑检查,没有训练模型。文中的记录结构是一个可修改的起点,不是某个实验平台的强制标准。
一条结论,要能回答三个追问
“恢复数据有用”过于宽泛。读者至少会追问:对什么任务有用?比什么方案好?用了多少额外成本?
可以先把假设写成:“在同一基座、相同目标 token 预算和固定工具环境下,用一定比例的恢复样本替换普通示范,是否改善遇到工具错误后的任务完成率,同时不明显降低正常任务表现?”
这里的每个限定都有作用。增加数据和替换数据不是同一干预;在参考轨迹上判断下一步,与让模型自己完成整段任务,也不是同一种评价。
结论范围至少包括任务、比较对象、干预、预算、指标和环境。研究问题可以很小,但范围要清楚。只有一个模型的一次结果,就先写成这个条件下的观察,不急着推广成“某类方法普遍有效”。
把计划、运行和解释分开保存
实验开始前写实验计划:准备改变什么,哪些保持相同,观察什么结果,以及什么情况需要停止。运行结束后保存事实记录:实际配置、原始输出、异常和指标。最后才写解释与决策。
分开保存的好处是,计划没有被结果悄悄改写。比如原本打算检查正常任务是否退步,结果发现有退步后,不能从报告里删掉这个指标,只留下恢复能力的提高。
建议给每次尝试独立编号。继续同一次中断运行、重新开始一次训练、对同一模型重新评分,是三种不同关系,应记录父运行或来源模型,而不是全部覆盖到 latest 目录里。
| 记录对象 | 它回答的问题 | 最容易遗漏的内容 |
|---|---|---|
| 数据清单 | 实际喂了哪些数据 | 划分、顺序、过滤版本、来源 |
| 训练运行 | 怎样得到这个模型 | 实际配置、随机状态、恢复点、失败状态 |
| 评测运行 | 怎样得到这个分数 | 任务清单、评分器、模板、生成与预算 |
| 研究结论 | 证据支持什么判断 | 不确定性、反例、适用范围、下一步 |
数据说明不只是文件列表。Datasheets for Datasets 提倡记录数据动机、组成、处理、用途和维护信息;其中预处理问题特别关注做过什么变换以及处理软件是否可得。Datasheets for Datasets,第 3 节
模型说明同样不能只写一个最佳分数。Model Cards 提出记录模型版本、用途、评测条件、指标和限制。Model Cards for Model Reporting,第 4 节
本文把这些记录思想延伸到单次研究过程:不仅描述最后交付的模型,也保存它为什么值得交付、哪些证据还不充分。
版本号解决名字,内容身份解决具体文件
data-v2 是方便人看的名字,但如果同名目录被覆盖,它就不能唯一识别当时的数据。内容哈希根据文件字节计算摘要,可以帮助检查内容是否改变。
本文脚本对两行教学 JSONL 计算 SHA-256,再交换行顺序重新计算,摘要不同。把第一行的成功字段从 true 改成 false,摘要也不同。这说明在这个例子里,顺序和内容变化都能被发现;它不是哈希永无碰撞的数学证明。
反过来,摘要相同也不能告诉你数据是否正确、来源是否合适、训练与测试是否泄漏。哈希用于识别内容,审核用于判断质量,两者不能互相代替。
真实数据很大时,可以保存分片摘要、分片顺序、处理配置和最终清单摘要。若先排序再计算一种“与顺序无关”的身份,还要另存训练读取顺序,因为相同样本集合可能产生不同训练轨迹。
模型也要锁定基座、适配器、分词器和模板,见模型交付与行为回归。保存配置时应记录实际生效值;只保存启动命令,可能漏掉配置文件、环境变量或框架默认值带来的变化。
如果原始数据受访问限制,可以保存受控位置、允许保留的元数据和复核方法,并明确外部读者无法独立重跑哪些步骤。不要因为无法公开,就把“可追踪”写成“任何人都可复现”。
先检查结果能否比较,再计算提升
假设保留了两组教学结果:
| 配对编号 | 基线正确数 / 任务数 | 候选正确数 / 任务数 | 成功率差 |
|---|---|---|---|
| 1 | 60 / 100 | 64 / 100 | +4 个百分点 |
| 2 | 70 / 100 | 72 / 100 | +2 个百分点 |
| 3 | 65 / 100 | 66 / 100 | +1 个百分点 |
三个差值的平均数为 7/3,约 2.33 个百分点。这个运算已由脚本复核,但数字本身是构造的,不代表恢复数据的真实收益。
现在加入第四条记录:候选成功率 80%,但它用了新的评测集。不能直接与旧评测集上的 65% 相减,把 15 个百分点写成模型提升。任务难度也变了。
本文的教学检查会拒绝评测集身份、评分器版本、任务预算或主指标不同的配对。真实研究有时需要同时改变这些条件,但那要明确改写问题,或者让两个版本在新协议下重新评测,而不是自动放行比较。
可比较性检查不等于因果识别。即使这些字段相同,训练样本、基座、生成模板或硬件限制仍可能不同。为这次假设逐项列出要控制的条件;允许改变的干预字段也要显式记录,不能把所有配置差异一律视作错误。
重复层级同样要保留。一个模型对同一题采样 100 次,与独立训练 100 个模型提供的证据不同。汇总时说明平均的是训练种子、任务还是采样次数,参见怎样设计训练对照。
失败记录什么时候是反证
程序因为磁盘不足中断,不能证明训练方法无效;正常跑完、满足预设条件却没有改善目标指标,才可能构成对假设的反面证据。
至少分开记录三类状态:完成且可评价、实现或环境失败、结果不可比较。未完成运行的准确率应当为空,而不是随手填 0,也不应该静默从尝试清单中消失。
如果实验问题就是“在这台机器和这个预算上能否稳定完成”,内存不足本身可以是工程可行性的失败。它仍不等于模型任务准确率为零。问题不同,失败的含义也不同。
一个合理的报告可以同时说:“三组完成运行的平均差为 2.33 个百分点;另有一次候选运行因资源不足中断,不进入准确率均值,但计入尝试次数和成本。”如果是否完成与方案相关,仅报告完成者会产生选择偏差,应把完成率作为单独结果,不能把条件均值当作整个方案的无条件表现。
发现评分器错误时,也不能只修候选结果。保留旧版本、说明影响范围,用同一新评分器重算双方;无法重算的结果标记为不可比较。研究记录需要允许纠错,而不是要求最早写下的结论永远成立。
用证据状态控制措辞
同一句话,证据来源不同,应该使用不同表达:
| 证据状态 | 合适的表述 |
|---|---|
| 论文报告 | 该论文在其任务与设置下报告了某现象 |
| 假设下的推导 | 在这些假设下,可以推出某个关系 |
| 教学检查 | 这段程序验证了给定算例或协议检查 |
| 真实实验观察 | 在已记录运行中,观察到这些结果 |
| 待验证解释 | 目前怀疑原因是某因素,需要对照区分 |
本文的 2.33 个百分点只能叫“教学计数的平均差”,不能写成“我们证明恢复数据提升了工具能力”。同样,一个可运行的 PPO 更新示例,也不等于训练出了更强的推理模型。
写结论时,把直接观察与机制解释分成两句。例如“恢复任务成功率提高”是观察,“模型学会了从错误中规划”是更强的解释,需要额外证据。更简单的可能性是模型记住了常见错误模板。
下一轮实验,优先区分还不清楚的解释
假设真实实验以后观察到改善,可以提出三个竞争解释:恢复样本教会了有效行为;只是多看了相似工具参数;或者评分器偏好更长的回答。
下一步应选能区分解释的比较,而不是自动换更大的模型。可以保持预算与任务结构,比较正确恢复示范、只保留相似参数的普通示范,并在独立评分规则下检查任务终态。具体数据设计必须保证各组内容合法,不能为了“控制变量”制造没有意义的错误训练集。
还可以检查未见过的错误类别,判断改善是否只限于模板内。若只有一个训练种子的结果,先重复可能比扩大方案更有价值;若输入协议尚未核对,先修正确性问题比增加计算预算更有价值。
下一轮决策应写成可改变判断的条件:“若在独立错误类别上仍改善,且正常任务没有超过预设退化界限,再扩大数据覆盖;否则先检查错误分类和模板依赖。”阈值应在新实验前设定,并说明选择理由。
留给下一位研究者的一页记录
一页报告可以按下面顺序组织,详细文件另附链接:
- 问题与干预:本次试图回答什么,实际改变了什么。
- 比较条件:基线、版本、预算、评测集和停止规则。
- 结果:原始计数、配对变化、重复层级与不确定性。
- 失败与限制:中断、退步、不可比较记录和未覆盖条件。
- 解释与下一步:哪些解释仍可能成立,什么实验能区分它们。
再做一次独立复核:只凭保存的清单和原始结果,能否重算报告里的表?缺少任一必要文件时是否明确失败,而不是继续读取本机的旧缓存?如果连汇总表都无法重建,就先补证据,再写更强的结论。
七卷最终连接的是同一条证据链:数据决定学什么,目标决定怎样更新,反馈决定偏向什么,环境决定行动得到什么结果,评测决定我们能声称什么。每一环都留下可检查的记录,下一次研究才不必从猜测开始。
读完后可以检查两个问题:一条训练中断记录为什么不能直接填成零分?如果候选模型分数变高,但评分器也升级了,你准备怎样获得可比较的证据?能具体回答这两个问题,比保存更多没有上下文的曲线更有用。
文章概念网络
从章节进入正文概念。实线表示所属层级,虚线连接跨章节重复出现的概念,不代表因果关系。
50 / 50 个节点 · 正文标记术语与关键词概念
怎样积累可复用的实验结论:版本、失败记录与下一轮决策
回到原文 ↗最后更新于 2026-10-23
引用本文
@article{2026-10-23-llm-training-eval-06-conclusions,
author = {枫语},
title = {怎样积累可复用的实验结论:版本、失败记录与下一轮决策},
journal = {枫语},
year = {2026},
month = {oct},
url = {https://meiluosi.github.io/posts/2026-10-23-llm-training-eval-06-conclusions/}
}