1.使用交叉验证进行模型评估
在前面的内容中,我们常常使用train_test_split功能来讲数据集进行拆分成训练集和测试集,然后使用训练集来训练模型,再用模型去拟合测试数据集并对模型进行评分,来评估模型的准确度。除了这种方法之外,我们还可以用一种更加粗暴的方式来验证模型的表现,也就是本节要介绍的交叉验证法(cross validation)。
1.1交叉验证法的定义:
在统计学中,交叉验证法是一种非常常用的对于模型泛化性能进行评估的方法。和我们之前所用的train_test_split方法所不同的是,交叉验证法会反复地拆分数据集,并用来训练多个模型。所以我们说这种方法更加粗暴。
在scikit-learn中默认使用的是交叉验证法是K折叠交叉验证法(K-fold crossvalidation)。
1.2K折叠交叉验证法(K-fold crossvalidation)的定义:
它将数据集拆分成K个部分,再用K个数据集对模型进行训练和评分。例如我们令k=5,则数据集被拆分成5份,其中第一个子集会被作为测试数据集,另外四个用来训练模型。之后再用第2个子集作为测试集&#x