การพยากรณ์คะแนนของแอป
หลังจากสำรวจชุดข้อมูลแอปของ Google ในแบบฝึกหัดก่อนหน้า มาสร้างโมเดลที่ใช้พยากรณ์คะแนนของแอปจาก feature บางส่วนกัน
ในแบบฝึกหัดนี้จะใช้ DecisionTreeRegressor จาก scikit-learn เนื่องจาก decision tree เป็นส่วนประกอบพื้นฐานของ ensemble model หลายรูปแบบ การทบทวนการทำงานของมันจะเป็นประโยชน์อย่างมากตลอดคอร์สนี้
จะใช้ MAE (mean absolute error) เป็น metric สำหรับการประเมินผล ซึ่งตีความได้ง่าย เพราะแสดงค่าความต่างเฉลี่ยระหว่างคะแนนจริงกับคะแนนที่พยากรณ์ได้
โมดูลที่จำเป็นทั้งหมดได้ import ไว้ให้แล้ว โดย feature และ target อยู่ในตัวแปร X และ y ตามลำดับ
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
Ensemble Methods ใน Python
คำแนะนำการฝึกหัด
- ใช้
train_test_split()เพื่อแบ่งXและyเป็นชุด train และ test โดยกำหนดขนาดชุด test เป็น 20% หรือ0.2 - สร้าง instance ของ
DecisionTreeRegressor()ชื่อreg_dtโดยกำหนด hyperparameter ดังนี้:min_samples_leaf = 3และmin_samples_split = 9 - Fit regressor กับชุด training โดยใช้
.fit() - พยากรณ์ label ของชุด test โดยใช้
.predict()
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
# Split into train (80%) and test (20%) sets
X_train, X_test, y_train, y_test = ____(____, ____, ____, random_state=42)
# Instantiate the regressor
reg_dt = ____(____, ____, random_state=500)
# Fit to the training set
____
# Evaluate the performance of the model on the test set
y_pred = ____
print('MAE: {:.3f}'.format(mean_absolute_error(y_test, y_pred)))