我正在寻找一种方法使这个SVM运行得更快。当我运行这个时,它将使用我电脑的所有CPU,并且需要很长的时间来运行。
svcGrid = GridSearchCV(svc,
cv = 4,
n_jobs = 10,
param_grid = {'kernel':['rbf', 'linear',
'poly']})
#run the parameters tuning
svcGrid.fit(X_train,y_train)
print(svcGrid.cv_results_)
#pick and predict using the best estimators
best_svc =svcGrid.best_estimator_
print(best_svc)
y_predict = best_svc.predict(X_test)
print("BEST SVC ACCURACY:", accuracy_score(y_test, y_predict))
不使用网格搜索怎么样?网格搜索使用k交叉验证进行参数转折,这需要非常长的时间。
或者,我建议不要用多项式核和线性核,尤其是多项式核。多项式核需要非常非常长的时间,而且还有另外的参数。