回到回归:使用 stacking
在第 1 章中,我们将应用评分作为回归问题处理,在 1 到 5 的区间内预测评分。本章至今,我们把它当作分类问题处理,将评分四舍五入到最近的整数。为练习使用 StackingRegressor,我们将回到回归思路。
像往常一样,输入特征已经用 StandardScaler() 为您完成了标准化。
评估指标为 MAE(平均绝对误差)。在第 1 章中,MAE 大约为 0.61。让我们看看 stacking 集成方法能否进一步降低该误差。
本练习是课程的一部分
Python 中的集成方法
练习说明
- 实例化一个决策树回归器:
min_samples_leaf = 11,min_samples_split = 33。 - 实例化默认的线性回归模型。
- 实例化一个
Ridge回归模型,设置random_state = 500。 - 构建并拟合一个
StackingRegressor,传入regressors和meta_regressor。
交互式实操练习
通过完成这段示例代码来试试这个练习。
# Instantiate the 1st-layer regressors
reg_dt = ____(____, ____, random_state=500)
reg_lr = ____
reg_ridge = ____
# Instantiate the 2nd-layer regressor
reg_meta = LinearRegression()
# Build the Stacking regressor
reg_stack = ____
reg_stack.____
# Evaluate the performance on the test set using the MAE metric
pred = reg_stack.predict(X_test)
print('MAE: {:.3f}'.format(mean_absolute_error(y_test, pred)))