我只是发明了一种用于分析ROC曲线的贝叶斯方法吗?


21

前言

这是一个很长的帖子。如果您正在重新阅读本文档,请注意,尽管背景材料保持不变,但我已经修改了问题部分。此外,我相信我已经设计出解决该问题的方法。该解决方案显示在帖子的底部。感谢CliffAB指出我的原始解决方案(从该帖子中编辑;请参阅该解决方案的编辑历史)必定产生了偏差估计。

问题

在机器学习分类问题中,评估模型性能的一种方法是通过比较ROC曲线或ROC曲线下的面积(AUC)。但是,据我观察,对ROC曲线的可变性或AUC的估计很少进行讨论。也就是说,它们是根据数据估算的统计信息,因此存在一些与之相关的错误。表征这些估计中的误差将有助于表征,例如,一个分类器是否确实优于另一个分类器。

为了解决这个问题,我开发了以下方法(称为ROC曲线的贝叶斯分析)。我对这个问题的思考有两个主要观察结果:

  1. ROC曲线由来自数据的估计数量组成,并且适合贝叶斯分析。

    ROC曲线是通过将真实的阳性率对于假阳性率绘制而成的,每个假性率本身都是根据数据估算的。我考虑和函数,用于从B对A类进行排序的决策阈值(随机森林中的树票,SVM中距超平面的距离,逻辑回归中的预测概率等)。改变决策阈值值将返回和不同估计值。此外,我们可以考虑˚F P - [R θ Ť P ř ˚F P - [R θ θ Ť P ř ˚F P ř Ť P - [R θ Ť PTPR(θ)FPR(θ)TPRFPRθθTPRFPRTPR(θ)在一系列的伯努利试验中估计成功的可能性。实际上,TPR定义为它也是成功且总试验中二项式成功概率的MLE 。TPTP+FN>0TPTP+FN,TPTP+FN>0

    因此,通过将和的输出视为随机变量,我们面临着一个估计二项式实验成功概率的问题,在该二项式实验中,成功和失败的数目是确切已知的(给定通过,,和,我假设都是固定的)。按照惯例,仅使用MLE,并假设TPR和FPR对于特定值是固定的˚F P - [R θ Ť P ˚F P ˚F Ñ Ť Ñ θ θTPR(θ)FPR(θ)TPFPFNTNθ。但是在我对ROC曲线的贝叶斯分析中,我绘制了ROC曲线的后验模拟,这是通过从ROC曲线上的后验分布中抽取样本来获得的。针对该问题的标准贝叶斯模型是在成功概率上具有beta优先级的二项式可能性。成功概率的后验分布也是beta,因此对于每个,我们都有TPR和FPR值的后验分布。这使我们进入了第二个观察。θ

  2. ROC曲线不变。因此,一旦对和某个值进行了采样,则在采样点的ROC空间“东南”采样点的概率为零。但是形状受限的采样是一个难题。F P R θ TPR(θ)FPR(θ)

贝叶斯方法可用于从一组估计中模拟大量AUC。例如,与原始数据相比,有20个模拟看起来像这样。 模拟的ROC曲线

该方法具有许多优点。例如,可以通过比较其后验模拟的AUC来直接估计一个模型的AUC大于另一个模型的AUC的概率。可以通过模拟获得方差估计值,该估计值比重采样方法便宜,并且这些估计值不会引起因重采样方法而引起的相关样本的问题。

除了上述两个方面之外,我还通过对问题的性质进行了第三次和第四次观察来开发了此问题的解决方案。

  1. F P R θ TPR(θ)和具有适合模拟的边际密度。FPR(θ)

    如果(vice)是具有参数和(vice和)的beta分布随机变量,我们还可以考虑TPR的密度在几个不同值上的平均值与我们的分析相对应的。也就是说,我们可以考虑一个分级过程,其中一个是从我们的样本外模型预测中获得的值集合中采样值,然后对。所得样本的分布˚F P - [R θ Ť P ˚F Ñ ˚F P Ť Ñ θ θ θ Ť P - [R ( θŤ P - [R ( θθ Ť P - [R θ c ^ θ 1 / çTPR(θ)FPR(θ)TPFNFPTNθθ~θTPR(θ~)TPR(θ~)值是真实正率的密度,它不受本身的条件。因为我们假设的beta模型,所以结果分布是beta分布的混合,其分量等于我们的集合的大小,并且混合系数为。θTPR(θ)cθ1/c

    在此示例中,我在TPR上获得了以下CDF。值得注意的是,由于其中一个参数为零的beta分布的简并性,某些混合成分在0或1处为Dirac delta函数。这就是导致在0和1处突然出现尖峰的原因。这些“尖峰”表示这些密度既不是连续的也不是离散的。选择在两个参数中都为正的先验将具有“平滑”这些突然尖峰的效果(未显示),但是最终的ROC曲线将被拉向先验。可以对FPR(未显示)执行相同的操作。从边际密度提取样本是逆变换采样的简单应用。

TPR CDF

  1. 要解决形状约束要求,我们只需要对TPR和FPR进行独立排序。

    非递减要求与对TPR和FPR的边际样本进行独立排序的要求相同-也就是说,ROC曲线的形状完全取决于将最小TPR值与最小FPR配对的要求值等等,这意味着形状受约束的随机样本的构造在这里微不足道。对于先前的不正确的,模拟提供了证据,表明以这种方式构造ROC曲线所生成的样本的平均AUC在大量样本的范围内会收敛至原始AUC。以下是2000年仿真的KDE。Beta(0,0)

在此处输入图片说明

与Bootstrap的比较

在与@AdamO进行的冗长的聊天讨论中(感谢AdamO!),他指出,有几种已建立的方法可以比较两个ROC曲线,或表征单个ROC曲线的可变性,其中包括引导程序。因此,作为一个实验,我尝试引导我的示例,该示例在保留集中的观察值,并将结果与​​贝叶斯方法进行比较。结果在下面进行了比较(此处的bootstrap实现是简单的bootstrap -随机采样,替换为原始样本的大小。bootstrap的光标阅读暴露了我在重新采样方法方面的知识空白,因此也许这不是适当的方法。)n=20

在此处输入图片说明

该演示表明,引导程序的平均值偏向于原始样本的平均值以下,并且引导程序的KDE产生了明确定义的“驼峰”。这些驼峰的产生几乎不是神秘的-ROC曲线将对每个点的包含都敏感,而一个小样本(此处,n = 20)的影响是潜在的统计数据对每个点的包含都更加敏感点。(强调的是,这种模式并不是内核带宽的伪像,请注意地毯图。每个条带都是几个具有相同值的引导程序副本。引导程序具有2000个副本,但是不同值的数量显然要小得多。我们可以得出结论,驼峰是引导程序的固有特征。)相比之下,平均贝叶斯AUC估计值往往与原始估计值非常接近,

我修改过的问题是修改后的解决方案是否不正确。一个好的答案将证明(或证明)所得的ROC曲线样本存在偏差,或者同样证明或证明此方法的其他质量。


1
我认为您对ROC曲线过于相信。我还没有看到一个能带来真知灼见的案例。我已经看到许多情况导致阈值化,这确实是一个坏主意。
Frank Harrell'1

1
@FrankHarrell感谢您的来信,Harrell博士。但是对于我的客户,我的任务是开发分类器,这些分类器将在非常大的数据集中自动做出决策。我理解在医学上这是非常没有用的,但是当我们需要对数千个数据点做出决策时,专家对每个观察值进行效用/成本分析根本是不切实际的。我们需要选择要实现的模型来完成此任务,而ROC / AUC可以帮助您做出决定。
Sycorax说恢复莫妮卡

2
由于您已经预测了概率,因此至少在流程开始时,您还是不会使用分类器。实用程序可以使决策更好,但是如果您无法获得实用程序,则仍然可以使用提升曲线和决策风险阈值来与ROC曲线进行不同的思考。这并不是真正的医学问题。
Frank Harrell

3
X1+X2<1X1,X2X1X2

3
从我的课程笔记开始-参见biostat.mc.vanderbilt.edu/CourseBios330。另外,也要看看生物统计的生物医学研究提供biostat.mc.vanderbilt.edu/ClinStat,特别是信息缺失章和第10章的开始
弗兰克·哈瑞尔

Answers:


7

c

通常,您可以使用bootstrap cf Pepe Etzione Feng来估计ROC曲线的可变性,这是相当公认的。这是一个很好的方法,因为ROC曲线是经验估计,并且引导程序是非参数的。以这种方式对任何东西进行参数化都会带来一些假设和复杂性,例如“一个平坦的先验真的没有信息性吗?” 我不认为这是事实。

θθ

以具有完美判别力的模型为例。使用您的方法,您会发现置信带是单位平方。他们不是!具有完美判别力的模型没有可变性。引导程序将向您显示。

如果要从贝叶斯的角度处理ROC“分析”问题,那么将先验放在用于分析的模型空间上来解决模型选择问题可能是最有用的。那将是一个非常有趣的问题。


我不确定此答案是否回复了帖子的内容。例如,我只是为具有完美判别力的模型模拟了ROC曲线。这些曲线全部集中在ROC空间的最西北角,并且AUC模拟周围的中心间隔有些数字非常接近1。这与答案中的主张直接矛盾,后者声称模拟必须位于遍及整个单位广场。
Sycorax说恢复莫妮卡

1
θθTPR(θ)FPR(θ)

θ

θθ

@ user777之前确实有什么?
AdamO'1
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.