最近在复盘优达学城的机器学习项目, 重新写了一下波斯顿放假预测的项目,除了模型的选择及网格搜索进行选择参数的相关知识外,还着重复习了关于学习曲线和复杂度曲线(验证曲线)
首先学习曲线和复杂度曲线(验证曲线)的区别,学习曲线是指在参数值确定的情况下,训练集和验证集的得分情况的对比,复杂度曲线(验证集曲线)是展示某个参数在取不同值时候,训练集与测试集得分情况的对比。
学习曲线的X轴是数据的数量,y轴是得分;复杂度曲线(验证曲线)的x轴是一个参数的值:比如max_depth(1,2,3,4,5,6,7,8,9,10),y轴是训练集和测试集在各个参数取值情况下的得分
上面两张图分别是学习曲线和复杂度曲线
下面来说一下学习曲线或者验证曲线的数据集合的划分
1 ShuffleSplit 划分
上面的两个图中就是用ShuffleSplit 方式对数据集合进行划分的,代码如下:
cv = ShuffleSplit(features.shape[0], n_iter =