Phân loại: ROC và AUC

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:

Hình 1. Đồ thị của TPR (trục y) so với FPR (trục x) biểu thị
            hiệu suất của một mô hình hoàn hảo: một dòng từ (0,1) đến (1,1).
Hình 1. ROC và AUC của một mô hình hoàn hảo theo giả định.

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.

Dòng dữ liệu tiện ích không có thanh trượt

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.

Hình 2. Đồ thị của TPR (trục y) so với FPR (trục x) biểu thị
            hiệu suất của một người đoán ngẫu nhiên 50-50: một đường chéo từ (0,0)
            đến (1,1).
Hình 2. ROC và AUC của những phỏng đoán hoàn toàn ngẫu nhiên.

(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.

Ví dụ về đường cong thu hồi độ chính xác với đường cong lồi hướng xuống từ (0,1)
            đến (1,0)

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.

Hình 3.a. Đồ thị ROC/AUC của mô hình với AUC=0, 65. Hình 3.b. Đồ thị ROC/AUC của mô hình với AUC=0, 93.
Hình 3. ROC và AUC của hai mô hình giả định. Đường cong trên phải, có AUC lớn hơn, đại diện cho hai mô hình 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ẫnLự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:

Hình 4. Đường cong ROC có AUC=0,84 cho thấy 3 điểm trên
            phần lồi của đường cong gần với (0,1) nhất được dán nhãn A, B, C theo thứ tự.
Hình 4. 3 điểm được gắn nhãn đại diện cho các 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.

Bài tập: Kiểm tra kiến thức

Trên thực tế, đường cong ROC ít thường xuyên hơn hình minh hoạ đã cung cấp ở trên. Mô hình nào sau đây được thể hiện bằng đường cong ROC và AUC, có hiệu suất tốt nhất không?
Đường cong ROC vòng cung lên trên rồi sang phải từ (0,0) đến
           (1,1). Đường cong có AUC là 0,77.
Mô hình này có AUC cao nhất, tương ứng với giá trị AUC tốt nhất hiệu suất.
Đường cong ROC xấp xỉ một đường thẳng từ (0,0) đến
           (1,1), với một vài đoạn ngoằn ngoèo. Đường cong có AUC là 0,508.
Đường cong ROC zig-zag lên và sang phải từ (0,0) đến (1,1).
           Đường cong có AUC là 0,623.
Đường cong ROC vòng cung sang phải rồi hướng lên trên từ
                (0,0) đến (1,1). Đường cong có AUC là 0,31.
Mô hình nào sau đây hoạt động kém hơn mức ngẫu nhiên?
Đường cong ROC vòng cung sang phải rồi hướng lên trên từ
                (0,0) đến (1,1). Đường cong có AUC là 0,32.
Mô hình này có AUC dưới 0,5, nghĩa là mô hình này hoạt động kém hơn cơ hội.
Đường cong ROC gần bằng một đường thẳng của
                     từ (0,0) đến (1,1), với một vài ngoằn ngoèo. Đường cong này có
                     AUC là 0,508.
Mô hình này hoạt động tốt hơn một chút so với cơ hội.
Đường cong ROC là một đường thẳng chéo từ
                (0,0) đến (1,1). Đường cong có AUC là 0,5.
Mô hình này hoạt động giống như cơ hội.
Đường cong ROC gồm hai đường vuông góc: một đường thẳng đứng
      đường kẻ từ (0,0) đến (0,1) và một đường nằm ngang từ (0,1) đến (1,1).
      Đường cong này có AUC là 1,0.
Đây là một thuật toán phân loại hoàn hảo theo giả định.

(Không bắt buộc, nâng cao) Câu hỏi thưởng

Thay đổi nào sau đây có thể dẫn đến việc kém khả năng hơn ở câu hỏi trước nhằm làm cho mô hình đó hoạt động hiệu quả hơn cơ hội?
Đảo ngược các dự đoán để các dự đoán 1 trở thành 0 và dự đoán từ 0 trở thành 1.
Nếu thuật toán phân loại nhị phân đưa các ví dụ vào sai lớp thường xuyên hơn khả năng, việc chuyển nhãn lớp sẽ ngay lập tức đưa ra dự đoán tốt hơn là ngẫu nhiên mà không cần huấn luyện lại mô hình.
Yêu cầu tính năng này luôn dự đoán lớp phủ định.
Điều này có thể có hoặc không cải thiện được hiệu suất nếu vượt quá khả năng. Ngoài ra, như thảo luận trong phần Độ chính xác. thì đây không phải là một mô hình hữu ích.
Yêu cầu ứng dụng luôn dự đoán lớp tích cực.
Điều này có thể có hoặc không cải thiện được hiệu suất nếu vượt quá khả năng. Ngoài ra, như thảo luận trong phần Độ chính xác. thì đây không phải là một mô hình hữu ích.

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?

Đường cong ROC có AUC=0,84 cho thấy ba điểm trên phần lồi của
       đường cong gần bằng (0,1). Điểm A ở gần đúng
       (0,25; 0,75). Điểm B ở khoảng (0,30; 0,90), và
       điểm giúp tối đa hoá TPR trong khi giảm thiểu FPR. Điểm
       C ở khoảng (0, 4, 0, 95).
Điểm A
Trong trường hợp sử dụng này, bạn nên giảm thiểu dương tính giả, ngay cả khi số lượng dương tính thật cũng giảm.
Điểm B
Ngưỡng này cân bằng giữa dương tính thật và dương tính giả.
Điểm C
Ngưỡng này tối đa hoá kết quả dương tính thật (gắn cờ nhiều thư rác hơn) nhưng sẽ có nhiều kết quả dương tính giả (nhiều email hợp lệ hơn bị gắn cờ là thư rác).