1、交叉验证:评估估算器的表现
from sklearn.model_selection import train_test_split
可以很快地将实验数据集划分为任何训练集(training sets)和测试集(test sets)
X_train,X_test,y_train,y_test = train_test_split(data,target,test_size=0.4, random_state=0)
函数在进行训练的时候,由于在原数据集上使得训练器达到最好的状态,但在训练集上有可能出现过拟合状态,所以需要准备 “validation set(验证集)” ,使用训练器在验证集上对模型进行评估,当评估结果比较成功的时候,就在测试集上进行最后的评估。
通过交叉验证(cv)做模型的评估,不需要验证集。
实现方法:k-折交叉验证
k-折交叉验证将训练集划分为 k 个较小的集合,并且每一个 k 折都会遵循下面的过程:
- 将 k-1 份训练集子集作为 training data (训练集)训练模型,
- 将剩余的 1 份训练集子集作为验证集用于模型验证(也就是利用该数据集计算模型的性能指标,例如准确率)。
1.1. 计算交叉验证的指标
交叉验证函数:cross_val_score
>>> from sklearn.model_