การประเมินและเปรียบเทียบอัลกอริทึม
เมื่อสร้างโมเดลใหม่ด้วย GBTRegressor แล้ว ถึงเวลานำมาเปรียบเทียบกับโมเดลพื้นฐาน RandomForestRegressor โดยจะนำผลการพยากรณ์ของทั้งสองโมเดลมาเทียบกับข้อมูลจริง แล้วคำนวณค่า RMSE และ R^2
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
Feature Engineering with PySpark
คำแนะนำการฝึกหัด
- นำเข้า
RegressionEvaluatorจากpyspark.ml.evaluationเพื่อเตรียมใช้งานในขั้นตอนถัดไป - สร้าง
RegressionEvaluatorโดยกำหนดlabelColเป็นคอลัมน์ข้อมูลจริงSALESCLOSEPRICEและpredictionColเป็นคอลัมน์ผลการพยากรณ์Prediction_Price - คำนวณค่าเมตริกโดยเรียก
evaluateบนevaluatorด้วยค่าพยากรณ์predsจากนั้นสร้าง dictionary ที่มีคีย์เป็นevaluator.metricNameและค่าเป็นrmseแล้วทำซ้ำในแบบเดียวกันสำหรับเมตริกr2
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
from ____ import ____
# Select columns to compute test error
evaluator = ____(____=____,
____=____)
# Dictionary of model predictions to loop over
models = {'Gradient Boosted Trees': gbt_predictions, 'Random Forest Regression': rfr_predictions}
for key, preds in models.items():
# Create evaluation metrics
rmse = evaluator.____(____, {____: ____})
r2 = evaluator.____(____, {____: ____})
# Print Model Metrics
print(key + ' RMSE: ' + str(rmse))
print(key + ' R^2: ' + str(r2))