是否可以更改假设以匹配观察到的数据(又名钓鱼探险)并避免 I 类错误的增加?

机器算法验证 假设检验
2022-01-21 19:01:13

众所周知,研究人员应该在形成假设之前花时间观察和探索现有数据和研究,然后收集数据以检验该假设(指零假设显着性检验)。许多基础统计书籍警告说,假设必须先验形成,并且在收集数据后不能更改,否则方法论无效。

我知道更改假设以适应观察到的数据存在问题的一个原因是因为虚假数据导致 I 型错误的可能性更大,但我的问题是:这是唯一的原因还是存在其他基本问题在钓鱼探险?

作为一个额外的问题,有没有办法在不让自己暴露于潜在陷阱的情况下进行钓鱼探险?例如,如果你有足够的数据,你能从一半的数据中产生假设,然后用另一半来检验它们吗?

更新

我感谢对我的问题的兴趣,但答案和评论主要针对我认为我建立的背景信息。我很想知道除了虚假结果的可能性更高之外,是否还有其他原因导致它不好,以及是否有方法(例如首先拆分数据)事后更改假设但避免增加 I 类错误。

我已经更新了标题,希望能反映我的问题的主旨。

谢谢,很抱歉造成混乱!

3个回答

当然,你可以继续钓鱼探险,只要你承认这是钓鱼探险并这样对待它。一个更好的名称是“探索性数据分析”。

一个更好的类比可能是射击目标:

如果您击中靶心,您可以向目标射击并庆祝。

您可以在没有目标的情况下进行射击,以测试您的枪的性能。

但是在墙上射击然后在弹孔周围画一个目标是作弊。

避免其中一些问题的一种方法是在训练数据集中进行探索,然后在单独的“测试”数据集上对其进行测试。

钓鱼探险的问题在于:如果你测试了足够多的假设,其中一个会以较低的 p 值得到证实。让我举一个具体的例子。

想象一下,你正在做一项流行病学研究。您已经找到了 1000 名患有罕见疾病的患者。你想知道他们有什么共同点。因此,您开始测试 - 您想查看此样本中是否过度表示了特定特征。最初你测试性别、种族、某些相关的家族史(父亲在 50 岁之前死于心脏病,……)但最终,由于你很难找到任何“坚持”的东西,你开始添加各种其他因素,这些因素只是可能与疾病有关:

  • 是素食主义者
  • 去过加拿大
  • 大学毕业
  • 已结婚
  • 有孩子
  • 有猫
  • 有狗
  • 每周至少喝 5 杯红酒
    ……

现在事情就是这样。如果我选择了足够多的“随机”假设,那么至少其中一个假设将导致 p 值小于 0.05 - 因为 p 值的本质是“拒绝零假设时错误的概率没有效果”。换一种说法——平均而言,对于你测试的每 20 个虚假假设,其中一个会给你 ap < 0.05

这在 XKCD 卡通http://xkcd.com/882/中得到了很好的总结:

在此处输入图像描述

悲剧在于,即使单个作者没有对样本进行 20 次不同的假设检验以寻找显着性,也可能有 19 位其他作者在做同样的事情;“找到”相关性的人现在有一篇有趣的论文要写,而且很可能会被接受发表……

这导致了不可重复的发现的不幸趋势。作为个人作者,防止这种情况发生的最好方法是设置更高的标准。与其测试单个因素,不如问问自己“如果我测试 N 个假设,出现至少一个误报的概率是多少”。当您真正测试“钓鱼假设”时,您可以考虑进行Bonferroni 校正以防止这种情况发生 - 但人们通常不会这样做。

Ioannides 博士发表了一些有趣的论文——《大西洋月刊》专门针对这一主题进行了介绍。

另请参阅这个较早的问题,其中包含几个有见地的答案。

更新以更好地回答您问题的各个方面:

如果您担心自己可能正在“钓鱼”,但您真的不知道要制定什么假设,您绝对可以将您的数据拆分为“探索”、“复制”和“确认”部分。原则上,这应该会限制您对前面概述的风险的暴露:如果您在勘探数据中的 ap 值为 0.05,并且您在复制和确认数据中获得了相似的值,那么您出错的风险就会下降。英国医学杂志(影响因子为 17+ 的备受推崇的出版物)展示了“正确行事”的一个很好的例子

探索和确认与未产妇女单纯妊娠相关的因素:前瞻性队列研究,Chappell等人

以下是相关段落:

我们将 5628 名女性的数据集分为三部分:随机选择的澳大利亚和新西兰三分之二女性的探索数据集(n=2129);来自澳大利亚和新西兰的其余三分之一女性的本地复制数据集(n = 1067);以及来自英国和爱尔兰共和国的 2432 名欧洲女性的外部、地理上不同的确认数据集。

回顾一下文献,Altman 等人发表了一篇题为“预后和预后研究:验证预后模型”的好论文,其中深入得多,并提出了确保您不会陷入这个错误。文章中的“要点”:

未经验证的模型不应在临床实践中使用 在验证预后模型时,应评估校准和辨别力 应根据与用于开发模型的数据不同的数据进行验证,最好来自其他中心的患者 模型在实践中可能表现不佳由于开发方法的缺陷或因为新样品与原始样品差异太大

特别注意使用来自其他来源的数据进行验证(我解释一下)的建议- 即,将数据任意拆分为子集是不够的,但您应该尽您所能证明从一组中“学习”的实验可以应用于来自不同实验集的数据。这是一个更高的标准,但它进一步降低了设置中的系统偏差产生无法独立验证的“结果”的风险。

这是一个非常重要的主题 - 感谢您提出这个问题!

该问题询问是否存在除 I 型错误膨胀之外的其他问题,与钓鱼探险有关。

当您拒绝原假设(通常无效)时,就会发生 I 类错误。与 I 类错误相关但不完全相同的一个概括是,即使空值是错误的(即,存在一些影响),钓鱼探险也会导致对所发现影响的大小(以及重要性)的高估。换句话说,当您不查看特定变量,而是查看所有内容并将注意力集中在最大的影响上时,您发现的影响可能不是0, 但偏向于看起来比实际更大。这方面的一个例子可以在我的回答中看到:自动模型选择算法