Học máy với scikit-learning
Người bắt đầu4 giờ
316. 4K
Learn how to build and tune predictive models and evaluate how well they'll perform on unseen data.Xem chi tiết Mũi tên phải
bắt đầu khóa họcHọc máy cho dữ liệu chuỗi thời gian trong Python
Người bắt đầu4 giờ
34. 5K
This course focuses on feature engineering and machine learning for time series data.Xem chi tiết Mũi tên phải
bắt đầu khóa họcTrong học máy, Phân loại được sử dụng để chia dữ liệu thành các danh mục. Nhưng sau khi làm sạch và tiền xử lý dữ liệu cũng như đào tạo mô hình của chúng tôi, làm cách nào để biết liệu mô hình phân loại của chúng tôi có hoạt động tốt hay không? .
Ma trận nhầm lẫn được sử dụng để đo lường hiệu suất của bộ phân loại theo chiều sâu. Trong hướng dẫn đơn giản về Ma trận nhầm lẫn này, chúng ta sẽ hiểu và học tốt hơn về ma trận nhầm lẫn
Ma trận nhầm lẫn là gì và tại sao chúng ta cần chúng?
Phân loại Các mô hình có nhiều đầu ra phân loại. Hầu hết các phép đo lỗi sẽ tính tổng lỗi trong mô hình của chúng tôi, nhưng chúng tôi không thể tìm thấy các trường hợp lỗi riêng lẻ trong mô hình của mình. Mô hình có thể phân loại sai một số danh mục hơn các danh mục khác, nhưng chúng tôi không thể thấy điều này bằng thước đo độ chính xác tiêu chuẩn
Khóa đào tạo Python
Tìm hiểu về thao tác dữ liệu trong Python Khám phá khóa họcHơn nữa, giả sử có sự mất cân bằng lớp đáng kể trong dữ liệu đã cho. Trong trường hợp đó, tôi. e. , một lớp có nhiều thể hiện dữ liệu hơn các lớp khác, một mô hình có thể dự đoán lớp đa số cho mọi trường hợp và có điểm chính xác cao; . Đây là nơi ma trận nhầm lẫn hữu ích
Ma trận nhầm lẫn trình bày bố cục bảng về các kết quả khác nhau của dự đoán và kết quả của một vấn đề phân loại và giúp hình dung kết quả của nó
Nó vẽ một bảng gồm tất cả các giá trị thực tế và dự đoán của một bộ phân loại
Hình 1. Bố cục cơ bản của Ma trận nhầm lẫn
Làm cách nào để tạo Ma trận nhầm lẫn 2x2?
Chúng ta có thể thu được bốn kết hợp khác nhau từ các giá trị dự đoán và thực tế của một bộ phân loại
Hình 2. Ma trận hỗn loạn
- Tích cực thực sự. Số lần các giá trị dương thực tế của chúng tôi bằng với giá trị dương được dự đoán. Bạn đã dự đoán một giá trị dương và nó đúng
- dương tính giả. Số lần mô hình của chúng tôi dự đoán sai các giá trị âm thành dương. Bạn đã dự đoán một giá trị âm và nó thực sự là dương
- Tiêu cực thực sự. Số lần các giá trị âm thực tế của chúng tôi bằng với các giá trị âm được dự đoán. Bạn đã dự đoán một giá trị âm và nó thực sự là âm
- Âm tính giả. Số lần mô hình của chúng tôi dự đoán sai các giá trị âm thành dương. Bạn đã dự đoán một giá trị âm và nó thực sự là dương
Số liệu ma trận nhầm lẫn
Hình 3. Ma trận nhầm lẫn cho một bộ phân loại
Hãy xem xét một ma trận nhầm lẫn được tạo cho một bộ phân loại phân loại mọi người dựa trên việc họ nói tiếng Anh hay tiếng Tây Ban Nha
Từ sơ đồ trên, chúng ta có thể thấy rằng
Tích cực thực sự [TP] = 86
Tiêu cực thực sự [TN] = 79
Tích cực sai [FP] = 12
Phủ định sai [FN] = 10
PCP trong AI và Máy học
Hợp tác với Đại học Purdue Khóa học khám pháChỉ cần nhìn vào ma trận, hiệu suất của mô hình của chúng tôi không rõ ràng lắm. Để tìm hiểu mức độ chính xác của mô hình, chúng tôi sử dụng các chỉ số sau
- Sự chính xác. Độ chính xác được sử dụng để tìm phần giá trị được phân loại chính xác. Nó cho chúng ta biết tần suất bộ phân loại của chúng ta đúng. Nó là tổng của tất cả các giá trị thực chia cho tổng giá trị
hinh 4. Sự chính xác
Trong trường hợp này
Độ chính xác = [86 +79] / [86 + 79 + 12 + 10] = 0. 8823 = 88. 23%
- Độ chính xác. Độ chính xác được sử dụng để tính toán khả năng phân loại chính xác các giá trị dương của mô hình. Đó là số dương thực chia cho tổng số giá trị dương được dự đoán
Hình 5. Độ chính xác
Trong trường hợp này,
Độ chính xác = 86 / [86 + 12] = 0. 8775 = 87. 75%
- Nhớ lại. Nó được sử dụng để tính toán khả năng dự đoán các giá trị dương của mô hình. "Mô hình dự đoán các giá trị dương chính xác bao lâu một lần?". Đó là số dương thực chia cho tổng số giá trị dương thực.
Hình 6. Nhớ lại
Trong trường hợp này,
Nhớ lại = 86 / [86 + 10] = 0. 8983 = 89. 83%
- Điểm F1. Đó là ý nghĩa hài hòa của Recall và Precision. Nó hữu ích khi bạn cần tính đến cả Độ chính xác và Độ thu hồi
Hình 7. Điểm F1
Trong trường hợp này,
Điểm F1 = [2* 0. 8775 * 0. 8983] / [0. 8775 + 0. 8983] = 0. 8877 = 88. 77%
Mở rộng ma trận nhầm lẫn
Để chia tỷ lệ ma trận nhầm lẫn, hãy tăng số lượng hàng và cột. Tất cả các điểm tích cực thực sự sẽ nằm dọc theo đường chéo. Các giá trị khác sẽ là Sai tích cực hoặc Sai tiêu cực
Hình 12. Thu nhỏ tập dữ liệu của chúng tôi
Bây giờ chúng ta đã hiểu ma trận nhầm lẫn là gì và hoạt động bên trong của nó, hãy khám phá cách chúng tôi tìm thấy độ chính xác của một mô hình với bản demo thực hành về ma trận nhầm lẫn với Python
Ma trận nhầm lẫn với Python
Chúng tôi sẽ xây dựng mô hình hồi quy logistic bằng cách sử dụng bộ dữ liệu đau tim để dự đoán xem bệnh nhân có nguy cơ bị đau tim hay không.
Được mô tả bên dưới là tập dữ liệu mà chúng tôi sẽ sử dụng cho phần trình diễn này
Hình 9. Bộ dữ liệu đau tim
Hãy nhập các thư viện cần thiết để tạo mô hình của chúng ta.
Hình 10. Nhập ma trận nhầm lẫn trong python
Chúng ta có thể nhập chức năng ma trận nhầm lẫn từ sklearn. chỉ số. Hãy chia tập dữ liệu của chúng tôi thành các tính năng đầu vào và tập dữ liệu đầu ra mục tiêu.
Hình 11. Tách dữ liệu thành các biến và tập dữ liệu đích
Như chúng ta có thể thấy, dữ liệu của chúng ta chứa một loạt các giá trị, một số là một chữ số và một số có ba số. Để làm cho các phép tính của chúng tôi đơn giản hơn, chúng tôi sẽ chia tỷ lệ dữ liệu của mình và giảm dữ liệu đó thành một phạm vi giá trị nhỏ bằng cách sử dụng Bộ chia tỷ lệ tiêu chuẩn
Hình 12. Thu nhỏ tập dữ liệu của chúng tôi
Bây giờ, hãy chia tập dữ liệu của chúng tôi thành hai. một để đào tạo mô hình của chúng tôi và một để kiểm tra mô hình của chúng tôi. Để làm điều này, chúng tôi sử dụng train_test_split được nhập từ sklearn. Sử dụng Mô hình hồi quy logistic, chúng tôi sẽ thực hiện Phân loại trên dữ liệu đào tạo của mình và dự đoán dữ liệu thử nghiệm của chúng tôi để kiểm tra độ chính xác
Hình 13. Thực hiện phân loại
Để tìm độ chính xác của ma trận nhầm lẫn và tất cả các số liệu khác, chúng tôi có thể nhập precision_score và ratings_report từ cùng một thư viện
Hình 14. Độ chính xác của phân loại
precision_score cung cấp cho chúng tôi độ chính xác của trình phân loại của chúng tôi
Hình 15. Ma trận nhầm lẫn cho dữ liệu
Sử dụng các giá trị dự đoán [pred] và giá trị thực tế [y_test], chúng ta có thể tạo một ma trận nhầm lẫn với hàm mess_matrix
Sau đó, bằng cách sử dụng phương thức ravel[] của hàm mess_matrix, chúng ta có thể nhận được các giá trị True positive, True Negative, False positive và False Negative
Hình 16. Trích xuất giá trị ma trận
Hình 17. Số liệu ma trận nhầm lẫn
Cuối cùng, bằng cách sử dụng bảng phân loại_report, chúng tôi có thể tìm thấy các giá trị của các số liệu khác nhau trong ma trận nhầm lẫn của chúng tôi
Mong muốn chuyển sang lĩnh vực lập trình?
Phần kết luận
Trong bài viết này - Hướng dẫn tốt nhất về ma trận nhầm lẫn, chúng tôi đã xem xét ma trận nhầm lẫn là gì và tại sao chúng tôi sử dụng ma trận nhầm lẫn. Sau đó, chúng tôi đã xem xét cách tạo ma trận nhầm lẫn 2X2 và tính toán các số liệu của ma trận nhầm lẫn bằng cách sử dụng nó. Chúng tôi đã xem xét cách mở rộng ma trận nhầm lẫn để bao gồm nhiều hơn hai lớp phân loại và cuối cùng đã có kinh nghiệm thực hành với ma trận nhầm lẫn bằng cách triển khai chúng trong Python.
Bài viết về ma trận nhầm lẫn này có hữu ích cho bạn không?
Tìm Chương trình chứng chỉ chuyên nghiệp của chúng tôi về Chương trình đào tạo trực tuyến về trí tuệ nhân tạo và máy học ở các thành phố hàng đầu
NameDatePlaceChương trình chứng chỉ chuyên nghiệp về AI và Machine LearningCohort bắt đầu vào ngày 16 tháng 1 năm 2023,Đợt cuối tuầnYour CityView DetailsChương trình sau đại học về AI và Machine Learning, SingaporeCohort bắt đầu vào ngày 23 tháng 1 năm 2023,
Weekend batchSingaporeView Details
Giới thiệu về tác giả
Simplilearn là một trong những nhà cung cấp đào tạo trực tuyến hàng đầu thế giới về Tiếp thị kỹ thuật số, Điện toán đám mây, Quản lý dự án, Khoa học dữ liệu, CNTT, Phát triển phần mềm và nhiều công nghệ mới nổi khác