Bắt đầu ngayBắt đầu miễn phí

Đánh giá Decision Tree

Bạn có thể đánh giá chất lượng mô hình bằng cách xem mô hình hoạt động ra sao trên dữ liệu kiểm tra (testing). Vì mô hình không được huấn luyện trên các dữ liệu này, đây là một phép đánh giá khách quan.

Một confusion matrix cho bạn cái nhìn chi tiết về dự đoán so với giá trị đã biết. Ma trận này có bốn ô biểu diễn số lượng:

  • True Negatives (TN) — mô hình dự đoán tiêu cực và kết quả thực tế là tiêu cực
  • True Positives (TP) — mô hình dự đoán tích cực và kết quả thực tế là tích cực
  • False Negatives (FN) — mô hình dự đoán tiêu cực nhưng kết quả thực tế là tích cực
  • False Positives (FP) — mô hình dự đoán tích cực nhưng kết quả thực tế là tiêu cực.

Các số đếm này (TN, TP, FNFP) phải cộng lại bằng tổng số bản ghi trong dữ liệu kiểm tra, vốn chỉ là một phần của dữ liệu chuyến bay. Bạn có thể so sánh với số bản ghi trong dữ liệu kiểm tra bằng flights_test.count().

Lưu ý: Các dự đoán này được tạo trên dữ liệu testing, nên các số đếm sẽ nhỏ hơn so với khi dự đoán trên dữ liệu huấn luyện.

Bài tập này là một phần của khóa học

Machine Learning với PySpark

Xem khóa học

Hướng dẫn bài tập

  • Tạo một confusion matrix bằng cách đếm các tổ hợp của labelprediction. Hiển thị kết quả.
  • Đếm số lượng True Negatives, True Positives, False Negatives và False Positives.
  • Tính độ chính xác (accuracy).

Bài tập tương tác thực hành trực tiếp

Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.

# Create a confusion matrix
prediction.groupBy(____, 'prediction').____().____()

# Calculate the elements of the confusion matrix
TN = prediction.filter('prediction = 0 AND label = prediction').count()
TP = prediction.____('____ AND ____').____()
FN = prediction.____('____ AND ____').____()
FP = prediction.____('____ AND ____').____()

# Accuracy measures the proportion of correct predictions
accuracy = ____
print(accuracy)
Chỉnh sửa và Chạy Mã