在學習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,即每次交叉驗證的得分。
導入cross_validate:
from sklearn.model_selection import cross_validate
列子:
from sklearn.model_selection import cross_validate
from sklearn.model_selection import cross_validate
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_validate(clf, X, y, cv=3)
print(scores)
print(scores['test_score'])
導入cross_val_score:
from sklearn.model_selection import cross_val_score
列子:
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)