sklearn中的cross_val_score交叉验证

Posted 征途黯然.

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了sklearn中的cross_val_score交叉验证相关的知识,希望对你有一定的参考价值。

cross_val_score交叉验证

1.0 注意事项

1. 参数cv代表分成几折,其中cv-1折用于训练,1折用于测试
2. cv数值最大 = 数据集总量的1/3
3. 关于参数scoring:
	1. ‘accuracy’:准确度;
	2. ‘f1’:F1值,只用于二分类;
	3. ‘precision’:精度,只用于二分类;
	4. ‘recall’:召回率,只用于二分类;
	5. ‘balanced accuracy‘:平衡精度;
4. 分成K折后,数据量太小的话,评分具有很大偶然性

1.1 API接口

sklearn.cross_validation.cross_val_score(estimator, X, y=None, scoring=None,cv=None, n_jobs=1, verbose=0, fit_params=None, pre_dispatch=‘2*n_jobs’)

1.2 API接口参数

estimator:估计方法对象(分类器),模型X:数据特征(Features)
y:数据标签(Labels)
soring:调用方法(包括accuracy和mean_squared_error等等)
cv:几折交叉验证
n_jobs:同时工作的cpu个数(-1代表全部)

1.3 简单示例

from sklearn import svm
from sklearn.datasets import load_iris
from sklearn.model_selection import cross_val_score

iris = load_iris()
svc = svm.SVC()
scores = cross_val_score(svc, iris.data, iris.target, cv=5)
print(scores)

以上是关于sklearn中的cross_val_score交叉验证的主要内容,如果未能解决你的问题,请参考以下文章

scikit-learn中的cross_val_score函数scoring参数设置

sklearn.model_selection.cross_val_score的score函数公式是啥?

使用 sklearn cross_val_score 和 kfolds 来拟合和帮助预测模型

为啥 xgboost.cv 和 sklearn.cross_val_score 给出不同的结果?

在 sklearn cross_val_score 上评估多个分数

我从 GridSearchCV 获得的 R^2 分数与我从 cross_val_score 获得的分数非常不同,为啥? (sklearn,python)