で折りたたみごとの特徴抽出機能選択を実行する必要があります。私は10倍のクロスバリデーションのためにトレーニングとテストセットに分裂がありません。誰かが、折りたたみごとに機能選択を行う必要があると私に言った。しかし、私はそれをどうやって行うのか分かりません。ここに私のコードの一部があります。機械学習の実験のためのScikit
vec = DictVectorizer()
X = vec.fit_transform(instances) # No train/ test set, because we'll use 10-fold cross validation
scaler = StandardScaler(with_mean=False)
X_scaled = scaler.fit_transform(X) # To make sure everything is on the same scale
enc = LabelEncoder()
y = enc.fit_transform(labels)
#feature selection
from sklearn.feature_selection import SelectKBest, mutual_info_classif
feat_sel = SelectKBest(mutual_info_classif, k=200)
X_fs = feat_sel.fit_transform(X_scaled, y)
#train a classifier
from sklearn import model_selection
from sklearn.metrics import classification_report
from sklearn.naive_bayes import MultinomialNB
clf = MultinomialNB()
y_pred = model_selection.cross_val_predict(clf, X_fs, y, cv=10)
折りたたみの選択に手伝ってもらえますか?
私は 'パイプを行う必要はない.fit() 'もう? – Bambi
@Bambiはいもちろん、もう必要はありません。あなたがそれを呼び出すと、cross_val_scoresはeveythingを行います – sera