try ai
科普
编辑
分享
反馈
  • 可再现性

可再现性

SciencePedia玻尔百科
核心要点
  • ​​可再现性​​ 通过验证使用原作者的精确数据和分析代码能否获得完全相同的结果,来确保计算的完整性。
  • ​​可复现性​​ 通过在新的、独立的、使用新数据的研究中证明可以取得一致的结果,来增强对某项发现的信心。
  • ​​稳健性​​ 通过测试一项研究的主要结论在面对分析方法的合理变更时是否仍然成立,来确认这些结论并非脆弱的假象。
  • 容器、版本控制和工作流语言等现代工具对于管理复杂性和在数据密集型科学中实现可再现性至关重要。
  • 践行可再现性是一项伦理要求,它能建立问责制和信任,确保科学主张足够可靠,能够用于现实世界的应用。

引言

在一个数据和发现空前增长的时代,我们如何区分一项突破性的科学发现与一个统计上的偶然事件或计算错误?整个科学知识的大厦都建立在能够验证各种主张并在此基础上充满信心地进行建设的能力之上。这种对验证的基本需求,将一项发现从一次性的观察转变为可用于治疗疾病、制定政策和推动创新的可靠知识。其核心挑战在于如何驾驭研究中固有的不确定性,从抽样中的随机偶然性到数据分析过程中做出的复杂选择。

本文通过剖析科学验证的三大支柱来应对这一挑战:可再现性、可复现性和稳健性。通过理解这些原则,我们可以开始领会科学自我纠正并建立对世界的可信理解的严谨过程。以下章节将引导您了解这一基本框架。首先,在“原理与机制”一章中,我们将定义每一个概念,解释其在最小化特定类型误差中的作用,并阐明它们如何协同工作以验证一项科学成果。然后,在“应用与跨学科联系”一章中,我们将看到这些原则的实际应用,探索它们的历史渊源及其在从医学、基因组学到环境科学等领域的现代应用,从而证明可再现性不是一个抽象的理想,而是一个创造可靠知识的至关重要且实用的工具。

原理与机制

想象一下,一位才华横溢的厨师声称发明了一种革命性的蛋糕配方,既美味又极其健康。他们在一家顶级烹饪期刊上发表了这个配方。要使这一声称有任何价值,要让它改变我们烘焙蛋糕的方式,需要满足哪些条件?首先,您会想确定,如果您在自己的厨房里,使用他们特定的配料,遵循他们确切的配方,是否能做出同样美味的蛋糕。其次,您会想知道这个配方是一次性的奇迹还是经得起考验——如果您自己购买面粉和鸡蛋,并按照步骤操作,您的蛋糕是否也能成功?最后,您可能会好奇这个配方的脆弱程度。如果您的烤箱温度稍高,或者您使用了不同品牌的香草精,会怎么样?这个蛋糕还会是一件杰作,还是会坍塌成一滩黏糊糊的东西?

这三个问题对应着科学探究中三个最基本的原则:​​可再现性​​ (reproducibility)、​​可复现性​​ (replicability) 和 ​​稳健性​​ (robustness)。它们是支撑整个科学事业的支柱,将单一的观察转变为可信的知识。让我们来剖析这些概念,看看它们是如何在研究前沿而非厨房里运作的。

科学发现的剖析

从本质上讲,任何科学测量或实验结果都是对世界某种真相的估算,无论是药物的效果、遥远恒星的质量,还是污染物的影响。但没有测量是完美的。我们可以将得到的任何结果看作是几个部分的组合。一个受数据科学家思考其结果的方式启发的简化模型可能是这样的:

观测结果 = 真实效应 + 抽样误差 + 计算误差 + 设定误差

  • ​​真实效应​​ 是我们所追求的——自然界中真实存在的、根本的现象。
  • ​​抽样误差​​ 的产生是因为我们无法研究每一个人或每一件事物。我们抽取一个样本,而纯粹出于偶然,我们的样本可能与总体略有不同。
  • ​​计算误差​​ 包括我们分析过程中的所有蹊跷之处——从计算机中微小的四舍五入错误到复杂算法中的随机元素。
  • ​​设定误差​​ 来自于我们研究人员所做的选择。我们选择在模型中包含哪些变量,如何清洗数据,以及运行何种统计检验。不同的选择可能导致不同的结果。

理解这些误差来源,使我们能够将可再现性、可复现性和稳健性不视为抽象的流行词,而是作为审视和最小化这些误差的直接工具。

可再现性:你能得到相同的答案吗?

