Làm cách nào để tính tỷ lệ lỗi từ ma trận nhầm lẫn trong Python?

Danh sách các nhãn để lập chỉ mục cho ma trận. Điều này có thể được sử dụng để sắp xếp lại hoặc chọn một tập hợp con các nhãn. Nếu cho trước None, những cái xuất hiện ít nhất một lần trong y_true hoặc y_pred được sử dụng theo thứ tự đã sắp xếp

sample_weight hình dạng giống như mảng (n_samples,), default=None

trọng lượng mẫu

Mới trong phiên bản 0. 18

chuẩn hóa {'true', 'pred', 'all'}, default=None

Bình thường hóa ma trận nhầm lẫn trên các điều kiện thực (hàng), dự đoán (cột) hoặc toàn bộ dân số. Nếu Không, ma trận nhầm lẫn sẽ không được chuẩn hóa

Trả về . C ndarray của hình dạng (n_classes, n_classes)

Ma trận nhầm lẫn có mục nhập hàng thứ i và cột thứ j cho biết số lượng mẫu có nhãn thực là loại thứ i và nhãn dự đoán là loại thứ j

Xem thêm

ConfusionMatrixDisplay.from_estimator

Vẽ ma trận nhầm lẫn cho một công cụ ước tính, dữ liệu và nhãn

ConfusionMatrixDisplay.from_predictions

Vẽ ma trận nhầm lẫn cho các nhãn đúng và dự đoán

ConfusionMatrixDisplay

Trực quan hóa ma trận nhầm lẫn

Người giới thiệu

[ 1 ]

Mục nhập Wikipedia cho ma trận Nhầm lẫn (Wikipedia và các tài liệu tham khảo khác có thể sử dụng một quy ước khác cho các trục)

Trên trang này, W3schools. com hợp tác với Học viện Khoa học Dữ liệu NYC để cung cấp nội dung đào tạo kỹ thuật số cho sinh viên của chúng tôi


một ma trận nhầm lẫn là gì?

Đó là một bảng được sử dụng trong các vấn đề phân loại để đánh giá nơi xảy ra lỗi trong mô hình

Các hàng đại diện cho các lớp thực tế mà kết quả nên có. Trong khi các cột đại diện cho các dự đoán chúng tôi đã thực hiện. Sử dụng bảng này, thật dễ dàng để biết dự đoán nào sai

Tạo một ma trận nhầm lẫn

Ma trận nhầm lẫn có thể được tạo bởi các dự đoán được tạo từ hồi quy logistic

Hiện tại, chúng tôi sẽ tạo các giá trị thực tế và dự đoán bằng cách sử dụng NumPy

Tiếp theo, chúng ta sẽ cần tạo các số cho các giá trị "thực tế" và "dự đoán"

actual = numpy.random.binomial(1, 0.9, size = 1000)
predicted = numpy.random.binomial(1, 0.9, size = 1000)

Để tạo ma trận nhầm lẫn, chúng tôi cần nhập số liệu từ mô-đun sklearn

from sklearn import metrics

Khi số liệu được nhập, chúng tôi có thể sử dụng chức năng ma trận nhầm lẫn trên các giá trị thực tế và dự đoán của chúng tôi

________số 8

Để tạo một màn hình trực quan dễ hiểu hơn, chúng ta cần chuyển đổi bảng thành màn hình ma trận nhầm lẫn

cm_display = metrics.ConfusionMatrixDisplay(confusion_matrix = confusion_matrix, display_labels = [False, True])

Hình dung màn hình yêu cầu chúng tôi nhập pyplot từ matplotlib

y_true0

Cuối cùng để hiển thị cốt truyện, chúng ta có thể sử dụng các hàm plot() và show() từ pyplot

y_true1

Xem toàn bộ ví dụ trong hành động

Thí dụ

nhập matplotlib. pyplot dưới dạng plt
nhập numpy
từ số liệu nhập sklearn

actual = numpy. ngẫu nhiên. nhị thức(1,. 9,size = 1000)
predicted = numpy. ngẫu nhiên. nhị thức(1,. 9,kích thước = 1000)

sự nhầm lẫn_ma trận = số liệu. confused_matrix(thực tế, dự đoán)

cm_display = số liệu. ConfusionMatrixDisplay(confusion_matrix = confusion_matrix, display_labels = [False, True])

cm_display. cốt truyện()
plt. hiển thị ()

Kết quả

Làm cách nào để tính tỷ lệ lỗi từ ma trận nhầm lẫn trong Python?

Chạy ví dụ »

Giải thích kết quả

