ImportError: cannot import name ‘cross_validation‘ 解决方法

一、问题


在学习机器学习分类算法 KNN 时,使用交叉验证时,调用了 cross_validation 函数,导入时报错。
查阅资料和官方文档后发现:sklearn在 0.02 版本后改变了 cross_validation 函数
https://scikit-learn.org/stable/modules/generated/sklearn.model_selection.cross_validate.html

二、解决方法

cross_val_score、cross_validate均可用于交叉验证,返回值是scores,即每次交叉验证的得分。

from sklearn.model_selection import cross_validate

测试如下:

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

iris = datasets.load_iris()
clf = svm.SVC(kernel='linear', C=1)
X = iris.data
y = iris.target
# 交叉验证
scores = cross_val_score(clf, X, y, cv=3)
print(scores)
# print(scores['test_score'])

结果如下:



可以用于测试交叉验证啦。

猜你喜欢

转载自blog.csdn.net/fyfugoyfa/article/details/114339020