XGBRegressor算法代码
时间: 2023-05-26 22:02:11 浏览: 48
以下是使用XGBRegressor算法对波士顿房价数据进行回归预测的Python代码:
```python
import xgboost as xgb
from sklearn.datasets import load_boston
from sklearn.model_selection import train_test_split
from sklearn.metrics import mean_squared_error
# 加载数据
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=0)
# 初始化模型并训练
xgb_reg = xgb.XGBRegressor(objective='reg:squarederror',
subsample=0.7,
n_estimators=100,
learning_rate=0.1,
max_depth=5,
gamma=0.1
)
xgb_reg.fit(X_train, y_train)
# 预测测试集结果
y_pred = xgb_reg.predict(X_test)
# 计算均方误差
mse = mean_squared_error(y_test, y_pred)
print("均方误差: ", mse)
```
在上述代码中,我们使用xgboost库中的XGBRegressor类构建了一个XGBRegressor模型,并对其进行了训练和测试。在构建模型时,我们设置了一些重要的参数,包括目标函数(objective)、子采样率(subsample)、估计器数目(n_estimators)、学习率(learning_rate)、最大深度(max_depth)和正则化参数(gamma)。这些参数的选择是基于实验和经验确定的,可以根据实际应用场景进行调整。最后,我们计算了预测结果的均方误差,并输出到控制台。