扬声器
|
成绩单
|
| 迈克尔·克罗蒂 |
你好。 感谢您收听 |
| |
我们关于不平衡分类的讨论添加了可让您在 JMP Pro 中比较采样技术和模型的内容。 |
| |
我是迈克尔·克罗蒂。 我是 JMP 文档团队中的统计撰稿人之一,今天的共同演讲者是 Colleen McKendry,她也是统计文档团队中的一员。 这是我们与 Marie Gaudard 合作的作品。 |
| |
这是我们今天演讲的简要概述。 我们将了解我们创建的添加的目的、不平衡分类问题的一些背景以及如何在这种情况下获得分类模型。 |
| |
我们将研究一些在插件中包含的采样方法,这些方法在不平衡分类问题中很流行。 |
| |
我们将查看加载项中可用的选项 |
| |
并讨论如何获取插件,然后Colleen将展示插件的示例和演示。 |
| |
在社区提供的幻灯片中,还有参考资料和包含其他背景信息的附录。 |
| |
因此,我们的加载项(不平衡分类加载项)的目的是让您应用专为不平衡数据设计的各种采样技术。 |
| |
您可以将应用这些技术的结果以及 JMP Pro 中提供的各种预测模型进行比较。 |
| |
您可以使用精度召回曲线、ROC 曲线和增益曲线以及其他度量来比较这些模型和采样技术拟合。 |
| |
这允许您选择使用曲线进行分类的阈值。 |
| |
您还可以将 Tomek、SMOTE 和 SMOTE plus Tomek 采样技术直接应用于您的数据,这使您能够使用现有的 JMP 平台和 |
| |
如果您不喜欢我们选择的大多数默认方法选项,请对新采样的数据进行微调并微调建模选项。 |
| |
需要注意的是,Tomek、SMOTE 和 SMOTE plus Tomek 抽样技术可用于名义变量、序数变量以及连续预测变量。 |
| |
这是关于数据不平衡问题的一些背景知识。 |
| |
因此,一般来说,您可以有多项式响应,但我们将重点关注二元响应变量,关键点是一个响应水平的观测值数量远大于另一响应水平的观测值数量。 |
| |
我们将这些响应级别分别称为多数类级别和少数类级别。 因此,大多数时候,少数群体级别是您对预测和检测感兴趣的兴趣级别。 这可能就像检测欺诈或疾病或信用风险的存在。 |
| |
我们希望根据回归变量来预测类别成员资格。 |
| |
为此,我们开发了一个预测模型,将成员资格分配到少数群体的概率,然后我们选择一个阈值来优化 |
| |
各种标准。 这可能是误分类率、真阳性率、假阳性率等等。 然后,如果少数类别的预测概率超过所选的阈值,则我们将观察结果分类为少数类别。 |
| |
那么我们如何获得分类模型呢? |
| |
我们在 JMP 中有许多不同的平台,可以对二元变量、二元结果进行预测 |
| |
当存在回归变量时,我们需要一种方法来比较这些模型。 嗯,有一些传统的衡量标准,比如分类准确性,并不适合不平衡的数据。 作为一个极端的例子,你可以考虑 2% 少数群体的情况。 |
| |
只需将所有观察结果分类为多数情况,我就可以给您 98% 的准确度。 现在这不是一个有用的模型,你也不会想使用它, |
| |
因为你没有预测......你没有正确预测任何目标案例到少数案例,而只是整体准确率,所以你的准确率为 98%,这听起来相当不错。 |
| |
因此这促使人们探索其他方法来衡量不平衡分类模型中的分类准确性。 其中之一是精确召回曲线。 |
| |
它们通常与不平衡数据一起使用,并根据真实阳性率召回绘制阳性预测值或精度。 |
| |
而且由于精度考虑了大多数实例,因此 PR 曲线比 ROC 曲线对类别不平衡更敏感。 |
| |
因此,PR 曲线能够更好地突出不平衡数据模型的差异。 因此,PR 曲线是我们的添加报告中首先显示的内容。 |
| |
处理不平衡分类数据的另一种方法是使用有助于对少数类别进行建模的抽样方法。 |
| |
一般来说,这些只是对响应分布施加更多平衡的不同方式,反过来,这有助于更好地划分多数类和少数类观察之间的界限。 因此,在我们的添加中,我们有七种不同的采样技术。 |
| |
我们不会过多谈论前四个,我们将重点关注后三个,但很快,没有权重就意味着它听起来的样子。 我们不会做任何...不会做任何改变,那就是 |
| |
本质上,如果您没有使用任何类型的抽样方法来解决不平衡问题,那么您会做些什么提供基线。 |
| |
加权将超额分配少数案例,使得多数类别和少数类别的权重之和相同。 |
| |
随机欠采样将随机排除大多数情况以达到平衡情况,随机过采样将随机复制 |
| |
少数情况再次达到平衡状态。 |
| |
然后我们将在下面的幻灯片中详细讨论接下来的三种更高级的方法。 |
| |
因此,第一个先进方法是 SMOTE,它代表合成少数过采样技术。 |
| |
这基本上是一种更复杂的过采样形式,因为我们在数据中添加了更多的少数案例。 |
| |
我们通过生成与现有少数类观察结果相似的新观察结果来做到这一点,但我们并不是像过采样那样简单地复制它们。 |
| |
因此,我们使用 Gower 距离函数,并对每个少数类观测值执行 K 个最近邻,然后生成观测值来填充这些近邻定义的空间。 |
| |
在这张图中,您可以看到我们是否有红色的少数案例。 我们选择了三个最近的邻居。 |
| |
我们将随机选择其中之一。 它恰好是这里的这个,然后我们生成一个案例,另一个少数案例,位于这个小阴影框中的某个位置。 这是二维的。 如果你有 |
| |
n 维的预测变量,那么阴影区域将是一个 n 维空间。 |
| |
但需要指出的一件关键事情是,您可以选择您所选择的最近邻居的数量。 |
| |
随机选择,您还可以选择执行此操作的次数 |
| |
针对少数情况使用此算法。 |
| |
下一个采样方法是Tomek links。 这种方法的作用是试图更好地定义少数类和多数类之间的界限。 为此,它会从多数类中删除与少数类观察结果接近的观察结果。 |
| |
同样,我们使用高尔距离来查找 Tomek 链接,Tomek 链接是一对属于不同类别的最近邻居。 因此,一个多数派和一个少数派是彼此最近的邻居。 |
| |
为了减少这些实例的重叠,可以删除该对中的一个或两个成员。 在我们的加载项的主要选项“评估模型”选项中,我们仅删除大多数实例。 但是,在 Tomek 选项中,您可以使用任一形式的删除。 |
| |
最后,最后一种采样方法是 SMOTE 加 Tomek。 这结合了前面两种采样方法。 |
| |
它结合它们的方式是应用这种模式算法来生成新的少数观察结果,然后一旦你得到了原始数据,加上一堆生成的新的少数情况, |
| |
tt 适用于 Tomek 算法来查找属于不同类别的最近邻居对。 在这种方法中,Tomek 对中的两个观测值都被删除。 |
| |
因此,不平衡分类插件在安装时有四个选项,所有选项都显示为插件菜单下的子菜单项。 |
| |
第一个是评估模型选项,它允许您使用各种采样技术来拟合各种模型。 接下来的三个只是独立的对话,用于执行我们刚才讨论的三种采样技术。 |
| |
因此,在插件的评估模型选项中,它提供了一个不平衡的分类报告,有助于模型和采样技术组合的比较。 |
| |
它显示了 PR 曲线和 ROC 曲线,以及增益曲线,对于 PR 和 ROC 曲线,它显示了曲线下的面积,通常,每条曲线下的面积越大,模型拟合得越好。 |
| |
它提供了按类别划分的预测概率图,可帮助您了解每个模型的拟合情况。 |
| |
它还提供了一个技术和阈值数据表,该表包含一个允许您重现报告的脚本 |
| |
这是您第一次运行插件时生成的。 我们想强调的是,如果你运行这个并且你想保存你的结果而不重写整个 |
| |
建模和采样方法算法,您可以保存此技术和阈值表,这将允许您保存结果并重现报告。 |
| |
现在我们将查看评估模型选项的对话。 它允许您从多种模型和采样技术中进行选择。 |
| |
您可以输入二元类变量以及所有 X 预测变量,然后 |
| |
我们,为了适合所有的模型和 |
| |
在测试集上评估它们,我们将数据随机分为训练验证集和测试集。 您可以提供...您可以设置每组中的比例。 |
| |
如果您想重现结果,可以使用随机种子选项。 然后还有SMOTE选项 |
| |
我之前提到过,你可以选择最近邻居的数量,从中选择一个作为用于生成新案例的最近邻居,每个少数案例的复制是为每个少数重复该算法的次数观察。 |
| |
同样,还有其他三个采样选项 |
| |
插件中的选项对应于 Tomek、SMOTE 和 SMOTE plus Tomek。 在 Tomek 采样选项中,它将向您的数据表添加两列,这些列可用作预测的权重……适用于您想要执行的任何预测模型。 |
| |
第一列仅删除链接中的多数最近邻居,另一列删除 Tomek 链接的两个成员,因此您可以选择该选项。 |
| |
SMOTE 观测结果会将综合观测结果添加到您的数据表中。 |
| |
它还将提供一个源列,以便您可以识别哪些 |
| |
添加了观察结果。 SMOTE 加上 Tomek 添加了综合观察结果和删除 Tomek 链接的两个成员的加权列。 |
| |
Tomek 抽样和 SMOTE plus Tomek 的权重列, |
| |
它只是一个指标列,您可以将其用作 JMP 建模平台中的权重。 如果包含则为 1,如果应排除则为 0。 |
| |
其他三个采样选项对话框中的大多数看起来基本相同。 |
| |
它们上而不是评估模型选项对话框上的一个选项是显示中间表。 此选项适用于 SMOTE 和 SMOTE plus Tomek。 |
| |
基本上,它允许您查看用于构建 SMOTE 观测的数据表。 一般来说,您不需要看到它,但如果您想更好地了解这些观察结果是如何生成的,您可以查看那些中间表。 |
| |
它们都在文档中进行了解释。 |
| |
同样,您可以通过社区获取该插件, |
| |
通过此页面查看 2020 年美洲探索峰会演讲 |
| |
社区的一部分。 正如我刚才提到的,加载项中提供了可用的文档。 只需单击“帮助”按钮即可。 |
| |
现在,Colleen 需要在插件演示中展示一个示例。 |
| 科琳·麦肯德里 |
谢谢迈克尔。 我现在要演示该添加,为了进行演示,我将使用此乳房 X 光检查演示数据。 |
| |
因此,乳房 X 线摄影数据集基于一组数字化胶片乳房 X 线照片,用于研究乳房 X 线摄影图像中的微钙化。 |
| |
在该数据中,每条记录被分类为 1 或 0。1 表示图像中看到钙化,0 表示没有。 |
| |
在此数据集中,您看到钙化的图像是您有兴趣预测的图像,因此类别级别一是您感兴趣的类别级别。 |
| |
在完整数据集中,有 6 个连续预测变量和大约 11,000 个观测值。 |
| |
但为了减少此演示中的运行时间,我们将仅使用完整数据集的子集。 所以这将是大约一半的观察结果。 大约有 5500 个观察值。 |
| |
分类为 1 的观测值,即您感兴趣的事物,它们约占总观测值的 2.31%,无论是在完整数据集中还是在我们使用的演示数据集中。 所以我们的少数群体比例大约为 2%。 |
| |
现在我要切换到 JMP |
| |
到 |
| |
所以我有乳房X光检查演示数据。 |
| |
我们将要打开,我已经安装了插件。 因此,我在下拉菜单中添加了不平衡分类,并且我将使用评估模型选项。 |
| |
所以这里我们有启动窗口,我们将指定二进制类变量,您的预测变量,我们将选择所有模型和所有技术,我们将指定 |
| |
随机种子。 |
| |
然后单击“确定”。 |
| |
因此,在运行时,我将解释后台实际发生的情况。 因此,该加载项所做的第一件事是将数据表拆分为训练数据集和测试数据集。 |
| |
因此,您有两个单独的数据表,然后在训练数据表中,这些观察结果进一步分为训练观察值和验证观察值,并且验证用于模型拟合。 |
| |
一旦你有了这两个数据集 |
| |
对于您指定的每种采样技术,都会添加到训练数据表中的指示变量...指示列,涉及 SMOTE 的采样技术除外。 |
| |
因此,这些列被添加并用作加权列,它们只是指定观察是否包含在分析中。 |
| |
如果您使用 SMOTE 指定采样技术,则会将其他行添加到数据表中。 这些是生成的观察结果。 |
| |
因此,一旦为每个模型生成了列和行,每个模型就适合每种采样技术。 所以如果你选择所有这些 |
| |
就像我们刚刚在这里所做的那样,总共有 42 个不同的模型正在拟合。 这就是现在所发生的一切。 在 |
| |
在当前的演示中,我们有 42 个模型正在拟合,一旦模型拟合,相关信息就会被收集并汇总到结果报告中。 还有那份报告, |
| |
希望很快就会弹出,就是这里,该报告显示在此处。 您还可以获得技术和阈值表以及汇总表。 |
| |
因此,我们将看看运行插件时会得到什么。 首先我们有训练集。 您可以看到这里是权重列,即添加的权重列。 这些是为这些观测值的预测概率添加的列。 |
| |
然后我们就有了测试集。 它不包含任何这些加权列,但它确实具有测试集观测值的预测概率。 |
| |
我们有结果报告 |
| |
以及技术和阈值数据表。 所以迈克尔在中提到了这一点 |
| |
之前的谈话,但这很重要,因为如果您想保存结果并再次查看结果,这是您想要保存的内容 |
| |
无需重新运行整个脚本。 所以这个数据表就是您要保存的内容,它包含将重现的脚本 |
| |
结果报告和汇总表,这是我要展示的最后一件事。 因此,这仅包含每种采样技术和模型组合及其 AUC 值的摘要。 |
| |
现在看看实际结果窗口,顶部有对话规范。 因此,这包含您在启动窗口中指定的信息。 |
| |
因此,如果您忘记了指定的任何内容,例如随机种子或分配的比例,您可以打开它并查看。 |
| |
我们还有二进制类分布。 因此,类变量在训练集和测试集上的分布。 经过这样的设计,比例应该相同,在本例中为 2.3。 |
| |
然后我们还缺少阈值。 所以这并不是非常重要,但它只是给出了 |
| |
指示类变量的值是否缺少预测值,然后在此处显示。 |
| |
对于实际结果,我们有这些选项卡图。 这样我们就有了精确召回曲线、ROC 曲线和累积增益曲线。 对于 PR 曲线和 ROC 曲线,我们也有相应的 AUC 值。 |
| |
我们还有这些按类别预测概率的图表。 当您一次只查看其中几个时,这些会更有用,我们稍后将对此进行介绍。 |
| |
然后我们有一个数据过滤器将所有这些图表和结果连接在一起。 |
| |
那么对于我们实际的分析结果,我们现在就可以看一下。 首先我要对这些进行排序。 |
| |
所以您已经可以看到 ROC 曲线和 PR 曲线,PR 曲线中的曲线之间的差异比 ROC 曲线中的差异要大得多。 |
| |
如果我们选择前五个,那么它们的 AUC 实际上都是 0.97。 |
| |
你可以看到他们彼此非常接近。 他们基本上是在彼此之上。 很难确定哪种模型实际上更好,您应该选择哪种模型 |
| |
因此,这就是精确召回曲线非常重要的地方,特别是对于不平衡的数据。 因此,如果我们切换回来,我们可以看到这些模型的 ROC 曲线具有最高的 AUC 值, |
| |
它们确实分布在精确召回曲线中。 他们实际上不是……他们没有 PR 曲线的最高 AUC 值。 |
| |
所以也许……也许我们可以选择更好的模型。 |
| |
所以现在我将关注并关注前两个,即提升树 Tomek 和 SVM Tomek,我将使用数据过滤器来做到这一点。 |
| |
然后我们只想看看那些将要展示和包含的内容。 |
| |
现在我们有了这两个模型的曲线,蓝色曲线是提升树,红色曲线是 SVM。 |
| |
因此,您可以在这些曲线中看到,它们在不同的真阳性率值上相互重叠。 所以你可以使用这些曲线 |
| |
根据可接受的真阳性率来选择您想要在分析中使用的模型。 因此,如果我添加一些参考线,我们就可以看到这一点。 请原谅我的手,当我打字时你会看到。 |
| |
好的,那么说这些是您可能感兴趣的一些不同的真阳性率。 例如,如果您拥有任何数据集,您想要的真阳性率为 0.55。 |
| |
您可以选择阈值以使其成为真正的阳性率。 然后在这种情况下, |
| |
对于该真阳性率,提升树 Tomek 模型具有更高的精度。 所以你可以选择那个模型。 |
| |
但是,如果您希望真阳性率达到 0.85 左右,那么 SVM 模型可能是更好的选择,因为它对于特定的真阳性率具有更高的精度。 |
| |
然后,如果您的真阳性率为 0.95,您会再次翻转,也许您会想要选择提升树模型。 |
| |
这就是您如何使用这些曲线来选择最适合您的数据的模型。 |
| |
现在我们要再次查看这些图表,因为它们只有少数。 这只是显示了我们选择的模型的每个类别的预测概率的分布。 所以在这个特殊情况下,你可以看到在 SVM 中有大多数 |
| |
整个预测概率范围内的概率,其中提升树可以更好地将它们保持在较低端。 |
| |
这就是这个特定演示的内容,但在完成之前,我只想再展示一件事。 这就是如何使用评估的示例 |
| |
型号选项。 但是假设您只想使用特定的采样技术。 您可以在这里做到这一点。 所以发射窗口看起来很相似。 您可以分配二元类、预测变量,然后单击“确定”。 |
| |
这会生成一个新的数据表,您就有了 |
| |
指示栏。 |
| |
您的指示器列,仅显示观察结果是否应包含在分析中。 |
| |
然后因为它是 SMOTE 加上 Tomek,所以你还拥有所有这些 SMOTE 生成的观察结果。 |
| |
现在您有了这个新的数据表,您可以使用任何类型的模型以及您可能想要的任何类型的选项,只需使用此列作为您的权重或频率列,然后从那里开始。 我们的不平衡分类演示就到此结束了。 感谢您的观看。 |