模型堆叠 II
到目前为止,您在堆叠实现中已经完成了以下步骤:
- 将训练数据拆分为两部分。
- 在第 1 部分上训练多个模型。
- 在第 2 部分上进行预测。
- 在测试数据上进行预测。
接下来,您的目标是使用第 3 和第 4 步得到的预测作为特征,创建一个第二层模型。该模型在第 2 部分的数据上训练,然后您即可在测试数据上进行堆叠预测。
part_2 和 test 两个 DataFrame 已在您的工作区中可用。梯度提升和随机森林的预测结果分别以 "gbpred" 和 "rfpred" 的列名存放在这些 DataFrame 中。
本练习是课程的一部分
用 Python 赢下 Kaggle 竞赛
练习说明
- 使用第 2 部分数据,以梯度提升和随机森林模型的预测作为特征,训练一个线性回归模型。
- 以梯度提升和随机森林模型的预测作为特征,在测试数据上进行预测。
交互式实操练习
通过完成这段示例代码来试试这个练习。
from sklearn.linear_model import LinearRegression
# Create linear regression model without the intercept
lr = LinearRegression(fit_intercept=False)
# Train 2nd level model on the Part 2 data
lr.____(part_2[['gb_pred', '____']], part_2.fare_amount)
# Make stacking predictions on the test data
test['stacking'] = lr.____(test[['gb_pred', '____']])
# Look at the model coefficients
print(lr.coef_)