F-beta score
F-beta score คือค่าเฉลี่ยฮาร์มอนิกแบบถ่วงน้ำหนักระหว่าง precision และ recall ซึ่งช่วยให้กำหนดน้ำหนักของทั้งสองค่าได้แตกต่างกัน หากต้องการให้ความสำคัญกับ precision มากกว่า recall สามารถใช้ค่า beta ที่ต่ำกว่า 1 ได้ ในแบบฝึกหัดนี้ จะคำนวณค่า precision, recall ของ MLP classifier พร้อมกับ F-beta score โดยใช้ beta = 0.5
X_train, y_train, X_test, y_test พร้อมใช้งานใน workspace แล้ว และฟีเจอร์ถูก standardize ไว้เรียบร้อยแล้ว นอกจากนี้ยังมี pandas ในชื่อ pd และ sklearn รวมถึง fbeta_score() จาก sklearn.metrics พร้อมใช้งานด้วย
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
การพยากรณ์ CTR ด้วย Machine Learning ใน Python
คำแนะนำการฝึกหัด
- แบ่งข้อมูลออกเป็นชุดฝึกและชุดทดสอบ
- กำหนด MLP classifier จากนั้นฝึกโมเดลด้วย
.fit()และพยากรณ์ด้วย.predict() - ใช้ฟังก์ชันจาก
sklearnเพื่อคำนวณค่า precision, recall และ F-beta score
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
# Set up MLP classifier, train and predict
X_train, X_test, y_train, y_test = ____(
____, ____, test_size = .2, random_state = 0)
clf = ____(hidden_layer_sizes = (16, ),
max_iter = 10, random_state = 0)
y_pred = clf.____(____, _____).____(X_test)
# Evaluate precision and recall
prec = ____(y_test, ____, average = 'weighted')
recall = ____(y_test, ____, average = 'weighted')
fbeta = ____(y_test, ____, ____ = 0.5, average = 'weighted')
print("Precision: %s, Recall: %s, F-beta score: %s" %(prec, recall, fbeta))