对KNN算法和决策树算法调节参数得出更优的结果代码
时间: 2023-07-10 22:22:12 浏览: 94
好的,下面是对KNN算法和决策树算法进行参数调节的示例代码。
KNN算法:
```python
from sklearn.neighbors import KNeighborsClassifier
from sklearn.model_selection import GridSearchCV
import pandas as pd
import numpy as np
# 加载数据集
data = pd.read_csv('data.csv')
X = data.drop('label', axis=1)
y = data['label']
# 定义KNN模型
knn = KNeighborsClassifier()
# 定义参数范围
param_grid = {'n_neighbors': np.arange(1, 10)}
# 使用GridSearchCV进行参数调节
knn_cv = GridSearchCV(knn, param_grid, cv=5)
knn_cv.fit(X, y)
# 输出最优参数
print("最优参数:", knn_cv.best_params_)
```
决策树算法:
```python
from sklearn.tree import DecisionTreeClassifier
from sklearn.model_selection import GridSearchCV
import pandas as pd
import numpy as np
# 加载数据集
data = pd.read_csv('data.csv')
X = data.drop('label', axis=1)
y = data['label']
# 定义决策树模型
dt = DecisionTreeClassifier()
# 定义参数范围
param_grid = {'max_depth': np.arange(1, 10)}
# 使用GridSearchCV进行参数调节
dt_cv = GridSearchCV(dt, param_grid, cv=5)
dt_cv.fit(X, y)
# 输出最优参数
print("最优参数:", dt_cv.best_params_)
```
这里我们使用了sklearn库中的GridSearchCV函数,来进行参数调节。该函数会自动进行交叉验证,并返回最优的参数组合。
在这个示例代码中,我们以数据集data.csv为例进行调节,你需要将其替换为你自己的数据集,并根据需要调节参数范围。
阅读全文