技能学习中的交叉验证与标准化

2024-10-04 09:30:55 发布

您现在位置:Python中文网/ 问答频道 /正文

我想找到一个sklearn分类器与K交叉验证的准确性。我可以估计准确度正常无交叉验证。但是,如何改进这段代码以进行交叉验证并同时应用StandardScaler?你知道吗

from sklearn.datasets import load_iris
from sklearn.cross_validation import train_test_split
from sklearn.neighbors import KNeighborsClassifier
from sklearn import metrics
from sklearn.cross_validation import cross_val_score
from sklearn.preprocessing import StandardScaler
from sklearn import svm
from sklearn.pipeline import Pipeline
iris = load_iris()
X = iris.data
y = iris.target
X_train, X_test, y_train, y_test = train_test_split(X, y, random_state=4)
pipe_lrSVC = Pipeline([('scaler', StandardScaler()), ('clf', svm.LinearSVC())])
pipe_lrSVC.fit(X_train, y_train)
y_pred = pipe_lrSVC.predict(X_test)
print(metrics.accuracy_score(y_test, y_pred))

Tags: fromtestimportirisloadtrainsklearn交叉