一、问题
在学习机器学习分类算法 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,即每次交叉验证的得分。
fromsklearn.model_selectionimportcross_validate
测试如下:
fromsklearn.model_selectionimportcross_validatefromsklearn.model_selectionimportcross_val_scorefromsklearnimportdatasetsfromsklearnimportsvmiris=datasets.load_iris() clf=svm.SVC(kernel='linear', C=1) X=iris.datay=iris.target# 交叉验证scores=cross_val_score(clf, X, y, cv=3) print(scores) # print(scores['test_score'])
结果如下:
可以用于测试交叉验证啦。