
在从临床诊断到遗传风险评估等数据驱动决策的时代,预测模型的可靠性至关重要。然而,一个根本性的挑战削弱了这种可靠性:模型常常表现出对其自身准确性的夸大。这种现象被称为过拟合,它导致模型在用于训练的数据上表现出色,但在面对新的、未见过的数据时却表现不佳。本文将直面这种统计学上的“乐观性”问题。首先,在“原理与机制”一节中,我们将剖析模型为何会变得“过度自信”,并探讨用于衡量和校正这种偏差的精妙的自助法技术。随后,“应用与跨学科联系”一节将展示这种校正在不同科学领域的普遍重要性,并阐明其在构建更“诚实”、更可信赖模型中的作用。
想象一下,您雇佣了一位高级裁缝来制作一套完美的西装。裁缝进行了数十次测量,记下了您确切的身姿,甚至考虑了您在周二下午会有的轻微驼背。最终制成的西装如第二层皮肤般贴合您的身体;从各方面衡量,它都是完美的。但现在,把这套西装借给您的朋友。即使您的朋友与您体型大致相同,这套西装也不会那么合身。正是那些让西装对您而言堪称完美的细节——为您的独特肩形和身姿所做的调整——使其对其他人来说略显尴尬。
统计或机器学习模型很像那套定制西装。当我们在一个数据集上“训练”一个模型时,我们实际上是在“量身定制”它。模型会勤奋地学习输入(预测变量)与结果之间的关系。我们在同一训练数据上测量的性能——我们称之为表观性能——几乎总是过于乐观。我们可能会看到一个临床模型,它似乎以惊人的准确性预测患者的结局,拥有高达 或更高的受试者工作特征曲线下面积(AUC)。
为什么这种性能常常是一种幻觉?原因在于统计学和机器学习中的一个基本概念:过拟合。一个灵活的模型,就像一个一丝不苟的裁缝,不仅学习数据中深层次的、根本的模式(“信号”),它还学习了仅特定于那一个数据集的巧合、随机的怪癖和无关的噪声。这好比裁缝为了追求完美,不仅根据您的身体来裁剪西装,还根据您量体那天口袋里的东西来裁剪。结果就是一个对它见过的数据适应得极其精妙,但对它尚未遇到的新数据适应性较差——即泛化能力较差的模型。当模型的预测变量数量()相对于数据中的信息量(例如,一项医学研究中经历目标事件的患者数量很少)较大时,这个问题会变得尤为严重。
如果表观性能是一种高估,一种统计学上的奉承,那么一个自然的问题就出现了:它到底奉承了我们多少?这种差异,即模型在训练数据上的性能与其在来自同一群体的未见新数据上的真实性能之间的差距,有一个名字:乐观性。
在数学上,我们可以简单地表示为:
我们的目标是获得对模型更现实的评估,如果我们能从表观性能中减去这个乐观性,就能实现这一目标。但我们在此遇到了一个障碍。为了计算乐观性,我们需要“真实性能”,而这需要在一个来自真实世界的无限新数据流上测试我们的模型。这当然是不可能的。我们只能使用我们拥有的单个数据集。
那么,我们如何测量一个其定义需要我们不具备的数据的量呢?这正是现代统计学中最聪明、最美妙的思想之一发挥作用的地方。
如果我们无法前往未来收集新数据,也许我们可以利用我们所知的唯一宇宙——我们当前的数据集——来创建令人信服的未来模拟。这就是自助法(bootstrap)的核心思想,这是一种由统计学家 Bradley Efron 开发的重抽样方法。
这个过程在其简单性中透着优雅。想象一下,您的包含 个患者的数据集是一个装有 个弹珠的大袋子,每个弹珠代表一个患者的数据。要创建一个“模拟的未来”,我们执行以下步骤:
由此产生的 个弹珠的集合就是一个自助样本。因为我们是有放回地抽样,所以这个新数据集与原始数据集略有不同。一些患者会被选中不止一次,而另一些患者——平均约占 ——则根本不会被选中。每个自助样本都是我们数据集的一个貌似合理的替代版本,一个本可能从真实潜在群体中抽取的平行宇宙。通过创建数百甚至数千个这样的自助样本,我们可以模拟如果我们能从真实世界中实际收集新数据集时期望看到的统计变异。
凭借创建新的、模拟数据集的能力,我们现在可以进行一场盛大的预演,来估计我们建模过程的乐观性。这个过程为每个自助样本重复进行,是发现与验证这一整个科学过程的缩影:
构建一个新模型: 我们取一个自助样本,并从头开始在其上训练我们的整个建模流程。这一点至关重要:如果我们的过程涉及自动化特征选择或超参数调整等步骤,这些步骤必须在这个自助样本上重新进行。我们不只是在重新测试一个旧模型;我们是在模拟整个发现行为。我们称由此产生的模型为 。
计算表观性能: 我们在这个新模型 被训练的数据——即自助样本——上评估它。这给了我们它自身的乐观的表观性能,我们称之为 。
在“真实世界”中测试: 然后我们用这个在自助样本上训练的模型 ,在我们的原始、完整数据集上进行评估。这里的原始数据集扮演了一个固定的、独立的现实的角色——一个“真实”性能的替代品。这给了我们测试性能,我们称之为 。
对于每一次自助预演,估计的乐观性是模型的自我评估与其在“真实世界”中性能之间的差异:。
在进行了比如 200 次这样的预演之后,我们只需将每次运行中发现的乐观性值取平均。这个平均值 就是我们对建模过程中固有乐观性的稳定估计。例如,如果在 200 次自助模拟中,自助样本上的平均表观 AUC 为 ,而原始样本上的平均测试 AUC 为 ,那么我们估计的乐观性就是 。
这个优雅的过程适用于任何性能指标。对于像 AUC 这样的区分度度量,值越高越好,乐观性是表观 - 测试。对于像 Brier 分数这样的校准度度量,值越低越好,则反向定义为测试 - 表观,以保持其值为正。同样的原则也可以用来估计模型校准斜率中的乐观性,这是衡量其预测是否过于极端的一个关键指标。
我们现在回到了起点。我们从主模型——即在我们的完整原始数据集上训练的模型——的表观性能开始。我们刚刚完成了一场盛大的自助预演,以估计我们建模过程的“乐观性”,或称自夸的程度。
最后一步非常简单。经乐观性校正的性能是我们原始的表观性能,经过我们刚刚估计的乐观性调整后的结果。
如果我们的主模型在开发数据上的表观 AUC 为 ,而我们估计的乐观性为 ,那么我们经乐观性校正的 AUC 将是 。这个校正后的值是我们对模型在未来来自同一群体的患者身上将如何表现的更现实、更可信的估计。它通常与其他严谨的验证方法(如 k 折交叉验证)得出的估计值非常吻合。
至关重要的是要理解这项强大技术能完成什么——以及它不能完成什么。
乐观性校正过程提供了一个更诚实的性能估计;然而,它并不能改善或“修复”底层的模型。我们最终部署的模型仍然是在原始数据集上训练的那个,其所有过拟合的特性都完好无损。这种校正只是摘掉了我们的玫瑰色眼镜,让我们能更清楚地看到模型可能的真实世界性能。
此外,整个自助过程都基于从我们的原始数据集中重抽样。这意味着它提供了对从同一潜在群体中抽取的新数据上的性能估计。它不能,也确实不能,解释当我们将模型迁移到一个完全不同的环境——一个新的医院、一个不同的国家,或一个未来的时间段——时会发生什么。患者群体、测量技术甚至结果定义的差异都可能导致性能下降,这是任何数量的内部验证都无法预测的。这种现象被称为数据集偏移。
这就是为什么外部验证——在一个来自不同环境的真正独立的数据上测试最终模型——仍然是评估模型真实世界效用和可移植性的无可争议的黄金标准。像自助法乐观性校正和交叉验证这样的内部验证技术,是开发稳健模型和获得对其性能的现实感知的不可或缺的工具。但它们是彩排,而不是首演。真正的验证来自于看性能在一个全新且陌生的舞台的聚光灯下如何保持。
在我们迄今的旅程中,我们探索了机器学习模型中那个微妙的幽灵:乐观性。我们看到,一个模型为了“取悦”我们,会如何记住它所训练数据的怪癖,导致其性能在实验室里看起来很出色,但在现实世界中却令人失望。我们还揭示了一种强大的工具来驱除这个幽灵:自助法,一个通过“拔自己的鞋带”来模拟未来、从而更诚实地评估我们模型真实能力的巧妙技巧。
现在,我们将看到这个简单而深刻的思想能带我们走多远。就像一把能打开十几个不同门的钥匙,乐观性校正的原则并非某种孤立的统计学奇闻。它是一条金线,贯穿于从医生诊所到遗传学家实验室的各种各样科学学科中。它是一种智识诚实的普适原则,一种确保我们构建的世界地图值得信赖的方法。
一个很自然会问的问题是:“这个自助法看起来很复杂。为什么不干脆把我们的数据分成两半,用一部分训练模型,用另一部分测试呢?”这是一个完全合理的建议,在拥有大数据的领域,这可能是一种很好的方法。但在许多现实世界的科学研究中——比如在新兴的影像组学领域,研究人员试图在医学图像中寻找模式——数据是宝贵且来之不易的。在这里,简单的分割可能会非常低效。
当我们分割一个小数据集时,我们同时制造了两个问题。首先,通过仅在一部分可用数据上训练我们的模型,我们很可能构建了一个比我们本可以构建的更弱的模型。因此,它在测试集上的性能将是对我们用所有数据能构建的最佳模型性能的一种悲观偏倚的估计。其次,因为我们的测试集也很小,我们的性能测量将是嘈杂且不稳定的;一个不同的随机分割可能会给出截然不同的答案。这就是高方差问题。我们两次丢弃了信息:一次在训练中,一次在测试中。
这正是重抽样方法大显身手的地方。K 折交叉验证和自助法都具有高得多的数据效率。交叉验证,即我们重复地用比如 90% 的数据进行训练,用 10% 的数据进行测试,是一个很大的改进。然而,它仍然存在小程度的同样悲观偏倚,因为它评估的每个模型都是在略少于完整数据集的数据上训练的。
我们所讨论的自助法乐观性校正方法,在某种意义上,是最直接的解决方案。它允许我们在我们拥有的所有数据上构建我们的最终模型。然后,它利用重抽样的魔力,不是去估计一个较弱模型的性能,而是去估计我们完整模型中确切的自我欺骗量——即乐观性。通过减去这个乐观性,我们得到了一个关于我们能构建的最佳模型实际表现如何的更诚实的估计。它直接针对我们最关心的量,并且这样做通常能提供一个偏差更小的答案。
没有什么地方比医学更需要诚实的预测。医生使用预测模型来指导患者的治疗,需要相信其声称的准确性是真实的。正是在这里,乐观性校正找到了其一些最至关重要的应用。
想象一下,我们正在构建一个模型来预测患者在癌症诊断后的长期生存。Cox 比例风险模型是实现这一目标的常用工具。其性能通常用“一致性指数”(C-index)来衡量,它告诉我们,对于两个随机选择的患者,事件(如疾病复发)发生得更早的那个被我们的模型正确地赋予了更高风险评分的概率。当我们拟合这样一个模型并在相同的数据上测试它时,我们可能会发现一个表观 C-index,比如说,0.74。但通过应用自助法乐观性校正,我们可以多次模拟拟合过程并测量平均差异。我们可能会发现乐观性大约是 0.04,从而得到一个更现实、经校正的 C-index 为 0.70。这个校正后的值是对模型真实预后能力的一个更为清醒和可靠的指引。
这个原则具有极好的普适性。它不仅适用于像生存这样的“是/否”结果。如果我们正在预测一种慢性病在一个有序尺度上的严重程度,比如“无”、“轻度”、“中度”或“重度”呢?这里,我们可能会使用像序数逻辑回归这样的模型。我们可能不用准确率,而是用像“序数对数损失”这样的指标来衡量性能,这个指标会奖励模型为正确类别赋予高概率。同样,表观的对数损失会好得令人难以置信。而我们同样可以用自助法来估计它好得过头的程度,并相应地调整我们的估计。
但也许医学中最优美的应用是将统计性能与现实世界的后果联系起来。一个模型的 AUC 告诉你它区分患者的能力如何,但它不告诉你使用这个模型是否实际上是一个好主意。为此,我们可以求助于决策曲线分析。这个框架计算一个模型的“净获益”,这是一种衡量其临床效用的指标,它权衡了治疗需要治疗的患者所带来的好处与治疗不需要治疗的患者所带来的危害。它回答了这样一个问题:“这个模型比简单地治疗所有人或不治疗任何人更好吗?”即使是这种衡量实践效用的复杂指标也受到乐观性的影响。通过应用自助法校正,我们可以获得医生在临床中使用该模型时可以预期的净获益的更现实估计,从而将我们的统计尽职调查与更好的患者结局直接联系起来。
这揭示了一个深刻的教训:乐观性不仅仅是模型最终系数的一个属性。它源于整个建模过程,包括任何特征选择或超参数调整的步骤。一个恰当的内部验证必须在每个自助法重抽样中重复流程的每一步,以捕捉所有乐观性的来源,并提供对建模策略的真正诚实的评估。
这一思想的影响延伸到了科学的最前沿。在基因组学中,科学家们根据成千上万人的基因组构建多基因风险评分 (PRS),旨在预测像冠状动脉疾病这样的复杂疾病的风险。构建一个 PRS 涉及到筛选数百万个遗传变异并调整参数以决定包含哪些变异。这个调整过程,即使在海量数据集中,也是乐观性的一个强大来源。
对 PRS 应用自助法校正是至关重要的。它可以调整我们对模型区分病例与对照组能力(其 AUC)的估计。但它能做的更多。它还可以校正模型的校准度。一个表面上校准良好的模型可能显示出 1.0 的斜率,表明其风险预测是完美定标的。但在进行乐观性校正后,我们可能会发现真实的斜率更接近 0.82。这告诉我们原始模型过于自信;它的预测过于极端,需要一个更温和、经校正的理解。这项工作也突显了内部验证(在相似群体中估计性能)和外部验证(在一个全新的群体中测试模型,可能来自不同的祖源)之间的关键区别,后者是模型价值的最终考验。
当我们寻找数据中更复杂的关系,例如交互效应时,同样的逻辑也能帮助我们。假设我们想知道一种新药是否对某一生物标志物水平高的患者效果更好。发现这样的交互作用将是迈向个性化医疗的重要一步。但因为我们常常测试许多可能的交互作用,我们很有可能仅仅因为偶然就发现一个虚假的交互作用。当我们找到一个有希望的交互作用时,我们必须问:它是真实的,还是我们乐观搜索的产物?同样,自助法使我们能够评估这一发现的可重复性。通过模拟整个发现过程,我们可以估计交互作用的表观强度被过拟合夸大了多少,从而让我们对自己的发现有一个更清醒的看法。
尽管自助法功能强大,但它可能感觉有点像一种蛮力方法——运行数千次模拟来近似一个答案。它是一个极好的、实用的工具。但在科学中,当我们能用一个简洁、优雅的数学公式取代一个蛮力计算时,总是一件令人愉快的事。这就像看到了让手表滴答作响的齿轮和杠杆。
对于一类被称为线性平滑器的模型,包括像岭回归这样的方法,我们恰好可以做到这一点。岭回归通常在许多预测变量相关时使用,它通过增加一个小的惩罚项来帮助稳定模型。事实证明,对于这些模型,存在一个关于预期乐观性的精确解析公式!它由下式给出:
这里, 是乐观性(预期测试误差与预期训练误差之差), 是数据中的噪声方差,n 是样本大小,而 是一个称为“帽子矩阵的迹”的量,它有一个优美的解释:它是模型的有效自由度。
这个公式非同凡响。它将模型的复杂性——其“自由度”——这一抽象概念,直接而精确地与我们应预期的乐观性量联系起来。一个更复杂的模型(更大的 ),根据数学上的必然性,将具有更多的乐观性。我们不需要运行一次模拟;乐观性已经融入了模型本身的数学结构中。这为自助法巧妙估计的同一现象提供了惊人的理论证实。
从生存分析到基因组学,从临床效用到线性模型理论,同样的故事在重复。我们的模型,如果任其自然,将会过于自信。而在每一种情况下,致力于严格的验证都使我们能够纠正这种过度自信,并得出一个更诚实、更有用的结果。
这不仅仅是一种统计上的讲究。它是负责任科学的标志。用于透明报告预测模型的指南,如 TRIPOD 声明,现在强调研究人员必须明确说明他们如何进行内部验证,以及如何量化和校正乐观性。这是一种承认,即承认我们有自我欺骗的可能,是迈向真正理解的第一步。
因此,乐观性校正的原则是诚实科学家的工具。它谦卑地承认地图不是疆域,第一个也是最重要的需要怀疑的人是自己。通过拥抱这种怀疑精神并使用像自助法这样的强大工具来量化它,我们构建的模型不仅更准确,而且更值得信赖。而在理解世界和改善人类状况的探索中,信任就是一切。