​​可再现性​​ 解决的是计算误差项。它问一个非常简单的问题:如果我拿你确切的数据和确切的分析代码(你的“配方”),我能否产生完全相同的结果?这是最基本的验证层面。它确保结果不是一个拼写错误、一个计算意外,或某个秘密、未记录步骤的产物。它关乎确保一项科学主张的计算完整性。

在现代科学中,分析可能涉及在复杂硬件上运行的数百万行代码,这远非易事。例如,机器学习中的一些算法使用随机数来帮助它们找到解决方案。如果研究人员没有固定随机数生成器的起点——即“种子”,那么其他人运行相同的代码每次都会得到略微不同的结果。这看起来可能微不足道,但在一个敏感的临床模型中,这可能决定一个病人被标记为高风险还是低风险,从而使研究结果变得不可靠。

为了实现可再现性,科学家现在使用强大的工具。他们公开分享他们的代码和数据。他们使用版本控制系统来跟踪每一个变化。他们甚至可以将整个计算环境——操作系统、软件库等等——打包成一个可以共享并在任何机器上运行的“容器”,确保环境本身不会引入错误。在医学等领域,患者数据是私密的,不能共享,这一点变得更加关键。可以为数据集发布一个加密哈希——一个独特的数字指纹——允许审计员在一个安全设施内核实分析是在正确、未被篡改的数据上运行的。

因此,可再现性是基石。它不能告诉我们研究结果是否真实,但它确认了所报告的结果是所述数据和方法的真实产物。没有它,一项科学主张就像魔术师的戏法——你看到了结果,却不知道它是如何完成的,也无法亲自检验。它使一项主张变得​​可证伪​​;它赋予了另一位科学家检查这项工作并可能证明其错误的能力。

可复现性:这一发现站得住脚吗?

​​可复现性​​ 是科学方法的灵魂。它处理抽样误差,让我们更接近真实效应。这里的问题是:如果我们重新做整个实验——收集新的数据,但遵循相同的方案——我们是否能得到一致的结果?

让我们回到我们的医学例子。一个团队进行了一项随机对照试验(RCT),发现一种新药平均降低了 θ^=−5.2\hat{\theta}=-5.2θ^=−5.2 mmHg 的收缩压。这个结果在统计上是显著的,意味着它不太可能是由偶然性造成的。但这是真的吗?一项单一的研究,无论进行得多么好,都可能因为“幸运”地抽到一个反应异常良好的患者样本而得到这样的结果。可复现性就是检验。第二个独立的团队用新的患者进行了一项新的试验。他们发现血压降低了 θ^′=−4.8\hat{\theta}'=-4.8θ^′=−4.8 mmHg。这两个数字并不完全相同——我们也不期望它们相同,因为存在抽样误差——但它们高度一致。效应方向相同,量级相似,且置信区间大幅重叠。这一发现得到了复现。我们对这种药物确实有效的信心大增。

这就是为什么在医学等领域的​​证据层级​​中,将对多个RCT的系统性综述和元分析置于顶端的原因。元分析本质上是对多次复现尝试的数学综合。它汇集了许多独立研究的结果,以获得对真实效应更精确、更可靠的估计,从而消除任何单一实验中的统计噪声。

对可复现性的追求甚至可以影响我们最初设计实验的方式。例如,在神经科学研究中,“被试内”设计(即每个参与者都在控制和实验条件下接受测试)通常比“被试间”设计(即不同的人在不同组别中)能提供更强大、更精确的估计。通过控制个体之间巨大的差异,这种设计减少了测量中的“噪声”,使得一个真实的效应更有可能被检测到并随后被他人复现。

稳健性:这一发现是可靠还是脆弱?

最后,我们来谈谈​​稳健性​​,它直面设定误差。这是一个微妙但至关重要的概念。在任何分析中,研究人员都会做出几十个选择:排除哪些参与者,调整哪些控制变量,使用哪种统计模型。稳健性问道:如果改变这些合理的选择,研究的主要结论是否仍然成立?或者,这个发现只是一个脆弱的假象,只有从一个狭窄的分析角度才能看到?这通常通过​​敏感性分析​​来检验。

想象一下,一项基因组学研究试图确定某种生物标志物在患有某种疾病的患者中是否表达更高。该团队的主要分析流程得出的结论是肯定的。但随后,作为核查,他们尝试了另外两种标准方法来对数据进行归一化。用一种方法,效应消失了。用另一种方法,效应甚至更强。结论随着方法的不同而翻转。这个结果不具稳健性。这是一个警示信号,表明最初的发现可能不是对潜在生物学事实的可靠反映。

