选择 Benjamini-Hochberg 过程中的 Q 值来控制错误发现率

机器算法验证 假设检验 错误发现率
2022-03-28 04:12:55

我已经完成了 350 次独立测试。我需要纠正它们以进行多重比较。我正在使用 Benjamini-Hochberg (BH) 程序来控制 FDR。然而,事先选择 Q(我们想要控制 FDR 的水平)可能是有限制的(例如,我发现 Q=0.05 时没有发现,Q=0.1 时我发现 40:最好能说出这 36 个所谓的真实发现使用 Q=0.1 而不是报告没有发现)。

我有两个问题:

  1. 如果我正在进行探索性分析,那么查看不同 Q 水平的发现数量而不是先验修复它是否是错误的程序?然后,如果我只需要选择一个我可以选择的 Q 值,例如,仍然可以给我一些真实发现的更保守的值,或者给出最大数量的真实发现的值,等等。

  2. 我是否在检查不同级别的 Q 时再次进行多重比较?我不这么认为,因为我实际上并没有测试新假设,而只是将 FDR 控制到不同的水平:原始假设保持不变,改变的是 BH 程序中的标准。

3个回答

是的,这些事情经常发生,至少在遗传学方面是这样。要解决您的具体问题:

  1. 这是很常见的做法,我个人也以这种方式报告过结果。不过,请务必明确您报告的 FDR 级别。认为它类似于“边际”意义;人们可能会觉得它很有趣,但他们必须知道他们在看什么。

  2. 不,您不必为此进行多次更正,正如您提到的那样,您只是在操纵P-值以不同的方式而不改变任何东西。

如果我是你,我还会进一步研究 Motulsky 博士在上面提到的内容。报告q价值是一个非常常见和有用的指标。

您可能会发现有用的替代方法是报告 - 对于每次比较 - q 值。q 值(小写)是 Q 值(大写),在该 Q 值(大写)处,该特定比较恰好处于发现的边界。然后,您可以报告每个比较的 q 值,而不仅仅是使用任意 Q 值列出哪些比较是“发现”的列表。

alpha=.05 没有什么神奇之处。

我认为使用 alpha/q=.10 没有任何问题。我还将报告置信区间(并调整这些区间)。

或者,使用具有先验的贝叶斯模型来消除误报(马蹄形,拉普拉斯)