我使用GridSearchCV和配合是给我一个类型错误:get_params()失踪1人需要的位置参数:“自我”
问题描述:
我使用网格搜索得到最适合 我使用GridSearchCV和配合是给我一个类型错误:get_params()失踪1人需要的位置参数:“自我”
k=['rbf', 'linear','poly','sigmoid']
c= [1,5,10,20,30,50,80,100]
g=[1e-7,1e-6,1e-5,1e-4,1e-2,0.0001]
param_grid=dict(kernel=k, C=c, gamma=g)
print (param_grid)
grid = GridSearchCV(SVC, param_grid,scoring='accuracy')
grid.fit(X_t_train, y_t_train)
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_)
我得到一个TypeError:get_params()缺少1位置参数:grid.fit()中的'self'
答
出现此错误是因为估计器必须用对象初始化而不是类初始化。你需要做的无论是这样的:
grid = GridSearchCV(SVC(), param_grid, scoring='accuracy')
或者是这样的:
clf = SVC()
grid = GridSearchCV(clf, param_grid, scoring='accuracy')