相比之下,一个稳健的发现是屹立不倒的。在我们的血压试验中,研究人员可能会证明,即使他们调整了不同的患者特征(年龄、体重、吸烟状况)或使用了不同的统计模型,药物的效果仍然显著且具有临床意义。这让我们相信,该发现不是一个“纸牌屋”,不会因最轻微的分析调整而坍塌。

原则的统一:从验证到信任

这三个原则——可再现性、可复现性和稳健性——不仅仅是学术迂腐的清单。它们是一个构建可靠知识的深度互联的系统。可再现性确保了单个结果的基本完整性。稳健性确保了发现不是分析的产物。而可复现性确保了它不是单个样本的产物,从而让我们相信我们正在观察一个真实的自然现象。

它们最终是一项伦理要求。在医学上,我们不能冒险用那些其有效性基于不可再现的分析、不可复现的侥幸或不稳健的、经p值操纵的发现的药物来治疗病人。在公共政策中,我们不能将环境法规建立在结论脆弱或从未经过独立验证的模型之上。这些原则是科学自我纠正的机制。它们是让我们从一个激动人心的单一主张,走向一个如此坚实可靠的证据体系的工具,以至于我们可以自信地在其上建立一个更健康、更安全的世界。

应用与跨学科联系

在了解了使科学发现“可再现”的核心原则之后,您可能会觉得这一切都相当抽象,像是一套科学家玩的游戏规则。但事实远非如此。对可再现性的追求并非繁琐的记账工作,而是建立对科学信任的基石。它是理论与现实交汇的地方——在医学、环境政策以及我们笔记本电脑上运行的代码中。让我们探索广阔科学领域的一些角落,看看这一基本美德是如何变为现实的。

与过去和未来的对话

人们可能认为,可再现性是数字时代的现代痴迷。但创造一个忠实、可验证的自然记录的愿望与科学本身一样古老。思考一下18世纪意大利解剖学家 Giovanni Battista Morgagni 的不朽巨著。在他的杰作 De Sedibus et Causis Morborum per Anatomen Indagatis(《论疾病的位置与原因之解剖研究》)中,Morgagni 不仅描述了疾病,他还细致地记录了患者的生活史——他们的症状、习惯、挣扎——然后,以惊人的精确度,将这些与他尸检的发现关联起来。

他对尸检的详细、分步描述以及对病变位置的明确标示,本质上是一种方案。他为其他观察者提供了一条可遵循的路径,邀请他们亲眼见证一个临床故事如何与身体器官中一个具体、有形的现实联系起来。这种将临床叙述与解剖发现透明地联系起来的做法,是可复现性的一种早期形式。当然,以现代标准衡量,他的工作有其局限性:术语不一致,测量是定性的,仪器未经校准。但其精神犹在——致力于将证据公之于众,供他人检验。Morgagni 以他自己的方式,创建了一个可以被继承和验证的知识“存储库”。同样的精神驱动着今天的计算生物学家,当他们发表一个新算法时,会在一个Git仓库中创建一个标记为 v1.0.0 的发布版本。这个标签是一个永久的、可引用的参考,一个指向产生已发表结果的代码确切状态的数字路标,允许任何人在任何地方精确地追溯他们的步骤。技术已从纸笔变为分布式版本控制,但基本目标——创建一个与发现相连的、稳定且可验证的链接——是永恒的。

驯服数字洪流:从医学到山巅

我们今天面临的挑战是规模问题。Morgagni 处理了数百个案例;一个现代基因组学实验室单次实验就处理TB级的数据。一颗绘制森林地图的卫星每秒钟都会产生大量信息。数据和计算复杂性的爆炸式增长创造了一个全新的宇宙,其中事物可能会以微妙的方式出错。

想象一下,一个由多家医院组成的联盟,试图从基因测序数据中开发一种用于癌症治疗反应的生物标志物。站点 A\mathcal{A}A 和站点 B\mathcal{B}B 使用相同的患者数据和他们认为是相同的分析流程,但他们得到了略微不同的结果。为什么?罪魁祸首可能是任何事情:生物信息学工具版本的微小差异、不同的操作系统库,甚至是他们的计算机集群处理并行计算的方式。同样,在环境科学中,两个模拟蒸散的团队可能会得到不同的答案,因为他们的系统使用了不同的底层数学库或编译器设置。

