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

การประเมินผลแบบครบถ้วน

Precision และ recall อาจมีน้ำหนักความสำคัญต่างกัน ดังนั้น F-beta score จึงเป็น Evaluation metric ที่สำคัญ นอกจากนี้ ROC AUC ยังเป็น metric เสริมที่ช่วยให้เห็นภาพรวมที่ชัดเจนขึ้น เนื่องจากโมเดลอาจมีค่า AUC สูงแต่ precision ต่ำได้ ในแบบฝึกหัดนี้ จะคำนวณ Evaluation metric ครบชุดสำหรับแต่ละ Classifier

มีฟังก์ชัน print_estimator_name() สำหรับแสดงชื่อของแต่ละ Classifier X_train, y_train, X_test, y_test พร้อมใช้งานใน Workspace และฟีเจอร์ถูก Standardize แล้ว นอกจากนี้ยังมี pandas ในชื่อ pd และ sklearn พร้อมใช้งานด้วย

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

การพยากรณ์ CTR ด้วย Machine Learning ใน Python

ดูคอร์ส

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

  • กำหนด MLP Classifier ที่มี Hidden layer หนึ่งชั้น ประกอบด้วย 10 Hidden unit และกำหนด Max iteration เป็น 50
  • ฝึกโมเดลและพยากรณ์ผลสำหรับแต่ละ Classifier
  • ใช้ฟังก์ชันจาก sklearn เพื่อคำนวณค่า Precision, Recall, F-beta score และ AUC ของ ROC

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

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

# Create classifiers
clfs = [LogisticRegression(), DecisionTreeClassifier(), RandomForestClassifier(), 
        ____(____ = (10, ), ____ = 50)]

# Produce all evaluation metrics for each classifier
for clf in clfs:
  print("Evaluating classifier: %s" %(print_estimator_name(clf)))
  y_score = clf.fit(X_train, y_train).____(X_test)
  y_pred = clf.fit(X_train, y_train).____(X_test)
  prec = ____(y_test, y_pred, average = 'weighted')
  recall = ____(y_test, y_pred, average = 'weighted')
  fbeta = ____(y_test, y_pred, beta = 0.5, average = 'weighted')
  roc_auc = ____(y_test, y_score[:, 1])
  print("Precision: %s: Recall: %s, F-beta score: %s, AUC of ROC curve: %s" 
        %(prec, recall, fbeta, roc_auc))
แก้ไขและรันโค้ด