从想法到证据:我如何记录一个研究问题
我常常同时对许多问题感兴趣:一个数学命题是否成立,一种机器学习方法为什么有效,或者一个看起来合理的实验结果究竟能不能复现。
提出想法并不难。真正困难的是,把模糊的想法收缩成一个能够被证伪、被复查的具体问题。
这篇笔记是我给自己制定的一套研究记录方法。它不是关于某项已经完成的成果,而是关于如何判断一项工作是否值得继续推进。
第一步:先把问题说清楚
开始实验之前,我希望自己能够回答三个问题:
- 已经知道什么? 尽可能找到相关论文、定义和已有结论,区分事实与猜测。
- 我怀疑什么? 用一句可以检验的话写出假设,说明它在什么条件下可能成立。
- 什么结果会改变我的判断? 提前确定失败条件,而不是看到实验结果以后再修改标准。
例如,“让模型更聪明”不是一个可操作的问题;“在固定的数据划分和计算预算下,方法 A 是否比强基线 B 更可靠”就明确得多。
第二步:做最小的验证
我倾向于先做规模小、代价低、容易复现的实验。
一次好的初步实验不需要展示复杂的系统,而应该尽可能排除几种常见解释:是不是数据泄漏?是不是基线过弱?是不是只挑了有利的随机种子?是不是把已有工作误认为新的发现?
对于数学问题,数值计算可以帮助寻找反例,但有限次测试不能代替一般性证明。对于机器学习问题,跑通代码同样不意味着假设已经得到支持。
第三步:把失败也记录下来
过去,失败的尝试很容易只留下一个目录、一段日志,或者一句“这个方向不行”。
但我越来越觉得,知道为什么停止,有时比知道如何继续更有价值。
因此,我希望每次探索至少留下这些信息:
- 问题、假设与相关文献;
- 实验环境、代码版本和数据来源;
- 对照方法、评价指标与预先设定的判断标准;
- 实际观察到的结果,包括不支持假设的部分;
- 最终决定:继续、暂缓,还是停止,以及理由。
这样,当一个问题在几个月后再次出现时,我不必从头开始,也不必依靠模糊的记忆。
第四步:区分进展与成果
写出代码、运行实验、完成形式化检查、整理一份报告,都可能是实实在在的工作进展。
但它们不是同一件事,也不必然构成新的科学贡献。
我希望以后在公开记录中尽量明确区分:完成了什么工程工作、验证了什么事实、还存在哪些不确定性,以及哪些结论只是暂时的。
这会让我在面对一个令人兴奋的结果时少一点冲动,也让读者更容易判断它真正意味着什么。
接下来
我准备把这套方式用于后续的数学、人工智能与科研工程项目。博客会逐渐收录问题的提出、关键实验、必要的理论推导,以及阶段性的判断。
我并不期待每一个想法最终都成为论文或者产品。
我更希望留下的是一条清晰的路径:从一个想法开始,经过检验,最后得到一个有根据的判断。