支持向量机交叉验证python代码
时间: 2023-10-05 21:14:00 浏览: 87
Sure, 下面是支持向量机交叉验证的Python代码:
```Python
from sklearn.model_selection import GridSearchCV
from sklearn import svm, datasets
# 加载数据集
iris = datasets.load_iris()
X = iris.data
y = iris.target
# 设置训练的超参数
parameters = {'kernel': ('linear', 'rbf'), 'C': [1, 10]}
# 创建一个支持向量机对象
svc = svm.SVC()
# 创建一个 GridSearch 用于寻找最优的参数
clf = GridSearchCV(svc, parameters)
# 使用 GridSearch 对数据进行训练
clf.fit(X, y)
# 打印最优的参数和准确率
print("Best parameters set found on development set: %s" % clf.best_params_)
print("Grid scores on development set:")
means = clf.cv_results_['mean_test_score']
stds = clf.cv_results_['std_test_score']
for mean, std, params in zip(means, stds, clf.cv_results_['params']):
print("%0.3f (+/-%0.03f) for %r" % (mean, std * 2, params))
```
这里使用了 GridSearchCV 寻找最优的 SVM 超参数,并对数据进行了训练。最后打印出最优的参数和准确率。
阅读全文