グリッド検索の SCIKIT ユーザー ガイドに従って同じコードを実行しようとしましたが、エラーが発生しました。かなり驚きました。
from sklearn.model_selection import GridSearchCV
from sklearn.calibration import CalibratedClassifierCV
from sklearn.ensemble import RandomForestClassifier
from sklearn.datasets import make_moons
from sklearn.model_selection import cross_val_score
from sklearn.datasets import load_iris
X,y=make_moons()
calibrated_forest=CalibratedClassifierCV(base_estimator=RandomForestClassifier(n_estimators=10))
paramgrid={'base_estimator_max_depth':[2,4,6,8]}
search=GridSearchCV(calibrated_forest,paramgrid,cv=5)
search.fit(X,y)
以下のようなエラーメッセージ:
ValueError: Invalid parameter base_estimator_max_depth for estimator CalibratedClassifierCV(base_estimator=RandomForestClassifier(n_estimators=10)). Check the list of available parameters with `estimator.get_params().keys()`.
上記と同じエラーが発生したアイリスデータセットで試しました。
次に、make_moon データセット X,y を使用して、以下のようにランダム分類器を実行しました。
clf = RandomForestClassifier(n_estimators=10, max_depth=2)
cross_val_score(clf, X, y, cv=5)
以下のような出力を得ました。
array([0.8 , 0.8 , 0.9 , 0.95, 0.95])
奇妙に見えて、何が起こっているのか、どこが間違っているのかわからない。助けを求めてください。