交叉验证
熟练使用这部分的函数
1 tran_test_split()
2 cross_val_score()
cv = [ F1-score , KFold , stratifiedFold shufflesplit() , 自定义函数]
当 cv 参数是一个整数时, cross_val_score 默认使用 KFold 或 StratifiedKFold 策略,后者会在估计器派生自 ClassifierMixin 时使用
3 数据转换 ( transform )
scaler = preprocessing.StanderdScaler()
scaler.transform(X_train)
scaler.transform(X_test)
4 Pipeline 能更容易的组合估计器 ,在交叉验证下这样使用
clf = make_pipeline(preprocessing.StandardScaler(), svm.SVC(c=1))
cross_val_score(clf , iris_data , iris_target , cv = cv)
5 cross_validate
1 与 cross_val_score 的区别 :
a 它允许指定多个指标进行评估。
b 除了测试得分之外,它还会返回一个包含训练得分,拟合次数, score-times (得分次数)的一个字典.。
2 其参数 : return_train_score = True (默认) 默认设置为 True 。 它增加了所有 scorers(得分器) 的训练得分 keys 。如果不需要训练 scores ,则应将其明确设置为 False。
6 cross_val_predict() :在测试集合中,将会得到预测结果。
7 交叉验证迭代器:接下来的部分列出了一些用于生成索引标号,用于在不同的交叉验证策略中生成数据划分的工具。
a K-fold
b RepeatedStratifiedKFold
c LOO
d LPO
e shufflesplit
f stratified K-fold
g group K-fold
h LoGo
j LpGo
k Gss
l TimeSeriesSplit
备注 : 划分数据集为训练集和测试集的12种方法不懂
该函数们应该手敲 ,使用在例子中。
参考 : http://sklearn.apachecn.org/#/docs/34
代码 : http://scikit-learn.org/stable/auto_examples/model_selection/plot_roc_crossval.html#sphx-glr-auto-examples-model-selection-plot-roc-crossval-py