การ Stack โมเดล I
ถึงเวลาทำ stacking แล้ว ในการนำแนวทาง stacking ไปใช้ จะทำตาม 6 ขั้นตอนที่ได้พูดถึงในวิดีโอก่อนหน้า:
- แบ่งข้อมูล train ออกเป็นสองส่วน
- เทรนโมเดลหลายตัวบนส่วนที่ 1
- ทำการพยากรณ์บนส่วนที่ 2
- ทำการพยากรณ์บนข้อมูล test
- เทรนโมเดลใหม่บนส่วนที่ 2 โดยใช้ผลพยากรณ์เป็น feature
- ทำการพยากรณ์บนข้อมูล test ด้วยโมเดลระดับที่ 2
DataFrame train และ test พร้อมใช้งานใน workspace แล้ว features คือรายการคอลัมน์ที่จะใช้สำหรับการเทรนบนข้อมูลส่วนที่ 1 และพร้อมใช้งานใน workspace เช่นกัน ชื่อตัวแปร target คือ "fare_amount"
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
การแข่งขัน Kaggle ด้วย Python
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
from sklearn.model_selection import train_test_split
from sklearn.ensemble import GradientBoostingRegressor, RandomForestRegressor
# Split train data into two parts
part_1, part_2 = ____(train, test_size=____, random_state=123)
# Train a Gradient Boosting model on Part 1
gb = GradientBoostingRegressor().____(____[features], ____.fare_amount)
# Train a Random Forest model on Part 1
rf = RandomForestRegressor().____(____[features], ____.fare_amount)