\begingroup

艾伦·唐尼 (Allen Downey) 于 2016 年撰写了一篇博客文章,题为“”,其中讨论了运行模拟相对于传统统计测试的优势。文章认为,由于现在的计算速度比历史标准快了数万倍,传统的统计分析方法不再有意义。例如,1908 年发现 t 检验时,它非常有用,因为所有计算都是手工完成的。但如今,iPhone 运行统计计算的速度比 1908 年人类手工计算的速度快约 100,000 倍。

引用唐尼的话:

当计算速度慢且成本高时,这些分析方法是必要的,但随着计算变得更便宜、更快,它们就变得不那么有吸引力了,因为:

  1. 它们缺乏灵活性:如果您使用标准测试,则必须使用特定的测试统计量和零假设的特定模型。您可能不得不使用不适合您问题领域的测试统计量,只是因为它适合分析。如果您试图解决的问题不适合现成的模型,那么您就倒霉了。

  2. 它们是不透明的:零假设是一种模型,这意味着它是对世界的简化。对于任何现实世界场景,都有许多可能的模型,基于不同的假设。在大多数标准测试中,这些假设是隐含的,很难知道一个模型是否适合特定的场景。

模拟方法最重要的优势之一是它们使模型变得清晰。创建模拟时,您必须考虑建模决策,而模拟本身会记录这些决策。

提供了这种模拟的实际示例。这让我感到疑惑:

  1. 有了当今的计算能力,为什么我们还要运行传统的统计测试,而不是创建明确的模型并运行数百万次模拟来找出观测值的真实 p 值?
  2. 是否存在传统统计方法比模拟更可取的场景?

\endgroup

1

  • 4
    \begingroup
    这个更便宜…
    \endgroup


    – 


最佳答案
2

\begingroup

我已经为包含交互作用的线性混合效应模型编写了置换检验,因为一些合著者担心残差的非正态性。

这是一项艰巨的工作。而且由于其复杂性,很容易出错。我绝对不想在半年后调试自己的代码。我只能想象别人这样做的痛苦。

并且结果 – 以 F 统计量的 p 值表示 – 与标准参数检验的结果极为接近。

我完全同意,如果通过模拟和置换使测试明确化,那将是一个优势。但是,我想说,基于重采样的方法至少可以像标准参数方法一样不透明。虽然重采样确实比参数方法更灵活(参数方法实际上非常灵活),但这种灵活性恰恰在更复杂的情况下很有用,在这种情况下,重采样方法的编码非常复杂。而且更难向非统计学家解释。

此外,绝大多数统计工作(可能)是由或多或少具有深度统计学习能力的非统计学家完成的:心理学家、STEM 科学家、工程师。统计学家和统计学相关数据科学家的数量根本不够。非统计学家很难理解何时使用哪种测试。我认为,期望他们深入理解统计学(具备必要的编程和软件开发技能)以定期使用基于重采样的替代方案是不现实的。是的,这绝对是可取的。只是不现实。

\endgroup

3

  • \begingroup
    作为 STEM 科学家之一,我不同意倒数第二句话。无论您是否是统计学家,抽样都很容易理解。当然,当您实际编写代码时,细节上会有很多困难,而且很容易出错,但至少您始终清楚自己在原则上要做什么。相比之下,参数检验对您(作为统计学家)来说似乎更容易,因为您花了很多时间研究它们 – 但对其他人来说,它们基本上只是黑匣子,这就是为什么他们很难理解何时使用哪种检验。
    \endgroup


    – 


  • \begingroup
    当您向非统计学家解释参数测试时,他们也许“理解”他们需要执行哪些步骤,然后能够遵循这些步骤;这可能会导致更少的细节错误,但更容易出现完全错过重点的错误。
    \endgroup


    – 

  • \begingroup
    @leftaroundabout:基于重采样的方法是否容易理解可能取决于您对抽象的熟悉程度,并且与您的领域相关。我建议的心理学家很难理解它。是的,我们在 CV 上确实收到了很多“完全没有抓住重点”的问题。但我相信转向基于重采样的方法会加剧这个问题。YMMV。
    \endgroup


    – 

\begingroup

斯蒂芬 (Stephan) 一如既往地提出了非常好的观点 (+1)。

除了实施上的复杂性之外,其他一些要点包括:

  • 像 GLMM 这样的相当标准的现代方法计算量相当大。尝试在中等规模的数据集上运行 Gamma GLMM…一次。即使使用、并行处理和截至 2024 年的现代 CPU,100010001000重复适合的模型n > 10,000n>10000n > 10,000样本需要几个小时。
  • 我从事信用风险工作,数据量达到数百万甚至数千万行并不罕见。即使是相当简单的方法也需要很长时间才能启动。对于一次最终的测试运行来说,这可能仍然是值得的,但当每一步都要花很长时间运行时,反复试验就很痛苦了。
  • 重采样通常已经是工作流程的一部分。交叉验证、重复运行交叉验证、重复运行嵌套交叉验证……深度达几层,额外的1000 ×1000×1000 \times计算时间很快就增加了。

\endgroup