假设我想训练使用
dt = DecisionTreeClassifier(max_depth = 1)
bc = BaggingClassifier(dt, n_estimators = 500, max_samples = 0.5, max_features = 0.5)
bc = bc.fit(X_train, y_train)
我想使用
BaggingClassifier
为DecisionTreeClassifier
和GridSearchCV
找到最佳参数(例如BaggingClassifier
fromDecisionTreeClassifier
和max_depth
fromDecisionTreeClassifier
),这有什么语法? 最佳答案
我自己找到了解决方案:
param_grid = {
'base_estimator__max_depth' : [1, 2, 3, 4, 5],
'max_samples' : [0.05, 0.1, 0.2, 0.5]
}
clf = GridSearchCV(BaggingClassifier(DecisionTreeClassifier(),
n_estimators = 100, max_features = 0.5),
param_grid, scoring = choosen_scoring)
clf.fit(X_train, y_train)
也就是说,在这种情况下,
max_depth
属于“__
thebase_estimator
,即myDecisionTreeClassifier
。这样可以工作并返回正确的结果。关于python - 调整BaggingClassifier使用的分类器的参数,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/47570307/