184篇高分生物医学AI:97%交叉验证比较用了无效统计检验

2026-09-29

NUS与牛津复盘影响因子≥15的184篇生物医学AI,97%用了把交叉验证折当独立样本的检验。能重跑的68篇里69%含虚假显著,摘要主张约三分之一站不住。

这篇在解决什么

生物医学研究越来越靠模型比输赢来决定用哪套算法、押哪种生物标志物。比较几乎都走 K 折交叉验证:数据切成 K 份,轮流当测试集。测试折互不重叠,训练折却大量重叠,每折还要给别的迭代当训练。折级别的性能差因此正相关。

成对 t 检验、Wilcoxon 这些常用检验把这 K 个数当独立样本。方差被低估,假阳性率被抬高。Dietterich 1998、Nadeau 与 Bengio 2003 早就写过这个问题。生物医学里有多普遍、已经发表的「显著」有多少会塌,一直没人按期刊标准量过。

方法

NUS 的 B.T. Thomas Yeo 组与牛津 Thomas Nichols 按 PRISMA 在 PubMed 检索 2020 年 6 月 1 日到 2025 年 6 月 1 日、影响因子不低于 15 的原创论文,专门找用交叉验证比较预测性能的研究。2400 条记录里 1875 篇在比模型,其中 1008 篇(54%)没清楚做统计检验也没报置信区间。最终 184 篇能判定检验有没有考虑折间相关。筛选有 Claude 辅助,关键判定由两人独立核对。

对能拿到折级统计量、或能从精确 p 值和自由度还原的 68 篇,用 Nadeau–Bengio 校正重采样 t 检验重跑原先显著的比较。校正后 p≥0.05 的,论文称为虚假比较。SHARP 改了交叉验证方案,没法事后套到旧研究上。

SHARP(Split-Half Analysis of Repeated Performance)每次把数据随机切成互不重叠的两半,各自做 K 折交叉验证,得到一对独立的半样本统计量,再把这个过程重复 J 次。同一轮的两半独立,不同轮之间仍相关,于是方差和折间相关都能从数据里估出来,不必预先指定相关强度。推断用 score test,因为它在模拟里假阳性控制最好。主结果里 SHARP5-R 是 5 折、60 次重复,SHARP10-R 是 10 折、30 次。

对照模拟覆盖手写数字 EMNIST、UK Biobank 灰质体积、Covertype 地表覆盖、KEGG 代谢通路四套数据,样本量 100 到 2000,固定超参、单次验证划分、嵌套交叉验证三种策略,共 420 种情景,和另外 12 种检验比假阳性、检验力和置信区间覆盖率。

结果

184 篇里 178 篇(97%)用了假定折独立的无效检验。只用经典机器学习的 95%,只用深度网络的 97%,两者都用的 100%。最常见的是未校正 t 检验和 Wilcoxon。五年间相关论文量每年增 14.5%,无效比例没有下降(置换检验 p=0.63)。至少 10 篇的七个领域里,神经科学最低也有 82%,遗传学与遗传、生物技术与应用微生物、生化与分子生物学是 100%。跟期刊影响因子、0 到 14 的严谨度评分、数据或代码是否公开都没有检出关联。

68 篇能重跑的里,47 篇(69%)含虚假比较。37 篇摘要主张靠无效检验撑着,其中 22 篇(59%)支撑比较是假的。这 47 篇里,各篇最大校正 p 的中位数是 0.23;虚假比较内部中位数再取中位数是 0.15;摘要那 22 篇是 0.17。p=0.17 对应双侧 |z|=1.37,相对 p=0.05 的 1.96,平均要再大 43% 的效应才能重新显著。作者把 69% 外推到 173 篇有风险的研究:(173/184)×(47/68)=65% 含虚假比较;摘要层面(100/184)×(22/37)=32%。

零假设为真的模拟里,一次 10 折交叉验证,成对 t 检验和 Wilcoxon 的假阳性率约 19%,64% 的情景 95% 置信区间整体高于 0.05。重复 30 次后假阳性率升到 77%,420 种情景全部膨胀;再加重复会逼近 100%。有限样本上两模型总会有点差,独立假设让「样本量」随重复增加,不确定度被人工压扁。KEGG 上用样本级统计代替折平均,一次 10 折从 24% 升到 38%。

SHARP 把假阳性压在名义 5% 附近,与 5×2 成对 t 检验、经验差值检验相当。校正重采样 t 检验在 5 折时 19% 情景失控,10 折时 44%,而且随模拟方案会变。检验力上 SHARP5-R 最高,比 Dietterich 的 5×2 成对 t 检验高 27.8 个百分点,两两比较全胜。95% 置信区间覆盖率 SHARP5-R 和 SHARP10-R 均值 96%;假定独立的检验区间过窄,5×2 和经验检验则过宽、覆盖率接近 100%。

为什么重要

交叉验证给出的点估计仍然有效,坏的是方差、p 值和置信区间。很多「模型 A 显著优于 B」的摘要,证据比印出来的弱一截。重复交叉验证本是为了稳定,配上独立假设反而把假阳性推向 100%。

单数据集比较,作者默认推荐 SHARP;样本量撑不起对半切时,退到校正重采样 t 检验。6 个以上独立数据集才适合对数据集级差值做 Wilcoxon。外部验证评估的是已经训好的模型能不能搬到新人群,没有折间相关,不该和交叉验证混用同一套检验。论文还列了最低报告项:折数、重复次数、是否共用划分、检验名称、输入统计量的维度。作者称有 scikit-learn 兼容实现,正文里 GitHub 仍是占位符。

问题本身不新。把高分生物医学期刊里的发生率量出来,再给一个能估相关的检验,才是这篇的贡献。

局限与存疑

65% 和 32% 是从 68 篇外推到 173 篇再推到更广文献。作者给出三条辩护:未重跑的比较里包括 DeLong 这类更容易胀假阳性的检验;校正 t 检验本身并不总能控住假阳性;多重比较基本没补。能重跑要求报告更完整,没有理由认为剩下的更安全。影响因子卡在 15 以上,无效检验又跟影响因子无关。这些都指向「偏保守」。外推仍然是外推。

SHARP 在半样本上做交叉验证。算法随训练量缩放不一致时,相对表现可能和全数据交叉验证不同。10 类、N=100 时两半还要保证每折有类,这篇直接排除了该设置。模拟用的是逻辑回归、ridge、Extra Trees,不是大模型。GitHub 链接在预印本里还没填上。

虚假比较不等于原结论为假,只说明统计证据没那么强。这篇是 2026 年 9 月的预印本。

术语

原文与代码

社区讨论

全部论文解读