我想对GaussianNB()进行网格调参,请你给我一段代码实现对这个算法进行寻优
时间: 2024-03-07 19:50:18 浏览: 28
好的,以下是一个使用GridSearchCV进行参数寻优的示例代码:
```python
from sklearn.naive_bayes import GaussianNB
from sklearn.model_selection import GridSearchCV
from sklearn.datasets import load_iris
# 加载iris数据集
iris = load_iris()
# 定义GaussianNB分类器
gnb = GaussianNB()
# 定义参数网格
param_grid = {'var_smoothing': [1e-9, 1e-8, 1e-7, 1e-6, 1e-5]}
# 定义网格搜索器
grid_search = GridSearchCV(gnb, param_grid, cv=10)
# 执行网格搜索
grid_search.fit(iris.data, iris.target)
# 打印最佳参数和最佳得分
print("Best parameters: {}".format(grid_search.best_params_))
print("Best cross-validation score: {:.2f}".format(grid_search.best_score_))
```
在这个例子中,我们使用了iris数据集,定义了GaussianNB分类器,并使用GridSearchCV在var_smoothing参数的五个取值中进行了网格搜索。最后打印出了最佳参数和最佳得分。你可以根据自己的需求修改参数网格和数据集。