タイトルで示唆されているように、ランダムアンダーサンプラーの比率でグリッド検索を行いたいと思います。比率 10、15、および 20を試してみたいと思います。ここで、比率 = 10 は、リサンプリングされた多数派クラスの数 / 少数派クラスの数です。
例 : 少数派クラスに 10 の要素がある場合、多数派は 1000 で、比率が 5 の場合、10 の少数派と 50 の多数派になります。それが Random Under Sampler のドキュメントを示唆するものです。
from imblearn.pipeline import make_pipeline as imbalanced_make_pipeline
from sklearn.model_selection import GridSearchCV
pipe = imbalanced_make_pipeline(RandomUnderSampler(),
SMOTE(),
RandomForestClassifier())
gsc = GridSearchCV(estimator=pipe, param_grid= {'smote__ratio': [5, 10, 15],
'randomforestclassifier__criterion': ["entropy"],
'randomforestclassifier__max_depth': np.arange(10,30,5),
'randomforestclassifier__min_samples_leaf': np.arange(5,15,3)},
scoring='f1',cv=5, verbose=2)
grid_result = gsc.fit(X, y)
このエラーが発生します:
AttributeError: 'NoneType' object has no attribute 'items'
誰かが私を助けてくれますか?ありがとう。