![ca921eea436b5d9064fe6564783df39a.png](https://i-blog.csdnimg.cn/blog_migrate/fca22cfd68c0db2073e51263ce07657b.png)
上一篇介绍了train_test_split函数:
橘猫吃不胖:sklearn函数:train_test_split(分割训练集和测试集)zhuanlan.zhihu.com![3b68b439fa00c8b40e6509fd6cc71502.png](https://i-blog.csdnimg.cn/blog_migrate/6cca7447ccc070091e17faf84416cfea.png)
主要场景是,我们想要将原始数据分割为训练集和测试集,但是会有一些问题
比如,过渡拟合(a risk of overfittingon the test set)
其中一个方法是,再拆分出来一个验证集,先用训练集训练模型,然后使用验证集来校验,最后去测试集,但是这个方法很明显的问题是,大大减少了训练集的样本数。
另一种比较好的方案就是cross-validation (CV for short),交叉验证
基本的思路是:k-fold CV,也就是我们下面要用到的函数KFold,是把原始数据分割为K个子集,每次会将其中一个子集作为测试集,其余K-1个子集作为训练集。
下图是官网提供的一个介绍图ÿ