Skip to main content
QUICK REVIEW

[论文解读] Truth, Proof, and Reproducibility: There's no counter-attack for the codeless

Charles T. Gray, Ben Marwick|arXiv (Cornell University)|Jul 11, 2019
Data Visualization and Analytics参考文献 26被引用 4
一句话总结

本文主张,计算科学必须采用类似证明的严格实践——如自动化测试、版本控制和可重现的研究合集——以在缺乏形式化数学证明的情况下实现科学上的确定性。通过将计算工作模式化为数学证明,研究人员即使在无法进行直接形式证明的情况下,也能确保结果的可重现性和可信度。

ABSTRACT

Current concerns about reproducibility in many research communities can be traced back to a high value placed on empirical reproducibility of the physical details of scientific experiments and observations. For example, the detailed descriptions by 17th century scientist Robert Boyle of his vacuum pump experiments are often held to be the ideal of reproducibility as a cornerstone of scientific practice. Victoria Stodden has claimed that the computer is an analog for Boyle's pump -- another kind of scientific instrument that needs detailed descriptions of how it generates results. In the place of Boyle's hand-written notes, we now expect code in open source programming languages to be available to enable others to reproduce and extend computational experiments. In this paper we show that there is another genealogy for reproducibility, starting at least from Euclid, in the production of proofs in mathematics. Proofs have a distinctive quality of being necessarily reproducible, and are the cornerstone of mathematical science. However, the task of the modern mathematical scientist has drifted from that of blackboard rhetorician, where the craft of proof reigned, to a scientific workflow that now more closely resembles that of an experimental scientist. So, what is proof in modern mathematics? And, if proof is unattainable in other fields, what is due scientific diligence in a computational experimental environment? How do we measure truth in the context of uncertainty? Adopting a manner of Lakatosian conversant conjecture between two mathematicians, we examine how proof informs our practice of computational statistical inquiry. We propose that a reorientation of mathematical science is necessary so that its reproducibility can be readily assessed.

研究动机与目标

  • 通过重新定义计算研究中的科学严谨性,应对科学各领域日益严重的可重现性危机。
  • 主张计算科学如同数学一样,需要一种‘证明’形式,以在缺乏形式逻辑证明的情况下确保确定性和可重现性。
  • 提出,足够好的实践——如单元测试、版本控制和标准化研究合集——可作为计算科学中数学证明的等效形式。
  • 考察现代研究工作流程,尤其是计算数学领域,如何从传统的黑板证明方式逐渐转向实验性、基于代码的探究方式。
  • 倡导在数学和计算科学领域实现文化与方法论的转变,推动系统化、可验证和透明的研究实践。

提出的方法

  • 采用拉卡托斯式的对话框架,通过两位数学家的对话探讨计算科学中证明与可重现性的演变。
  • 以戏剧《Proof》中的凯瑟琳和哈尔作为叙事工具,对比传统数学证明与现代计算研究实践。
  • 分析来自 CRAN 任务视图的真实数据,评估 R 包中的测试覆盖率和可重现性实践,使用测试大小比作为测试覆盖率的代理指标。
  • 提出单元测试是数学证明在计算领域的类比,可提供可验证、可重复且透明的算法验证。
  • 倡导使用 rrtools 和发布 DOI 的代码仓库等工具,以标准化并保存研究合集,确保长期可重现性。
  • 将软件工程中的原则——如版本控制、压力测试和自动化验证——整合到科研工作流程中,以增强科研严谨性。

实验结果

研究问题

  • RQ1在缺乏形式化逻辑推导的情况下,计算研究如何达到与数学证明相当的确定性水平?
  • RQ2当前统计学和数据科学等领域的计算研究实践,在多大程度上体现了数学证明的严谨性?
  • RQ3自动化测试、版本控制和研究合集在提升可重现性和科学可信度方面发挥什么作用?
  • RQ4为何许多 R 包,即使属于经过筛选的 CRAN 任务视图,也缺乏单元测试?这又对科学可靠性意味着什么?
  • RQ5计算科学的实践社群如何采纳‘足够好’但系统化的实践,以确保科研严谨性并减少可疑研究行为?

主要发现

  • 在 CRAN 任务视图列出的 4,105 个 R 包中,有 1,524 个(占 37%)不包含单元测试,表明可重现性实践存在广泛缺口。
  • 尽管因筛选而被认为更稳定可信,过去十年中,任务视图包中包含测试的比例却呈下降趋势。
  • 不同 CRAN 任务视图之间的测试覆盖率差异显著,其中 Survival 仅有 23% 的包包含测试,而 Web Technologies 达到 66%,表明测试采纳无一致模式。
  • 测试存在与否与包的大小、作者数量或中心性(通过反向依赖和导入关系衡量)之间无明显相关性,表明测试实践采纳不一致。
  • 使用测试大小比作为测试覆盖率的代理指标,显示其变化范围广泛,且随时间无明显趋势,凸显了对更好度量标准和工具的迫切需求。
  • 作者得出结论:尽管计算科学中无法实现形式证明,但通过严格、自动化且透明的实践——如单元测试和版本控制——可作为科学确定性的实际、可辩护的标准。

更好的研究,从现在开始

从阅读论文到最终审阅,大幅缩短您的研究时间。

无需绑定信用卡

本解读由 AI 生成,并经人工编辑审核。