机器学习中交叉验证的两点介绍

器学习中,我们使用交叉验证,这有助于使用最佳超参数训练模型。如果我们说我们的模型在看不见的数据点上表现良好,那么它可以很好地推广。

我们在这篇文章中使用了K-nn算法。

为什么我们不能使用测试数据本身来获得最佳超参数?

我看到很多人特别是入门级人士提出这个问题。我将详细解释为什么不应该使用测试数据。考虑随机抽样的数据集来训练和测试数据。

机器学习中交叉验证的两点介绍

机器学习中交叉验证的两点介绍

表列出测试数据的准确度值

在这里,我们使用测试数据来确定最佳超参数。

考虑到k = 3,我们得到了最高的准确度。然后我们用k = 3训练数据作为超参数。我们认为我们得到了最好的模型。

问题:我们在这里忽略了基本目标,这里的基本目标是在看不见的数据点上表现良好。实际上我们正在将测试数据暴露给算法,这对于算法来说很难推广。

解决方案:交叉验证的作用。我们从数据中创建另一个随机样本,即验证数据。我们使用验证数据来获得最佳超参数。

为什么要将数据分成另一个分区(验证数据)可以解决问题?

当验证数据用于查找最佳超参数时。测试数据充当训练模型的看不见的数据点。现在,当我们测量测试数据的准确性时,我们将确保它能够很好地概括并在未来看不见的数据点上表现良好。

机器学习中交叉验证的两点介绍

相关推荐