knn 分类算法调参代码实例
时间: 2023-09-10 15:14:33 浏览: 95
KNN.zip_KNN 分类
以下是一个knn分类算法调参的代码实例:
```python
# 导入必要的库
from sklearn.neighbors import KNeighborsClassifier
from sklearn.model_selection import GridSearchCV
from sklearn.datasets import load_iris
# 加载数据集
iris = load_iris()
# 构建模型
knn = KNeighborsClassifier()
# 定义要调整的参数和参数取值范围
param_grid = {
'n_neighbors': [3, 5, 7],
'weights': ['uniform', 'distance'],
'algorithm': ['auto', 'ball_tree', 'kd_tree', 'brute'],
'leaf_size': [10, 20, 30, 40, 50],
}
# 使用网格搜索进行调参
grid_search = GridSearchCV(knn, param_grid=param_grid, cv=5, n_jobs=-1)
grid_search.fit(iris.data, iris.target)
# 输出最优参数和最优得分
print('Best parameters:', grid_search.best_params_)
print('Best score:', grid_search.best_score_)
```
在这个例子中,我们首先加载了鸢尾花数据集,然后构建了一个KNN分类器。接下来,我们定义了要调整的参数和参数取值范围。我们使用GridSearchCV进行网格搜索,将搜索结果保存在grid_search对象中。最后,我们输出了最优参数和最优得分。
注意,这个例子中的参数和参数取值范围仅作为示例,实际应用中需要根据具体问题进行调整。
阅读全文