关于 experiment-design
experiment-design 是帮助研究者设计和排查实验的技能,适用于检验机制是否成立并据此作出决策。它要求预先明确假设、基线、指标和决策标准,也提供缩放规律拟合脚本。
主要功能
- 01将假设写成可证伪形式
- 02定义基线、指标和混杂因素
- 03设置 sanity checks 与决策标准
- 04按成本安排实验顺序
- 05先排查数据路径再调参
- 06拟合缩放规律并进行外推
适用场景
- 01规划检验研究主张的最小实验
- 02诊断训练或验证结果异常
- 03比较数据量或计算量变化的效果
- 04根据预设标准决定继续或停止
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ jurgendn/ agent-skills --skill experiment-design安装后在 Claude Code 中输入/experiment-design确认已加载。
附带文件references/experiment-design-checklist.mdscripts/fit_scaling_law.py
详细介绍
实验设计
设计能够实质性减少不确定性的最小实验。目标不是让基准测试表现达到最高,而是判断所声称的机制是否有效。
如需详细检查清单,请阅读 references/experiment-design-checklist.md。
工作流
- 以可证伪的形式陈述假设。
- 定义能够检验假设的最小实验。
- 定义公平的基线。
- 定义主要指标和次要指标。
- 找出混杂因素和控制措施。
- 添加必要的合理性检查。
- 在运行前定义决策标准。
- 按成本从低到高推荐运行顺序。
必需的设计字段
- **假设:**在什么条件下,与什么相比,发生了什么变化,以及如何测量。
- **数据集/环境:**来源、划分、防止数据泄漏的措施、样本量。
- **干预:**所提方法改变了什么,哪些内容保持不变。
- **基线:**最强的公平比较对象,加上简单的性能下限。
- **指标:**与主张相关的主要指标;用于权衡的次要指标。
- **混杂因素:**计算量、参数、数据泄漏、预处理、提示词/模板影响。
- **决策标准:**继续 / 修改 / 停止的阈值。
合理性检查
- 在一个小批次或简单案例上过拟合。
- 验证指标的实现。
- 在随机性会造成影响时,检查不同随机种子下的稳定性。
- 确认基线能够复现已知行为。
- 检查有代表性的成功与失败案例。
运行出错时
设计涵盖的是计划中的运行;本节涵盖的是已经出现异常的运行。 顺序规则比检查清单更重要:先检查数据路径,再归咎于模型;先对症状分类,再调整超参数。
- 对症状分类——发散、过拟合、欠拟合、崩溃、训练停滞或验证结果波动。只有结合配置和数据分析曲线形状,才能作出诊断。
- **先审查数据路径。**检查数据划分、重复项、污染、标签语义、预处理、数据增强、训练集/测试集不匹配。与可疑损失相比,可疑的增益更值得进行数据泄漏检查——结果看起来好得不真实,通常确实不真实。区分已确认的数据泄漏和可能存在的数据泄漏。
- 然后才调整,并针对具体机制进行调整——优化、正则化、模型容量、数据/采样、训练计划——每次只改变一个机制。优先进行有依据的小范围搜索,而非盲目网格搜索。
- **记录每个保留数值的来源。**不要将配置不同的运行结果合并成一个结论;在有运行结果佐证之前,应将印象标记为印象。
扩展问题
如果要判断更多数据、参数或计算量是否能带来理想结果,应通过拟合来判断,而不是只凭对数-对数图估计。
scripts/fit_scaling_law.py 会拟合幂律和带下限的幂律(Kaplan/Chinchilla)形式,报告指数和 R²、进行外推,并标记收益递减的拐点:
python scripts/fit_scaling_law.py \
--x 1e6 2e6 4e6 8e6 1.6e7 --y 3.10 2.84 2.63 2.48 2.37 \
--metric "val loss" --lower-better --extrapolate 6.4e7
python scripts/fit_scaling_law.py selftest # verify the install
每次只改变一个维度,保持架构系列和评估方式不变;对于超出最大运行规模约 10 倍以上的任何外推,都应将其视为有待通过一次更大规模运行验证的假设,而非测量结果。若 R² 低于约 0.9,应说明幂律可能不成立,并且不要进行大幅外推。
规则
- 没有决策规则的大型实验,就不算经过设计。
- 基线必须足够强,超越它才有意义。
- 事后不得使用验证结果来定义测试主张。
- 如果实验无法证伪假设,就重新设计。
- 检查数据路径之前,不要说模型不可靠。
- 不要盲目尝试各种超参数;先区分症状和原因。
输出
返回:
- 假设;
- 最小实验;
- 基线;
- 指标;
- 风险/混杂因素;
- 合理性检查;
- 运行顺序;
- 决策标准;
- 范围限制。
评论
支持 Markdown