使用 GridSearchCV 寻找最佳超参数
Using GridSearchCV to find best hyper parameters
您好,我是 GridSearchCV 的新手,我正在尝试使用 best_params_ 属性确定最佳参数。它运行正确,但它只有 return 一个 'max_depth':3,当我期望它也 return 最好的 max_leaf_nodes 和最好的 min_samples_split 时.请在下面查看我的代码,如果我没有正确执行或理解某些内容,请告诉我。谢谢!
from sklearn.model_selection import GridSearchCV
param_grid = [
{'max_depth': [1,2,3,4,5,8,16,32]},
{'max_leaf_nodes': list(range(2, 20, 1))},
{'min_samples_split': [2,3,4,5,8,12,16,20]},
]
# Call the fit() method to perform the grid search using 3-fold cross-validation.
grid_search_cv = GridSearchCV(DecisionTreeClassifier(random_state=42), param_grid, verbose=1, cv=3)
# Fit the model to the training set
grid_search_cv.fit(X_train, y_train)
print("The best parameters are: ", grid_search_cv.best_params_)
Output: The best parameters are: {'max_depth': 3}
我想通了。我不应该在我的字典的每一行上都有一个括号。
您好,我是 GridSearchCV 的新手,我正在尝试使用 best_params_ 属性确定最佳参数。它运行正确,但它只有 return 一个 'max_depth':3,当我期望它也 return 最好的 max_leaf_nodes 和最好的 min_samples_split 时.请在下面查看我的代码,如果我没有正确执行或理解某些内容,请告诉我。谢谢!
from sklearn.model_selection import GridSearchCV
param_grid = [
{'max_depth': [1,2,3,4,5,8,16,32]},
{'max_leaf_nodes': list(range(2, 20, 1))},
{'min_samples_split': [2,3,4,5,8,12,16,20]},
]
# Call the fit() method to perform the grid search using 3-fold cross-validation.
grid_search_cv = GridSearchCV(DecisionTreeClassifier(random_state=42), param_grid, verbose=1, cv=3)
# Fit the model to the training set
grid_search_cv.fit(X_train, y_train)
print("The best parameters are: ", grid_search_cv.best_params_)
Output: The best parameters are: {'max_depth': 3}
我想通了。我不应该在我的字典的每一行上都有一个括号。