终于搞明白了如何用sklearn做交叉验证!!!
一般在建立完模型之后,我们要预测模型的好坏,为了试验的可靠性(排除一次测试的偶然性)我们要进行多次测试验证,这时就要用交叉验证。
sklearn中的sklearn.cross_validation.cross_val_score函数已经帮我们做好了。
直接调用就可以了。
无论是做回归还是做分类,都可以用这个函数。
具体用法:
from sklearn.cross_validation import cross_val_score
metric = cross_val_score(clf,X,y,cv=5,scoring=‘ ‘).mean()
clf是分类器
其中scoring可以是:
[‘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‘]
就这么简单!
时间: 2024-10-06 17:31:01