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

วิเคราะห์โมเดลพยากรณ์ระยะเวลาเที่ยวบินที่ดีที่สุด

เราได้ตั้งค่า CrossValidator เพื่อค้นหาพารามิเตอร์ที่เหมาะสมสำหรับโมเดล linear regression ที่พยากรณ์ระยะเวลาเที่ยวบินไปแล้ว

pipeline ของโมเดลมีหลาย stage (ออบเจ็กต์ประเภท StringIndexer, OneHotEncoder, VectorAssembler และ LinearRegression) ซึ่งทำงานตามลำดับ โดย stage ต่าง ๆ สามารถเข้าถึงได้ผ่าน attribute stages บนออบเจ็กต์ pipeline และจะถูกรันตามลำดับที่ปรากฏในรายการ

ต่อไปเราจะเจาะลึก pipeline นี้ แยก stage ต่าง ๆ ออกมา และนำไปใช้สร้างการพยากรณ์บนข้อมูลทดสอบ

ออบเจ็กต์ต่อไปนี้ถูกสร้างขึ้นแล้ว:

  • cv — ออบเจ็กต์ CrossValidatorModel ที่ผ่านการฝึกแล้ว และ
  • evaluator — ออบเจ็กต์ RegressionEvaluator

ข้อมูล flights ถูกแบ่งแบบสุ่มออกเป็น flights_train และ flights_test

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

Machine Learning with PySpark

ดูคอร์ส

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

  • ดึงโมเดลที่ดีที่สุดออกมา
  • ตรวจสอบ stage ต่าง ๆ ใน best model
  • แยก stage ของ linear regression ออกมา แล้วดึงพารามิเตอร์ของมัน
  • ใช้ best model สร้างการพยากรณ์บนข้อมูลทดสอบ และคำนวณค่า RMSE

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

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

# Get the best model from cross validation
best_model = cv.____

# Look at the stages in the best model
print(best_model.____)

# Get the parameters for the LinearRegression object in the best model
best_model.____.extractParamMap()

# Generate predictions on testing data using the best model then calculate RMSE
predictions = ____.____(____)
print("RMSE =", ____.____(____))
แก้ไขและรันโค้ด