Eka*_*Eka 9 python svm scikit-learn
我正在学习交叉验证 - 网格搜索并遇到了这个youtube播放列表,该教程也已作为ipython笔记本上传到github.我试图在同时搜索多个参数部分重新创建代码,但不是使用knn我正在使用SVM回归.这是我的代码
from sklearn.datasets import load_iris
from sklearn import svm
from sklearn.grid_search import GridSearchCV
import matplotlib.pyplot as plt
import numpy as np
iris = load_iris()
X = iris.data
y = iris.target
k=['rbf', 'linear','poly','sigmoid','precomputed']
c= range(1,100)
g=np.arange(1e-4,1e-2,0.0001)
g=g.tolist()
param_grid=dict(kernel=k, C=c, gamma=g)
print param_grid
svr=svm.SVC()
grid = GridSearchCV(svr, param_grid, cv=5,scoring='accuracy')
grid.fit(X, y)
print()
print("Grid scores on development set:")
print()
print grid.grid_scores_
print("Best parameters set found on development set:")
print()
print(grid.best_params_)
print("Grid best score:")
print()
print (grid.best_score_)
# create a list of the mean scores only
grid_mean_scores = [result.mean_validation_score for result in grid.grid_scores_]
print grid_mean_scores
Run Code Online (Sandbox Code Playgroud)
但它给出了这个错误
提高ValueError("X应该是方形内核矩阵")ValueError:X应该是方形内核矩阵
ogr*_*sel 17
'precomputed'从参数空间中删除.
kernel='precomputed'只能在传递(n_samples, n_samples)表示样本的成对相似性的数据矩阵时使用,而不是传统的(n_samples, n_features)矩形数据矩阵.
有关内核参数含义的更多详细信息,请参阅文档:
| 归档时间: |
|
| 查看次数: |
4705 次 |
| 最近记录: |