การพยากรณ์รายได้ภาพยนตร์ด้วย CatBoost
มาปิดท้ายบทนี้เรื่อง Boosting ด้วยการกลับมาใช้ชุดข้อมูล movies กันอีกครั้ง! ในแบบฝึกหัดนี้ จะได้สร้าง CatBoostRegressor เพื่อพยากรณ์ log-revenue โดยจำไว้ว่าโมเดลที่ดีที่สุดของเราจนถึงตอนนี้คือโมเดล AdaBoost ที่มีค่า RMSE เท่ากับ 5.15
CatBoost จะเอาชนะ AdaBoost ได้หรือไม่? เราจะลองใช้พารามิเตอร์ที่ใกล้เคียงกันเพื่อให้การเปรียบเทียบเป็นธรรม
ระลึกไว้ว่าฟีเจอร์ที่เราใช้มาจนถึงตอนนี้ได้แก่: 'budget', 'popularity', 'runtime', 'vote_average' และ 'vote_count' โดย catboost ถูก import ให้แล้วในชื่อ cb
หมายเหตุ: ระวังอย่าใช้ classifier มิฉะนั้น session อาจหมดอายุได้!
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
Ensemble Methods ใน Python
คำแนะนำการฝึกหัด
- สร้างและ fit
CatBoostRegressorโดยใช้100estimators, learning rate เท่ากับ0.1และ max depth เท่ากับ3 - คำนวณการพยากรณ์สำหรับชุดทดสอบ แล้วพิมพ์ค่า RMSE
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
import catboost as cb
# Build and fit a CatBoost regressor
reg_cat = ____.____(____, ____, ____, random_state=500)
____
# Calculate the predictions on the test set
pred = ____
# Evaluate the performance using the RMSE
rmse_cat = np.sqrt(mean_squared_error(y_test, pred))
print('RMSE (CatBoost): {:.3f}'.format(rmse_cat))