Во-первых, чтобы увидеть, как вы должны назвать свои параметры в своем словаре, вы можете заранее распечатать их следующим образом:
print(rfr_2.get_params())
После того, как вы напечатали все параметры, теперь вы можете выбрать, какие те, которые вы собираетесь передать в словарь сетки.
Что вам нужно сделать, так это избавиться от "Estimator__", которое вы помещаете перед каждым параметром.
Кроме того, как только вы это сделаете , вы столкнетесь с другой ошибкой. А именно, параметр max_samples может принимать значение от 1 до 232, значение, которое вы установили (10000), слишком велико. Ниже представлен блок кода, который был изменен и должен работать!
rf_grid= {"n_estimators": np.arange(10,100,10),
"max_depth": [None,3,5,10],
"min_samples_split": np.arange(2,20,2),
"min_samples_leaf" : np.arange(1,20,2),
"max_features": [0.5,1,'sqrt','auto'],
"max_samples" : [100]