Ma trận nhầm lẫn được tạo có bốn góc phần tư khác nhau

Phủ định đúng (Góc phần tư trên cùng bên trái)
Dương tính giả (Góc phần tư trên cùng bên phải)
Phủ định sai (Góc phần tư dưới cùng bên trái)
True Positive (Bottom-Right Quadrant)

Đúng có nghĩa là các giá trị đã được dự đoán chính xác, Sai có nghĩa là đã có lỗi hoặc dự đoán sai

Bây giờ chúng tôi đã tạo Ma trận nhầm lẫn, chúng tôi có thể tính toán các biện pháp khác nhau để định lượng chất lượng của mô hình. Đầu tiên, hãy nhìn vào Độ chính xác


QUẢNG CÁO


Số liệu đã tạo

Ma trận cung cấp cho chúng ta nhiều thước đo hữu ích giúp chúng ta đánh giá mô hình phân loại

Các biện pháp khác nhau bao gồm. Độ chính xác, Độ chính xác, Độ nhạy (Nhớ lại), Độ đặc hiệu và điểm F, được giải thích bên dưới


Sự chính xác

Độ chính xác đo lường tần suất mô hình đúng

Làm thế nào để tính toán

(Dương thực + Âm tính thực) / Tổng số dự đoán

Thí dụ

Độ chính xác = số liệu. precision_score(thực tế, dự đoán)

Chạy ví dụ »


Độ chính xác

Trong số những điều tích cực được dự đoán, bao nhiêu phần trăm là thực sự tích cực?

Làm thế nào để tính toán

Dương tính thật / (Dương tính thật + Dương tính giả)

Độ chính xác không đánh giá các trường hợp tiêu cực được dự đoán chính xác

Thí dụ

Độ chính xác = số liệu. precision_score(thực tế, dự đoán)

Chạy ví dụ »


Độ nhạy (Nhớ lại)

Trong số tất cả các trường hợp dương tính, bao nhiêu phần trăm được dự đoán là dương tính?

Độ nhạy (đôi khi được gọi là Nhớ lại) đo lường mức độ tốt của mô hình trong việc dự đoán các mặt tích cực

Điều này có nghĩa là nó xem xét các kết quả dương tính thực và âm tính giả (là những kết quả tích cực đã được dự đoán không chính xác là tiêu cực)

Làm thế nào để tính toán

Dương tính thật / (Dương tính thật + Âm tính giả)

Độ nhạy giúp hiểu rõ mô hình dự đoán điều gì đó tích cực như thế nào

Thí dụ

Sensitivity_recall = số liệu. thu hồi_score(thực tế, dự đoán)

Chạy ví dụ »


độ đặc hiệu

Mô hình dự đoán kết quả tiêu cực tốt như thế nào?

Độ đặc hiệu tương tự như độ nhạy, nhưng xem xét nó từ góc độ kết quả âm tính

Làm thế nào để tính toán

Âm tính thật / (Âm tính thật + Dương tính giả)

Vì nó chỉ ngược lại với Recall nên ta sử dụng hàm thu hồi_score, lấy nhãn vị trí ngược lại

Làm cách nào để tính tỷ lệ phân loại sai từ ma trận nhầm lẫn?

Tính tỷ lệ phân loại sai . Tìm giá trị này bằng cách cộng các giá trị dương và âm sai lại với nhau rồi chia tổng này cho tổng số giá trị trong tập dữ liệu của bạn .

Làm thế nào bạn có thể tính toán độ chính xác bằng cách sử dụng ma trận nhầm lẫn?

Độ chính xác. Nó cung cấp cho bạn độ chính xác tổng thể của mô hình, nghĩa là tỷ lệ phần trăm trong tổng số mẫu được phân loại chính xác bởi bộ phân loại. Để tính toán độ chính xác, hãy sử dụng công thức sau. (TP+TN)/(TP+TN+FP+FN) .

Làm cách nào để tính tỷ lệ dương thực sự từ ma trận nhầm lẫn trong Python?

Tỷ lệ dương thực (TPR) - Nó cho biết có bao nhiêu giá trị dương, trong số tất cả các giá trị dương, đã được dự đoán chính xác. Công thức tính tỷ lệ dương thực sự là (TP/TP + FN)

Bạn có thể tính toán những số liệu nào từ ma trận nhầm lẫn?

Ma trận nhầm lẫn có thể được sử dụng để tính toán chỉ số hiệu suất cho các mô hình phân loại. Trong số nhiều chỉ số hiệu suất được sử dụng, phổ biến nhất là độ chính xác, độ chính xác, khả năng thu hồi và điểm F1 .