科学界的“复制危机”涵盖三个不同层面的问题:数据和代码复现性、实验结果的普适性以及模型的稳健性。其中,代码错误或实验无法重复是严重的问题,直接威胁研究的可信度。然而,模型的“稳健性”问题则更为复杂。一个好的研究结果不应该对所有假设的变动都保持不变,它理应对关键假设敏感。因此,不能简单地以“结果不稳健”来否定一项研究,而应具体分析其核心假设是否合理,大规模的自动化检验并不可行。
区分“复制危机”的三个层面
当人们谈论科学领域的“复制危机”时,通常混淆了几个不同的概念。清晰地区分它们至关重要。
数据和代码复现性 (Reproduction): 这是最字面的复制。如果其他人使用你提供的数据和代码,应该能得到完全相同的结果。如果代码无法运行或存在错误,这是一个极其严重的问题。
实验结果的普适性 (Generalizability): 指一项实验的效果是否能在后续的独立实验中重现。如果一个效应无法被重复验证,很可能说明最初的发现并不真实,这在心理学等领域尤其受到关注。
模型的稳健性 (Robustness): 指当研究中的某些假设或设定发生改变时,其结论是否依然成立。经济学研究常常依赖于复杂的模型和观测数据,因此稳健性是常见的讨论点。
不同问题的严重性差异巨大
这三个问题的重要性完全不同,将它们混为一谈会产生误导。
代码无法复现或存在漏洞,直接威胁到论文的根基。同样,实验结果无法在其他地方重现,也强烈暗示原始效应可能不存在,或者研究者可能存在挑选数据、隐藏不利结果等行为。
然而,对于稳健性问题,情况则完全不同。
事实上,一篇好的论文 不应该 是稳健的。研究中必须包含一些一旦改变就会影响结果的假设。如果不是这样,这篇论文揭示的可能只是某种机械性的关系。
稳健性检验的真正意义
稳健性检验的目的不是为了证明一个结果在任何条件下都成立,而是服务于两个核心目标:
- 防止“挑选”假设: 如果研究者面临多个看似都合理的分析选项,但只选择了那个能产生显著结果的方案,这就值得怀疑。稳健性检验可以揭示结果是否仅仅是特定选择的产物。
- 挑战核心假设: 如果一个假设是研究的基石,那么证明改变它会改变结果本身没有意义。挑战者需要论证的是,这个核心假设本身就是 不合理 的。
大规模检验稳健性为何行不通
试图通过大规模、自动化的方式检验所有论文的稳健性,往往会走向歧途。因为这种方法忽略了每项研究的具体背景。
以著名的“蠕虫战争”为例:2004年一项关于肯尼亚驱虫计划的研究发现,该计划对学童的入学率和未来收入有显著正面影响。后来,一篇“稳健性检验”的论文声称推翻了该结论,并引发了媒体关注。
然而,深入分析后发现,后续的检验者在每一步都刻意选择最不利于发现原始效应的分析方法,削弱了统计功效。这种做法反而从反面证明了原始结果的可靠性,因为它展示了要推翻这个结论是多么困难。
结论:稳健性需要具体情况具体分析
我们无法通过简单地切换各种参数来看结果是否改变,来判断一项研究的质量。
- 稳健性评估必须逐案进行,深入理解每个研究的具体细节和核心假设。
- 简单地宣称一个结果“不稳健”是没有意义的,必须说明为什么改变某个特定假设是合理且重要的。
- 科学研究的目标是找到 正确的分析设定,而不是找到一个对所有可能变化都“免疫”的结果。
一个完全正确的结果,可能对微小的设定变化非常敏感;反之,一个看似非常稳健的结果,也可能是错误的。关键在于理解我们到底在检验什么。