2017-11-24 11 views
-1

GridSearchCVを使用することにより、私は[「paramsは」] _ clf.cv_resultsを得ることができると私はすべての可能な組み合わせを介して実行したいといくつかの確率を印刷します:GridSearchCVで得られたすべての組み合わせをどのように評価できますか?

for params in zip(clf.cv_results_['params']): 
     print(params) 
     clf= SVC(params) 
     clf.fit(X_train, y_train) 
     z_test=clf.predict(X_test) 
     print("Probability 1:", prob_error(y_test,z_test)) 
     print("Probability 2:", average_error(y_test,z_test)) 

しかし、のparamsに私はこれを取得します

({'C': 1000, 'gamma': 1000, 'tol': 2},) 

アルゴリズムを適合させるためにこれをどのように変換できますか?このコードは、 "clf.fit(X_train、y_train)" に誤りがありますので:

TypeError: must be real number, not tuple 

答えて

0

をなぜあなたはclf.cv_results_['params']上のジッパーを使用しています。それを削除し、以下のようにそれを実行します。

for params in clf.cv_results_['params']: 
     print(params) 
     clf= SVC(**params) 
     clf.fit(X_train, y_train) 
     z_test=clf.predict(X_test) 
     print("Probability 1:", prob_error(y_test,z_test)) 
     print("Probability 2:", average_error(y_test,z_test)) 

は、詳細についてはこれを参照してください。

関連する問題