我们可以使用过度拟合的模型吗?
-
16-10-2019 - |
题
我正在解决AUC指标的二元分类问题。我对训练和测试组进行了随机分配70%,30%。我第一次尝试使用随机森林和默认的超参数,使我在测试集上为0.85,训练集为0.96。因此,模型过高。但是,0.85的得分足以满足我的业务。我还使用相同的模型和相同的超参数进行了5倍的交叉验证,测试集结果始终在0.84至0.86之间。
我的问题是:我可以相信分数0.85并在生产中使用该模型吗?
解决方案
是的,如果您的0.85 AUC足以满足您的用例,那么这是一个足够好的型号。训练集的性能表明您的模型了解训练集的程度。我们并不真正在乎这就是模型试图优化的方法。测试集的性能表明您的模型概括程度。这就是我们关心的内容,您的模型达到了0.85左右,以估计您的概括。训练和测试之间的差异是规范,在这种情况下,您可能会通过添加更强大的正则化来获得更好的性能,但是如果0.85足够好,请继续前进!
其他提示
我的第一次尝试[...]在测试集上给了我0.85的AUC,训练组为0.96。因此,模型过高。
这不是真的。
看, (几乎)每个估计器在培训数据上的预测得分要比测试数据更好。这并不意味着每个估计器过拟合。
尽管估计器为 建造 在上面,这意味着它的参数适合它。但是,您的估计器可以或多或少地适合您的培训数据。
让我们以您的随机示例为例。如果深度太高,您将适合培训数据: 过度. 。如果深度不够高,则很难推广到其他数据:您 不足.
- 不足:
0.96
在火车套装上0.82
在测试集上 - 可能的合适:
0.96
在火车套装上0.89
在测试集上 - 过度拟合:
0.96
在火车套装上0.75
在测试集上
作为一个很好的数据科学家,您希望您的模型足够拟合数据以概括得很好,但不会太多。为了控制模型的推广方式,人们使用交叉验证技术。您所获得的价值很大,您将获得新值±与此交叉验证相关的差异
PS:经常在测试数据上使用交叉验证使您, 在某种方式, 在选择这些数据时学习这些数据以最大程度地提高测试分数。它可以导致一种过度适合未来新数据的形式。