审查和优化模型版本
第一个版本的模型训练完成后,分析生成的模型度量并配置新版本的实验,直到达到所需的结果。
分析模型
在模型视图中,我们可以看到 CatBoost 分类算法用奖杯 图标进行评分。这意味着这是基于 F1 分数的表现最好的模型。
模型视图显示 CatBoost 是性能最好的 v1 模型

执行以下操作:
-
在表的右上角,单击列选择器
按钮。在这里,请注意问题的所有可用度量,并根据需要添加或删除度量。选择要在表中显示的任何度量,或保留默认度量。
具有可用度量的模型度量表中的扩展列选择器
-
在模型度量表中,单击算法筛选器下拉列表并选择 CatBoost 分类 (CATBC)。
-
单击显示训练数据度量。
现在,您可以看到交叉验证训练中的度量,并将其与保持度量进行比较。对于每个保持度量列,都有一个对应的“训练”列,用于训练数据中的等效度量。
显示带训练数据度量的模型度量表
-
单击清除筛选器,然后将显示训练数据指标切换回关闭状态。
-
通过单击 F1 列标题,按性能从高到低对模型进行排序。套索回归、逻辑回归和弹性网络回归的得分低于其他三种算法。您可以选择排除性能较差的算法,或者只关注最好的 XGBoost 分类,以便在下一次训练迭代中获得更快的结果。
-
向下滚动到度量表下方,查看所选模型的可视化效果。
模型度量表和可视化。
-
单击
或单击配置 v2 以展开实验配置窗格。
-
从 Permutation importance 图表以及实验配置窗格中的特征列表中,我们可以看到模型的第一次迭代非常依赖 DaysSinceLastService 特征,所有其他特征与之相比几乎没有任何意义。
实验配置窗格中的排列重要性度量,注明特征 DaysSinceLastService 的影响
这种差异,以及模型的极高性能,应该被视为有问题的迹象。在这种情况下,在数据收集过程中,没有定义逻辑来停止计算自客户上次取消订阅后的天数。结果,该模型学会了将上次服务票后的大量天数与流失结果相关联。
这是数据泄漏的一个例子,因为在真实世界场景中,模型只有在做出预测之前才能访问信息,并且该字段中包含的天数是在该测量点之后收集的。有关数据泄漏的更多信息,请参阅数据泄露。
我们需要从实验配置中删除“泄漏”特征 DaysSinceLastService,因为它会扭曲生成的模型。注意,在真实的用例中,在创建模型之前,需要对数据质量和逻辑进行彻底的调查,以确保生成的模型得到正确的训练。
配置并运行版本 2
由于大多数模型训练将在修复此数据泄漏问题后更改,因此在完成任何进一步的改进之前,让我们配置一个新版本。
执行以下操作:
-
在上一步中,您已经打开了实验配置窗格以配置 v2。
在度量表中,单击 CatBoost 分类旁边的复选框。
-
在实验配置窗格中的特征下,清除 DaysSinceLastService 复选框。
-
单击运行 v2。
配置并运行版本 3
第二个版本的实验运行完成后,单击度量表中性能最高的 v2 模型 XGBoost 分类旁边的复选框。这将使用该模型的度量刷新页面。
您将看到,自从解决数据泄漏问题以来,重要特性列表发生了重大变化。此外,性能最好的算法现在是 XGBoost 分类。
模型度量表显示了 v2 的最佳性能模型

执行以下操作:
-
通过单击 F1 列标题按性能对模型进行排序。
逻辑回归、套索回归和弹性网络回归的 v2 得分低于其他三种算法。您可以选择排除性能较差的算法,或者只关注最好的 XGBoost 分类,以便在下一次训练迭代中获得更快的结果。
-
看看 Permutation importance 图表。与其他特征相比,底部四个特征 StartMonth、AdditionalFeatureSpend、DeviceType 和 CustomerTenure 对我们的模型的影响要小得多。它们对于这个用例没有什么价值,可以看作是统计噪声。让我们删除这些特征,看看这是否提高了模型分数。
性能最好的 v2 XGBoost 分类模型的 Permutation importance 图表
-
在实验配置窗格中的特征下,清除 StartMonth、AdditionalFeatureSpend、DeviceType 和 CustomerTenure 的复选框。
-
在算法下,清除套索回归、逻辑回归和弹性网络回归的复选框。
-
单击运行 v3。
比较实验版本
V3 运行后,LightGBM 分类现在是性能最好的算法。在度量表中,单击此模型旁边的复选框以刷新页面上的信息。
第一个版本的训练获得了最高的分数,但这些指标是高度夸大的,并且是由数据泄漏问题导致的不现实的性能预测指标。在 v3 中,表现最好的模型的 F1 得分比表现最好的 v2 模型的 F1 分数增加。
在模型指标表中,单击更多模型筛选器,然后选择表现最佳者。您可以看到每个实验迭代的性能最好的度量。
性能最好的模型

在真实场景中,在部署模型之前,根据需要重复这些优化步骤多次非常重要,以确保您拥有适合特定用例的最佳模型。
在本教程中,转到关于部署模型的下一节。