这就是计算可再现性的现代工具变得不仅有用,而且至关重要的地方。它们是我们驯服这种混乱的工具。

  • ​​通用配方书:​​ 科学家现在使用像CWL、WDL或Nextflow这样的​​工作流语言​​来为他们的整个分析编写一个正式的、机器可读的“配方”。这指定了每一步、每个参数,以及数据如何从一步流向下一步。

  • ​​便携式实验室:​​ 为了解决软件不同的问题,我们有了像Docker或Singularity这样的​​容器​​。容器就像一个神奇的、自成一体的盒中实验室。它将一个应用程序及其整个软件环境——所有正确版本的所有正确库——打包成一个单一的、可移植的单元。当您在容器内运行分析时,可以保证它使用的“设备”与原作者完全相同,无论您的主机是什么样子。

  • ​​控制“随机性”:​​ 许多复杂的算法,从机器学习到蒙特卡洛模拟,都使用随机数。但这不必成为变异的来源。通过指定一个​​随机种子​​,即随机数生成器的起点,我们可以确保每次运行代码时“随机”数字的序列完全相同,从而使整个过程具有确定性和可再现性。

这些工具,结合诸如用唯一的数字对象标识符(DOI)和加密校验和归档不可变数据快照等实践,使我们能够完全控制等式的计算端。我们现在可以确保,对于相同的数字输入,我们得到相同的数字输出。这就是​​计算可再现性​​:用相同的数据和相同的代码得到相同答案的能力。

超越代码:纷繁而美好的现实世界

但科学不仅仅是计算。它是关于理解我们周围那个有形的、纷繁而壮丽的世界。在这里,可再现性和可复现性的原则呈现出新的维度。

考虑一位生物学家在一个无特定病原体(无菌)设施中研究肠道微生物如何影响小鼠发育。要声称某种特定细菌影响了某个发育特征,并且要使这一声称可信,就必须控制和报告数量惊人的变量。这无关软件版本,而关乎物理世界:

  • 宿主小鼠的确切基因品系和来源是什么?
  • 经基因组测序确认的微生物精确菌株是什么?
  • 在培养管中喂给微生物的是什么,它是在生长的哪个阶段被施用的?
  • 小鼠饮食的确切成分是什么,它是如何消毒的(高压灭菌可能会破坏辐照会保留的营养物质)?
  • 光照周期、笼养密度、垫料类型是什么?

这个列表还可以继续下去。未能报告其中任何一个细节,都可能使另一个实验室无法复现这一发现。在这种背景下,可复现性是指一个独立的实验室能够从头重复整个实验——用新的小鼠、新的微生物培养物——并观察到一致的结果。这比计算可再现性的门槛要高得多。它不仅测试分析,还测试科学现象本身的稳健性。

同样,在数字病理学中,一个用于分析全切片图像(WSI)的流程在计算机上可能是完全可再现的。但要使其在临床上有用,它必须是可复现的。这意味着即使输入图像来自不同医院的不同扫描仪,这些扫描仪可能有不同的照明、颜色配置文件和噪声特性,它也必须产生一致的结果。在这个领域,真正的复现不是要得到像素对像素完全相同的输出,而是要实现一致的性能统计数据——如敏感性和特异性——这些数据告诉我们这个工具在现实世界中是可靠的。

有良知的科学

最终,追求可再现性是一种伦理行为。它关乎建立一个值得信赖和负责任的知识体系。当一个机器学习模型被提议用于临床环境时,例如一个用于败血症的早期预警系统,其报告的准确性不仅仅是一个科学主张——它还是对患者安全的承诺。一个未能记录用于评估的确切数据快照、计算环境和随机种子的“模型卡片”是一个不完整的承诺。独立验证是一项道德责任。

这延伸到具有全球重要性的问题。当公共卫生实验室利用废水宏基因组学追踪病毒爆发时,能够再现他们的发现并在不同地点复现这些发现,对于制定影响数百万人的合理政策决策至关重要。当我们根据卫星数据建立生物多样性模型以指导保护政策时,从原始卫星辐射数据到最终的栖息地地图,整个工作流程的透明度和完整性必须是无可指摘的。

可再现性不是一个终点,而是一种实践。它融入了科学生活的方方面面。它作为年轻科学家负责任的研究行为(RCR)培训的核心部分被教授。它关乎建立清晰的指导关系,根据智力贡献公平地定义作者资格标准,以及培养一种憎恶捏造和篡改的数据完整性文化。正是这种谦逊的、日常的记录、分享和验证工作,在集体实践时,才使得科学能够构建起宏伟而持久的理解大厦。归根结底,这是一种简单而深刻的行为:展示你的工作。