2017-04-10 7 views
0
from sklearn import datasets 
import numpy as np 
iris = datasets.load_iris() 
X = iris.data[:,[2,3]] 
y = iris.target 

from sklearn.cross_validation import train_test_split 
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.3) 

from sklearn.svm import SVC 
svm=SVC(kernel='linear',C=7.5)  
from sklearn.cross_validation import ShuffleSplit 
cv = ShuffleSplit(X_train.shape[0], n_iter=10, test_size=0.2, random_state=0) 

from sklearn.grid_search import GridSearchCV 
parameters={'kernel':('linear','rbf'),'C':[1, 10, 100, 1000],'gamma': [0.001, 0.0001]} 

ここまでは正しく出力されています。このコメントの後クロスバリデーションを使用しているときにTupleにアイテムがありません

classifier=GridSearchCV(svm,cv,parameters) 
classifier.fit(X_train,y_train) 

エラーは次のとおりです。 「タプル」オブジェクトが持つ無属性の項目「

私はなぜこれが起こっているかわかりません。 "パラメーター"には1つのパラメーターしかないはずですか?あなたが第二の位置の引数として品種を含めている

classifier=GridSearchCV(svm,cv,parameters) 

+0

ポスト*フルスタックトレース* –

答えて

1

あなたがここにGridSearchCVインスタンスをインスタンス化するとき。 cvはキーワード引数であり、2番目の位置はparam_gridです(おそらくパラメータを渡す予定です)。私はここでAPIの説明にこれを基づかています: http://scikit-learn.org/stable/modules/generated/sklearn.model_selection.GridSearchCV.html

そうのように構築してみてください。

classifier=GridSearchCV(svm,parameters,cv=cv) 

これが失敗した場合、それは本当にあなたが得る全体のトレースバックを見るために役立つだろう。

+0

これはあなたのために働いたのですか? – JacobIRR

関連する問題