预测建模就是要找到准确预测感兴趣结果的模型。 例如,假设我想根据多种因素预测一种特定疾病(在本例中为糖尿病)的进展情况。 更具体地说,我想确定最有可能出现高疾病进展的患者,以便进行适当的干预。
我有JMP专业版,而且我知道我可以拟合几种可能的预测模型。 例如,我可以拟合回归模型、各种类型的基于树的模型或神经网络,仅举几例。 我应该使用哪个建模平台? 哪种类型的模型可以最准确地预测结果? 对于任何给定的建模情况,最佳模型很大程度上取决于数据——没有一种模型最适合所有问题。
为了找到糖尿病场景的最佳模型,我可以使用交叉验证拟合所有可能的模型,一次一个。 我可以将单个模型保存到数据表或公式库中,然后使用模型比较来比较模型在验证集上的性能以选择最佳模型。 或者我可以选择模型的最佳组合。 虽然这种方法不仅仅是完成工作,它确实需要一些工作。
现在,借助 JMP Pro 16 中的新模型筛选平台,我们让这一切变得更加容易。 模型筛选提供了一个高效的工作流程,可同时拟合、比较、探索、选择和部署最佳预测模型。
为了说明,我将使用 JMP 示例数据库中的糖尿病数据。 响应或结果变量是 Y Binary,它有两个可能的值:低(对于低疾病进展)和高。 预测变量或因素是通过葡萄糖计算的年龄。

我从分析 > 预测建模菜单中选择模型筛选并指定响应和因子。 验证列将数据划分为训练集和验证集,因此我将使用它进行模型验证。
模型筛选对话框的顶部如下所示:

在对话框的底部,有几种不同的建模方法可供选择,以及许多不同的拟合和交叉验证选项。 请注意,XGBoost 是一种可用的方法,因为我安装了XGBoost 插件来自JMP 用户社区.
我将使用默认模型,但将添加双向交互并将随机种子设置为 11111 以使我的结果可重现。

对这些数据有意义的所有模型都是合适的,并且提供了几个验证统计数据。 这些模型按广义 R 方的降序排序,但要找到在所有验证统计数据中脱颖而出的一个或多个模型,我将单击 Select Dominant。
我可以看到,总体而言,顶级模型是具有双向交互的神经增强和广义回归套索。

为了探索这些模型的分类,我将从顶部的红色小三角菜单中选择决策阈值。 此选项为比较所选模型的分类准确性提供了丰富的信息。 上半部分显示了每个模型的真假分类细目,如果我更改概率阈值(通过拖动滑块线或使用编辑框),我可以看到分类和分类错误如何针对不同的截止值发生变化。
底部有显示不同分类图和指标的选项卡。 此处显示了验证数据的 Metrics 选项卡。 在这种情况下,我想确定最有可能糖尿病进展率高的患者。 所以,我想找到导致假阴性率最低的模型。 在概率阈值为 0.42 时,广义回归模型的假阴性率较低,同时相对于其他模型仍保持较低的假阳性率。

现在,我可能想仔细看看这个模型。 模型筛选使这无缝。 我可以通过单击 Run Selected 在新窗口中轻松运行选定的模型。
或者,无需离开模型筛选,我可以直接在详细信息大纲中查看结果,如此处所示。 在模型筛选中,我可以访问在广义回归中看到的所有选项。 因此,例如,我可以与解决方案路径进行交互,并且可以保存或发布模型以进行部署。 我什至可以运行其他模型,看看是否可以进一步提高模型准确性。

我在这里只触及了模型筛选的表面,但希望您能看到这种简化的工作流程如何帮助您节省大量时间和精力! 您只需要在模型中指定变量,选择您想要拟合的模型和验证方法,剩下的交给模型筛选!
要了解有关在 JMP Pro 中拟合和验证预测模型的更多信息,请访问主要功能页面在我们的网站上。
客户怎么说
“过去几个月在 JMP Pro 16 beta 上使用了模型筛选,它已经成为我珊瑚礁预测建模研究中不可或缺的一部分。 虽然在 JMP Pro 的早期版本(例如,JMP Pro 15 的“模型比较”平台)中可以相当容易地比较模型,但这个新工具使用户可以更轻松地同时测试许多不同的模型(例如,gen-reg、PLS、判别式、神经网络等)具有相同的数据集。 曾经需要我几个小时甚至几天的事情现在可以在几分钟(甚至几秒钟)内完成。哇,多么棒的功能! 这肯定是第 15 版到第 16 版的最大改进,我相信很多其他人也会有同感。”
- 美国国家海洋和大气管理局 (NOAA) 和迈阿密大学的 Anderson Mayfield
谢谢你的问题@sukrit2020 . 模型筛选平台目前不提供 MAE。
你好@mia_stephens感谢您的补充说明! 我同意这是一个权衡问题,很大程度上取决于主题专业知识和产品/用户应用程序和风险。我看到了图表是如何进行这种权衡的,尽管起初我认为在两个方向上交叉的轨迹线可能会有点令人困惑(实线在增加方向,虚线在减少方向)。我会将主题创意添加到愿望清单中!@PatrickGiuliano
你好@PatrickGiuliano ,这是一个相对肤浅的例子,出于说明目的,我选择了 0.42 作为阈值。 这里的目标是找到一个导致低假阴性率同时保持低假阳性率的截止点。 但是,什么是可接受的利率? 这在很大程度上取决于研究情况或问题,以及特定类型错误的“成本”。 对于特定情况,如果会导致更高的误报率,您可能愿意接受更高的误报率。这些图表可以帮助找到最佳点,以平衡两个速率。
这是一个小数据集,因此结果相当精细。 但是,在这里的第二张图中,我看到神经增强的误报率在 0.45 或 0.5 左右之后开始快速增长,而误报率在该点附近迅速下降,并开始趋于平稳。

添加“记住的设置”选项的想法令人信服。 您愿意将此张贴到 JMP 愿望清单吗?
谢谢!
米娅
@mia_stephens这太酷了,我对“决策阈值”功能很感兴趣,并试图更好地理解它。在您的示例中,您在确定 0.42 的概率阈值将是一个不错的选择时,是否基本上选择了高曲线的错误分类计数与概率阈值的“交叉点”(我在附件图像中用黑色圈出的点)用于最小化假阴性(同时将假阳性率保持在大致相同的水平?)
我使用了 JMP 16 EA8 并运行了几乎相同的设置,只是我在模型筛选对话框中指定了“XGBoost”作为模型拟合选项(在 1111 处保留相同的随机种子)。 
也许这里的一个有用功能是以类似的方式“记住设置”,因为这可以在预测分析器中完成(它会生成一个用于到达保存设置的单选按钮),因此您可以轻松地在不同的概率阈值之间切换以直接查看/比较您感兴趣的特定阈值处的效果。 附上示例图片。

你好@MannyUy ,是的,这是一个真正的节省时间!
我过去基本上做同样的事情,但一次使用一个模型平台。 花了很多时间。 这种新功能真正节省了时间。 谢谢!