决策树回归模型如何调整参数Python代码
时间: 2024-03-01 21:52:51 浏览: 68
下面是决策树回归模型的参数调整示例代码,使用网格搜索方法:
```python
from sklearn.tree import DecisionTreeRegressor
from sklearn.model_selection import GridSearchCV, train_test_split
from sklearn.datasets import load_boston
# 加载数据集
boston = load_boston()
X, y = boston.data, boston.target
# 划分训练集和测试集
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.3, random_state=42)
# 定义决策树回归模型
model = DecisionTreeRegressor()
# 定义参数网格
param_grid = {
'max_depth': [3, 5, 7, 9],
'min_samples_leaf': [1, 3, 5],
'min_samples_split': [2, 4, 6]
}
# 网格搜索
grid_search = GridSearchCV(model, param_grid, cv=5, n_jobs=-1)
grid_search.fit(X_train, y_train)
# 输出最优参数和最优得分
print("Best parameters: {}".format(grid_search.best_params_))
print("Best score: {:.2f}".format(grid_search.best_score_))
```
在上面的示例代码中,我们使用了`GridSearchCV`函数来进行参数搜索,`param_grid`定义了参数网格,`cv`参数指定了交叉验证的折数,`n_jobs`参数指定了同时使用的CPU数量。`fit`方法会对所有参数组合进行交叉验证,并返回最优参数和最优得分。
阅读全文