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

โมเดลระยะเวลาเที่ยวบิน: เพิ่ม Feature มากขึ้น!

มาเพิ่ม feature ให้กับโมเดลกัน การเพิ่ม feature ไม่ได้หมายความว่าโมเดลจะดีขึ้นเสมอไป บาง feature อาจช่วยปรับปรุงโมเดล ในขณะที่บาง feature อาจทำให้ผลลัพธ์แย่ลง

อย่างไรก็ตาม feature ที่มากขึ้น ย่อม ทำให้โมเดลซับซ้อนและตีความยากขึ้นเสมอ

ต่อไปนี้คือ feature ที่จะใช้ในโมเดลถัดไป:

  • km
  • org (สนามบินต้นทาง, เข้ารหัสแบบ one-hot, 8 ระดับ)
  • depart (เวลาออกเดินทาง, จัดกลุ่มทุก 3 ชั่วโมง, เข้ารหัสแบบ one-hot, 8 ระดับ)
  • dow (วันในสัปดาห์ที่ออกเดินทาง, เข้ารหัสแบบ one-hot, 7 ระดับ) และ
  • mon (เดือนที่ออกเดินทาง, เข้ารหัสแบบ one-hot, 12 ระดับ)

ทั้งหมดนี้ถูก assemble ไว้ในคอลัมน์ features ซึ่งเป็น sparse representation ของ 32 คอลัมน์ (จำไว้ว่าการเข้ารหัสแบบ one-hot จะสร้างคอลัมน์น้อยกว่าจำนวนระดับอยู่หนึ่งคอลัมน์เสมอ)

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

แบบฝึกหัดนี้ใช้ข้อมูลเที่ยวบินชุดย่อยขนาดเล็ก

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

Machine Learning with PySpark

ดูคอร์ส

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

  • Fit โมเดล linear regression กับข้อมูลชุด training
  • สร้างค่าพยากรณ์สำหรับข้อมูลชุด testing
  • คำนวณค่า RMSE บนข้อมูลชุด testing
  • ดูค่าสัมประสิทธิ์ (coefficients) ของโมเดล มีค่าใดเป็นศูนย์บ้างหรือไม่?

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

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

from pyspark.ml.regression import ____
from pyspark.ml.evaluation import ____

# Fit linear regression model to training data
regression = ____(____).____(____)

# Make predictions on testing data
predictions = regression.____(____)

# Calculate the RMSE on testing data
rmse = ____(____).____(____)
print("The test RMSE is", rmse)

# Look at the model coefficients
coeffs = regression.____
print(coeffs)
แก้ไขและรันโค้ด