python的GridSearchCV函数
时间: 2023-08-07 11:34:50 浏览: 113
`GridSearchCV` 函数是 `scikit-learn` 中的一个超参数自动调优函数,用于在给定的超参数空间中进行网格搜索,找到最优的超参数组合。其用法如下:
```
from sklearn.model_selection import GridSearchCV
from sklearn.svm import SVC
# 定义超参数空间
param_grid = {
'C': [0.1, 1, 10, 100],
'gamma': [0.01, 0.1, 1, 10]
}
# 定义待优化的模型
model = SVC()
# 定义GridSearchCV对象
grid_search = GridSearchCV(model, param_grid, cv=5)
# 在训练集上进行超参数搜索
grid_search.fit(X_train, y_train)
# 输出最优的超参数组合
print(grid_search.best_params_)
```
其中,`param_grid` 定义了超参数空间,可以是一个字典或一个列表,字典中的键为超参数的名称,值为超参数的取值列表。`cv` 参数指定了交叉验证的折数。在执行 `fit` 方法后,`GridSearchCV` 会在超参数空间中进行网格搜索,找到最优的超参数组合,并将最优的超参数组合保存在 `best_params_` 属性中。最后,我们可以使用最优的超参数组合对测试集进行预测。
需要注意的是,在实际使用中,我们需要根据具体的模型和数据集定义超参数空间,并根据计算资源的情况选择适当的搜索策略。同时,由于网格搜索需要遍历超参数空间,因此它的计算复杂度很高,可能需要花费大量的时间和计算资源。
阅读全文