科学方法:一切都始于一个简单而基本的问题。 你如何“知道”某件事?
我们如何收集知识并对这些知识的正确性充满信心? 几个世纪以来,许多聪明人的苦心研究提炼出了以下内容:
- 你永远无法确定地知道某件事。
- 你可以提出一个假设。
- 然后,你继续用实验来检验该假设。
- 每个实验都必须试图证明该假设是错误的。
- 你越无法证明该假设是错误的,你对该假设的信心就越大。
- 如果你成功地证明了该假设是错误的,那么你就摆脱该假设,让其他人知道,喝更多的咖啡,然后回到第 2 步。
作为对 Mel 关于版权转让的有趣帖子的后续,我开始写一篇帖子,详细描述为什么任何人都不应该签署 ACM 版权转让协议的原因。 然而,在这个过程中,我意识到这些原因需要解释学术出版的经济学,而反过来,要理解这种经济学,首先必须解释科学方法是如何运作的。 这是三篇博文中的第一部分,旨在做到这一点。
之所以与流行的看法相反,在第 4 步和第 5 步中无法简单地进行实验来证明该假设是正确的,原因在于实验的结果也可以用数百个其他假设来解释,因此,我们当前喜爱的假设并不是我们观察到的唯一可能的解释。 实验的结果与假设预测的结果一致,并不意味着该假设是正确的。 相反,这种一致性只是让我们对我们可以继续使用该假设作为对现实世界如何运作的良好描述这一事实充满信心。 一个未能证明该假设是错误的实验,仅仅是与该假设一致的另一个证据。
这就是我们今天所拥有的科学方法,它是“知道”某件事的最佳方法。 我们拥有的最佳假设是那些经历了数百次反复尝试证明它们是错误的假设。 我们将假设归类为更大的知识体系,我们称之为理论,我们喜欢那些我们继续在我们反复的实验尝试中未能证明它们是错误的理论。
当然,我们在第 4 步中进行的实验可能是不完美的。 实验错误可能会悄悄进入。 计算错误可能已滑入数据分析中。 软件错误可能存在于我们用来计算结果的程序中。 缺少咖啡可能会误导实验者观察,或者小妖精和矮妖精可能会扰乱测量仪器...... 因此,在我们信任实验本身的结果之前,我们必须重复它,而且我们必须多次这样做。 足够多的次数来证明结果不太可能只是简单的统计异常值。 重复还必须由其他人以各种条件进行,以确保我们的心态没有偏向实验,以及导致我们得出结论的分析。 独立验证还有助于消除我们特定设备集以及我们进行实验的当地条件可能产生的潜在影响。
当实验被其他人以独立于我们的过程复制,并得出相似的结果时,我们对这些实验会获得很大的信心。
这对软件开发人员来说并不新鲜。
作为开发人员,我们不满足于“该程序在我的计算机上运行”,也不满足于懒惰的“它对我有效”的解释。 我们要求该程序必须由不同的人在不同的计算机上进行测试。 我们期望代码包含测试,并且这些测试已经由许多不同的人运行。 只有这样,我们才能信任代码。
因此,对于科学方法的正确运作至关重要的是,要有一个信息传播系统,研究人员可以通过该系统与他人分享他们假设的完整描述,以及用于进行实验的精确配方。 凭借这种精确的配方,预计其他研究人员会重复实验,并反过来报告这些实验的结果。 有时结果会匹配,有时则不会,然后所有相关的研究人员都应该查看流程的细节,以找出差异背后的原因。
科学界使用的信息传播工具在几个世纪以来发生了变化。 最初,它们是发送给其他科学家的简单信件。 然后,它们演变为科学协会印刷的出版物,这些出版物专注于特定的科学领域。 出版物的内容应该包括关于其他人如何重复实验的完整细节。 出版物的接收者会尝试该配方,然后将他们的结果发表回去。 这种实验验证可重复性的过程被称为“同行评审”。 它通常由你的“同行”完成,那些像你一样书呆子的科学家,他们宁愿花时间在物理大楼地下室的实验室里,也不愿在星期天去海滩享受乐趣。
这就是科学方法应该运作的方式。 伽利略·伽利雷制造了一个望远镜,把它指向天空,发现木星有四颗卫星,写了一封关于它的信,并把副本寄给了他的同行。 同行们制造了类似的望远镜,把它们指向天空,并观察到木星周围的卫星。 生活是美好的! 但那是 17 世纪。
自那以后,科学研究的专业化,以及它作为一种为学术机构带来资金、促进研发公司活动以及为大量人提供建立职业生涯和谋生手段的经济活动的出现,导致了流程质量标准的下降。 曾经包括实验完全复制的严格的同行评审,已经退化为更舒适的同行评审,在这种评审中,同行现在可以自由地跳过实验的验证。 毕竟,如果我已经“知道”结果会是什么,那么进行实验有什么意义呢?(这是讽刺)
在当今的学术出版环境及其相关的“同行评审”过程中,验证可重复性的严格传统已经退化和淡化。 通常,同行评审员的评审仅仅基于他们对特定提交的阅读和先前的经验,他们不重复实验,然后继续对论文的正确性和价值发表意见。 审稿人花在撰写审稿上的时间通常在两到四个小时之间。 这包括阅读论文的时间以及花在找出表明审稿人确实有资格对论文发表意见的一组合理批评的时间。 评审活动也是一种无偿的,通常也是匿名的活动。 很多时候,评审实际上是在航班上和机场的等待时间内,或者在下班后和周末进行的。 这种“同行评审”方法已经退化并贬值到仅仅是“你说,我说”的庸俗程度。 这样的审稿人从定义上讲是“评论员”,而不是科学家。
当然,借口有很多。“重复实验太贵了。”“花的时间太长了。”“我还有另一篇论文要写,所以它必须由其他人来评审,以满足永无止境的发表或灭亡的循环。”
知道流程是这样的,作者懒得在他们的论文中描述如何复制他们的实验的“小细节”。 有些作者甚至懒得在发表之前重复几次自己的实验,因此他们不会降低小妖精和矮妖精已知干扰效应。 有些作者更进一步,可以自由地完全跳过实验,因为毕竟,如果他们已经“知道”结果会是什么,那么进行实验有什么意义呢?(这里再次讽刺)
Eric Raymond 指出,“开源是将科学方法应用于软件开发过程。” 特别是,信息共享、教育承诺、同行评审和真正的实验验证的各个方面都根植于开源软件项目运行其日常业务的方式中。 这些概念是有意识地或无意识地从科学界过去运作方式中复制过来的。 今天,当谈到如何获得、验证和分享知识时,开源社区可以带回学术社区一些东西。
许多学术社区将受益于 Linus Torvalds 简单的格言,“空谈无补;给我看代码。”
这提醒我们,仅仅谈论和提供关于科学主题的意见是不够的。 验证谈话中提出的主张的方法和实践必须成为科学和学术讨论的一部分。
在我的下一篇文章中,我将介绍当今的学术机构、科学和技术协会、学术出版商、资助机构和科学家如何实施同行评审系统,以及激励他们互动的原因和奖励机制。
2 条评论