Phần trước đã trình bày một tập hợp các chỉ số mô hình, tất cả được tính ở mức một giá trị ngưỡng phân loại duy nhất. Nhưng nếu bạn muốn đánh giá chất lượng của mô hình trên tất cả các ngưỡng có thể, bạn cần các công cụ khác nhau.
Đường cong đặc tính hoạt động của máy thu (ROC)
Đường cong ROC là thông tin trình bày trực quan về hiệu suất của mô hình trên tất cả các ngưỡng. Phiên bản dài của tên, đặc điểm hoạt động của bộ thu, là một mã tạm thời từ việc phát hiện ra-đa trong Thế chiến thứ hai.
Đường cong ROC được vẽ bằng cách tính tỷ lệ dương thực (TPR) và tỷ lệ dương tính giả (FPR) ở mọi ngưỡng có thể xảy ra (trên thực tế, ở mức khoảng thời gian đã chọn), sau đó vẽ biểu đồ TPR trên FPR. Một người mẫu hoàn hảo, mà ở một số ngưỡng có TPR là 1.0 và FPR là 0.0, có thể được biểu thị bằng một điểm tại (0, 1) nếu tất cả các ngưỡng khác bị bỏ qua hoặc bằng cách xác định như sau:
Diện tích dưới đường cong (AUC)
Vùng dưới đường cong ROC (AUC) biểu thị xác suất mà mô hình đó nếu cho một ví dụ âm và dương được chọn ngẫu nhiên, sẽ xếp hạng dương cao hơn giá trị âm.
Mô hình hoàn hảo ở trên, chứa một hình vuông với các cạnh có độ dài là 1, có giá trị diện tích dưới đường cong (AUC) bằng 1,0. Điều này có nghĩa là xác suất 100% mô hình sẽ xếp hạng chính xác một ví dụ khẳng định được chọn ngẫu nhiên cao hơn ví dụ phủ định được chọn ngẫu nhiên. Nói cách khác, khi xem xét sự lan truyền của các điểm dữ liệu dưới đây, AUC cho biết xác suất mà mô hình sẽ đặt hình vuông được chọn ngẫu nhiên ở bên phải hình tròn được chọn ngẫu nhiên, không phụ thuộc vào nơi đặt ngưỡng.
Nói một cách cụ thể hơn, thuật toán phân loại thư rác sử dụng AUC 1.0 luôn chỉ định một email rác ngẫu nhiên thì khả năng bị so với một email hợp lệ ngẫu nhiên. Cách phân loại thực tế của mỗi email tuỳ thuộc vào ngưỡng mà bạn chọn.
Đối với thuật toán phân loại nhị phân, một mô hình thực hiện chính xác như các dự đoán ngẫu nhiên hoặc tung đồng xu có ROC là một đường chéo từ (0,0) đến (1,1). AUC là 0, 5 thể hiện xác suất 50% xác suất xếp hạng chính xác kết quả dương tính ngẫu nhiên và ví dụ phủ định.
Trong ví dụ về thuật toán phân loại thư rác, thuật toán phân loại spam có AUC là 0,5 sẽ gán email rác ngẫu nhiên có xác suất là thư rác cao hơn so với email ngẫu nhiên email hợp lệ chỉ được một nửa thời gian.
(Không bắt buộc, nâng cao) Đường cong gợi lại độ chính xác
AUC và ROC hoạt động tốt trong việc so sánh các mô hình khi tập dữ liệu sao cho cân bằng giữa các lớp. Khi tập dữ liệu không cân bằng, tính năng gợi lại độ chính xác đường cong (PRC) và phần diện tích dưới các đường cong đó có thể đưa ra kết quả so sánh tốt hơn trực quan về hiệu suất của mô hình. Đường cong gợi lại độ chính xác được tạo bởi vẽ đồ thị độ chính xác trên trục y và gợi nhắc trên trục x trên tất cả ngưỡng.
AUC và ROC để chọn mô hình và ngưỡng
AUC là thước đo hữu ích để so sánh hiệu suất của hai mô hình khác nhau, miễn là tập dữ liệu đã gần cân bằng. (Xem Đường cong gợi lại độ chính xác, ở trên, đối với các tập dữ liệu không cân bằng.) Mô hình có diện tích lớn hơn trong đường cong thường là đường cong tốt hơn.
Các điểm trên đường cong ROC gần nhất với (0,1) biểu thị cho ngưỡng hoạt động tốt nhất cho mô hình cụ thể. Như đã thảo luận trong Ngưỡng, Ma trận nhầm lẫn và Lựa chọn chỉ số và lựa chọn đánh đổi ngưỡng mà bạn chọn sẽ tuỳ thuộc vào chỉ số nào quan trọng nhất đối với trường hợp sử dụng cụ thể. Hãy xem xét các điểm A, B và C trong các trường hợp sau mỗi biểu đồ đại diện cho một ngưỡng:
Nếu dương tính giả (cảnh báo giả) có mức hao tổn cao, thì bạn nên chọn một ngưỡng đưa ra FPR thấp hơn, như ngưỡng ở điểm A, ngay cả khi TPR bị giảm. Ngược lại, nếu dương tính giả có giá rẻ và âm tính giả (bỏ lỡ dương tính thật) rất tốn kém, ngưỡng cho điểm C, mà tối đa hoá TPR, có thể phù hợp hơn. Nếu chi phí gần tương đương, điểm B có thể mang lại mức cân bằng tốt nhất giữa TPR và FPR.
Dưới đây là đường cong ROC cho dữ liệu mà chúng ta đã xem trước đây:
Bài tập: Kiểm tra kiến thức
(Không bắt buộc, nâng cao) Câu hỏi thưởng
Hãy tưởng tượng một tình huống mà bạn nên cho phép một số nội dung rác tiếp cận thay vì gửi một email quan trọng đối với doanh nghiệp vào thư mục thư rác. Bạn đã đã huấn luyện một thuật toán phân loại thư rác cho trường hợp này khi lớp dương spam và lớp phủ định không phải là spam. Điểm nào sau đây trên đường cong ROC cho thuật toán phân loại có phù hợp không?