เริ่มต้นใช้งานเริ่มต้นใช้งานได้ฟรี

Baseline จาก Gradient Boosting

มาสร้าง baseline สุดท้ายโดยใช้ Random Forest กัน จากวิดีโอ คุณได้เห็นแล้วว่าคะแนนปรับตัวดีขึ้นอย่างมากเมื่อเปลี่ยนจาก grouping baseline ไปสู่ Gradient Boosting คราวนี้จะใช้ Random Forest จาก sklearn เพื่อพัฒนาคะแนนให้ดียิ่งขึ้นไปอีก

เป้าหมายของแบบฝึกหัดนี้คือนำฟีเจอร์เชิงตัวเลขมาฝึก Random Forest โดยไม่ต้องปรับ hyperparameter ใดๆ จากนั้นสร้างการพยากรณ์บนชุดทดสอบและตรวจสอบผลลัพธ์บน Public Leaderboard ทั้งนี้ มีฟีเจอร์ "hour" พร้อมใช้งานอยู่แล้ว และสามารถนำมาใช้เป็น input ให้กับโมเดลได้เช่นกัน

แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร

การแข่งขัน Kaggle ด้วย Python

ดูคอร์ส

คำแนะนำการฝึกหัด

  • เพิ่มฟีเจอร์ "hour" ลงในลิสต์ฟีเจอร์เชิงตัวเลข
  • Fit RandomForestRegressor บนข้อมูล train โดยใช้ฟีเจอร์เชิงตัวเลขและ "fare_amount" เป็น target
  • ใช้โมเดล Random Forest ที่ฝึกแล้วเพื่อสร้างการพยากรณ์บนข้อมูล test

แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ

ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์

from sklearn.ensemble import RandomForestRegressor

# Select only numeric features
features = ['pickup_longitude', 'pickup_latitude', 'dropoff_longitude',
            'dropoff_latitude', 'passenger_count', ____]

# Train a Random Forest model
rf = RandomForestRegressor()
rf.____(train[____], train.fare_amount)

# Make predictions on the test data
test['fare_amount'] = ____.____(test[features])

# Write predictions
test[['id','fare_amount']].to_csv('rf_sub.csv', index=False)
แก้ไขและรันโค้ด