Pipeline สำหรับพยากรณ์ความนิยมของเพลง
ในแบบฝึกหัดสุดท้ายนี้ จะได้สร้าง pipeline สำหรับการเติมค่าที่ขาดหาย ปรับสเกลฟีเจอร์ และปรับแต่ง hyperparameter ของโมเดล logistic regression โดยมีเป้าหมายเพื่อค้นหาพารามิเตอร์ที่ดีที่สุดและความแม่นยำสูงสุดในการพยากรณ์แนวเพลง!
โมเดลและออบเจ็กต์ทั้งหมดที่จำเป็นสำหรับการสร้าง pipeline ได้ถูกโหลดไว้ให้เรียบร้อยแล้ว
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
Supervised Learning ด้วย scikit-learn
คำแนะนำการฝึกหัด
- สร้างขั้นตอนสำหรับ pipeline โดยเรียกใช้ simple imputer, standard scaler, และโมเดล logistic regression
- สร้างออบเจ็กต์ pipeline แล้วส่งตัวแปร
stepsเข้าไป - สร้างออบเจ็กต์ grid search เพื่อทำ cross-validation โดยใช้ pipeline และพารามิเตอร์ที่กำหนด
- แสดงผลพารามิเตอร์ที่ดีที่สุด จากนั้นคำนวณและแสดงผลคะแนนความแม่นยำบนชุดข้อมูลทดสอบของออบเจ็กต์ grid search
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
# Create steps
steps = [("imp_mean", ____()),
("scaler", ____()),
("logreg", ____())]
# Set up pipeline
pipeline = ____(____)
params = {"logreg__solver": ["newton-cg", "saga", "lbfgs"],
"logreg__C": np.linspace(0.001, 1.0, 10)}
# Create the GridSearchCV object
tuning = ____(____, param_grid=____)
tuning.fit(X_train, y_train)
y_pred = tuning.predict(X_test)
# Compute and print performance
print("Tuned Logistic Regression Parameters: {}, Accuracy: {}".format(____.____, ____.____))