0

我一直在玩 ML.Net AutoML 并且玩得很开心。我仍然有一些问题,希望有人可以帮助或指导我解决我的一些问题。

问题 1: 我有一个来自 AutoML 的经过训练的二元分类模型。这导致了基于最高准确度的前 5 名算法列表,我最终得到了一个准确率为 89% 的 SdcaLogisticRegressionBinary 二进制分类模型。

现在,当我进行评估时,准确率下降到 84%。这是否意味着原始训练模型被过度拟合了 5%?公平地说,根据评估,我的模型的准确率不是 89%,而是 84%?

问题 2: AutoML 还会在训练期间根据需要删除特征。有没有办法检索包含在最终模型中的实际特征列表,例如确定哪些特征被删除并且没有提高模型的准确性?

当我检查最终模型时,OutputSchema 往往总是包含基于初始训练数据的所有特征。

4

1 回答 1

1

这是否意味着原始训练模型被过度拟合了 5%?

这个术语什么也没说,也从未使用过。可悲的是,“过度拟合”现在是一个被滥用的术语,过去几乎意味着所有与次优性能相关的东西。然而,实际上,过度拟合意味着一些非常具体的东西:它的明显特征是当你的验证损失开始增加,而你的训练损失继续减少时,即:

在此处输入图像描述

您的训练和验证准确率之间的 5%“余量”完全是另一回事(称为泛化差距),并不表示过度拟合。

公平地说,根据评估,我的模型的准确率不是 89%,而是 84%?

正如您可能已经猜到的那样,“准确性”本身就是一个模棱两可的术语。事实是,在实践中,当没有任何其他能指使用时,它通常表示验证准确度(实际上没有人关心训练准确度的确切值)。在任何情况下,正确的结果报告应该是 - 训练准确率 89%,验证准确率 85%。

于 2019-07-08T14:40:56.887 回答