交叉验证是经常用到的验证方法
使用sklearn可以很大程度上简化交叉验证的过程
使用过程见下方:
from sklearn import cross_validation
gbdt=GradientBoostingRegressor()
score = cross_validation.cross_val_score(gbdt, train_set,
label_set, cv=10, scoring='accuracy')
这里以gbdt模型为例
train_set:训练集
label_set:标签
cv: 交叉验证的倍数
scoring: 返回结果的类型,可以自定义,也有很多默认选项
例如‘accuracy’, 就是返回准确率
[‘accuracy‘, ‘adjusted_rand_score‘,
‘average_precision‘, ‘f1‘, ‘f1_macro‘,
‘f1_micro‘, ‘f1_samples‘, ‘f1_weighted‘,
‘log_loss‘, ‘mean_absolute_error‘,
‘mean_squared_error‘, ‘median_absolute_error‘,
‘precision‘, ‘precision_macro‘,
‘precision_micro‘, ‘precision_samples‘,
‘precision_weighted‘, ‘r2‘, ‘recall‘,
‘recall_macro‘, ‘recall_micro‘,
‘recall_samples‘, ‘recall_weighted‘,
‘roc_auc‘] 都是可以的
这就是简单的用法,只有scoring比较复杂,其他都比较简单