Làm thế nào để chọn giữa điểm số ROC AUC và F1?


26

Gần đây tôi đã hoàn thành một cuộc thi Kaggle trong đó điểm số roc auc được sử dụng theo yêu cầu của cuộc thi. Trước dự án này, tôi thường sử dụng điểm số F1 làm số liệu để đo hiệu suất mô hình. Đi về phía trước, tôi tự hỏi làm thế nào tôi nên chọn giữa hai số liệu này? Khi nào nên sử dụng cái nào, và ưu và nhược điểm tương ứng của chúng là gì?

Btw, tôi đã đọc bài viết ở đây Sự khác biệt giữa điểm AUC và điểm F1 là gì? , nhưng nó không cho tôi biết khi nào nên sử dụng.

Cảm ơn trước sự giúp đỡ nào!

Câu trả lời:


14

Không có biện pháp nào được liệt kê ở đây là quy tắc chấm điểm chính xác phù hợp, nghĩa là các quy tắc được tối ưu hóa theo một mô hình chính xác. Xem xét điểm Brier và các biện pháp dựa trên khả năng đăng nhập như giả . Các -Index (AUROC; sự phù hợp khả năng) là không đúng nhưng là tốt để mô tả một mô hình duy nhất. Nó không đủ nhạy cảm để sử dụng cho việc chọn mô hình hoặc so sánh dù chỉ là hai mô hình.R2c


Cảm ơn bạn đã trả lời Frank! Tôi cần làm rõ thêm. Nếu chúng ta chỉ có thể chọn từ điểm ROC AUC và F1, bạn sẽ chọn cái nào và tại sao? Những ưu và nhược điểm của cả hai là gì?
George Liu

2
Nếu bạn chỉ được phép lựa chọn trong số -index và F1, bạn không đủ sức tranh cãi. Tiêu chuẩn vàng là khả năng đăng nhập, khả năng đăng nhập bị phạt hoặc tương đương Bayes (ví dụ: DIC). Bên cạnh đó là điểm Brier. c
Frank Harrell

2
Xem citeulike.org/user/harrelfe/article/14321176 ; Tôi đã thể hiện điều này với các mô phỏng của riêng tôi. Nếu sự mất cân bằng không phải do quá khổ / thiếu mẫu, bạn có thể sử dụng bất kỳ quy tắc chấm điểm thích hợp nào bất kể sự mất cân bằng.
Frank Harrell

1
@FrankHarrell: liên kết đã chết, bạn có thể kiểm tra lại không?
SiXUlm

13

Công thức tính:

  • Chính xác TP / (TP + FP)
  • Nhớ lại: TP / (TP + FN)
  • Điểm số F1 2 / (1 / P + 1 / R)
  • ROC / AUC 2015 TPR = TP / (TP + FN), FPR = FP / (FP + TN)

ROC / AUC là cùng một tiêu chí và đường cong PR (Precision-Recall) (F1-points, Precision, Recall) cũng là các tiêu chí tương tự.

Dữ liệu thực sẽ có xu hướng mất cân bằng giữa các mẫu dương tính và âm tính. Sự mất cân bằng này có ảnh hưởng lớn đến PR nhưng không phải ROC / AUC.

Vì vậy, trong thế giới thực, đường cong PR được sử dụng nhiều hơn vì các mẫu dương tính và âm tính rất không đồng đều. Đường cong ROC / AUC không phản ánh hiệu suất của trình phân loại, nhưng đường cong PR có thể.

Nếu bạn chỉ làm thí nghiệm trong các tài liệu nghiên cứu, bạn có thể sử dụng ROC, kết quả thử nghiệm sẽ đẹp hơn. Mặt khác, đường cong PR sử dụng trong vấn đề thực sự và nó có khả năng diễn giải tốt hơn.


7

Trên đây là câu trả lời tốt.

Skew= =negmộtttôiveexmộtmptôieSpoStôittôiveexmộtmptôieS

Với dữ liệu không cân bằng, AUC vẫn mang lại cho bạn giá trị đặc biệt khoảng 0,8. Tuy nhiên, nó cao do FP lớn, thay vì TP lớn (Đúng dương).

Chẳng hạn như ví dụ dưới đây,

TP=155,   FN=182
FP=84049, TN=34088

Vì vậy, khi bạn sử dụng AUC để đo hiệu suất của trình phân loại, vấn đề là sự gia tăng của AUC không thực sự phản ánh một trình phân loại tốt hơn. Đó chỉ là tác dụng phụ của quá nhiều ví dụ tiêu cực. Bạn chỉ có thể thử trong tập dữ liệu của bạn.

Fβ= =(1+β2)prectôiStôionrecmộttôitôi(β2prectôiStôion)+recmộttôitôi

β

Sau đó, đề xuất của tôi cho dữ liệu mất cân bằng tương tự như bài đăng này . Bạn cũng có thể thử bảng decile, có thể được xây dựng bằng cách tìm kiếm "Bảng phân loại hai và hai bảng phân tách". Trong khi đó, tôi cũng đang nghiên cứu về vấn đề này và sẽ đưa ra biện pháp tốt hơn.


Nếu bạn quan tâm đến hiệu suất của một phương pháp, tốt hơn bạn nên sử dụng ROC để hiển thị hiệu suất phân loại của nó, nhưng nếu bạn quan tâm nhiều hơn đến dự đoán thực tế về tính tích cực thực sự, thì điểm số F1 được chào đón trong ngành.
Xiaorui Zhu

2
Trong một môi trường kinh doanh thực tế, chi phí của dương tính giả và chi phí âm tính giả có thể được ước tính. Sau đó, phân loại cuối cùng nên dựa trên mô hình xác suất và ngưỡng phân loại được chọn để giảm thiểu chi phí phân loại sai. Tôi thực sự không nghĩ rằng độ chính xác, hoặc điểm F có nhiều ứng dụng thực tế cho nhà khoa học dữ liệu bị kỷ luật.
Matthew Drury

Có, tôi đồng ý với quy trình của phương pháp quyết định giảm thiểu chi phí xác suất và mô hình cắt giảm phân loại sai. Và trong một số trường hợp, chi phí bất đối xứng có thể được áp dụng cho FP và FN. Nhưng điểm chính xác và điểm F là kiểm tra hiệu suất tổng thể của một mô hình hoặc so sánh hiệu suất giữa một số mô hình. Thật vậy, với dữ liệu trong tay là nhà khoa học dữ liệu, việc giảm thiểu chi phí có thể luôn luôn khả thi. Nhưng tôi tò mò về việc làm nhà khoa học dữ liệu trong thực tế cần phân phối (hoặc biến thể) của giải pháp cho vấn đề quyết định. Tôi muốn biết nếu bạn có thể chia sẻ một số với tôi. Thx
Xiaorui Zhu

1
Cá nhân, tôi sẽ luôn đánh giá mức độ phù hợp của mô hình trên cơ sở xác suất có điều kiện mà nó dự đoán. Vì vậy, tôi sẽ luôn so sánh các mô hình bằng cách sử dụng quy tắc chấm điểm thích hợp như mất log, sử dụng bootstrapping để đảm bảo cải tiến không bị nhiễu và có thể bổ sung bằng AUC.
Matthew Drury

2
Tôi không nghĩ đó là sự thật. AUC được xây dựng đặc biệt để không nhạy cảm với sự mất cân bằng trong lớp, tôi đã thực hiện các mô phỏng mở rộng về điều này và thấy điều đó là đúng. Ngoài ra, khi so sánh các mô hình, chúng nên được xây dựng trên các tập dữ liệu được lấy mẫu từ cùng một quần thể, làm cho bất kỳ vấn đề nào bị mất cân bằng lớp.
Matthew Drury

4

Để nói những từ rất đơn giản khi bạn có sự mất cân bằng dữ liệu, nghĩa là, sự khác biệt giữa số lượng ví dụ bạn có cho các lớp tích cực và tiêu cực là lớn, bạn nên luôn luôn sử dụng điểm F1. Nếu không, bạn có thể sử dụng các đường cong ROC / AUC.


Định nghĩa của bạn về "mất cân bằng dữ liệu" là bạn thường xuyên sử dụng điểm F1, vì vậy điều này không giúp ích nhiều. Có lẽ bạn có thể mở rộng về điều này một chút?
jbowman

Tôi đã bỏ lỡ một từ rất quan trọng ở đó ... lời xin lỗi. Chỉnh sửa phản ứng của tôi. Hãy cho tôi biết nếu bạn cần làm rõ hơn.
balboa

1

Đối với một số vấn đề phân loại nhiều lớp, việc phân tích và trực quan hóa ROC / AUC không đơn giản. Bạn có thể xem xét câu hỏi này, Làm thế nào để vẽ đồ thị ROC trong phân loại đa lớp? . Trong tình huống như vậy, sử dụng điểm F1 có thể là một số liệu tốt hơn.

Và điểm F1 là một lựa chọn phổ biến cho vấn đề truy xuất thông tin và phổ biến trong các thiết lập ngành. Dưới đây là một ví dụ được giải thích rõ ràng, các mô hình Xây dựng ML rất khó. Triển khai chúng trong môi trường kinh doanh thực sự khó hơn .


1

Nếu mục tiêu của phân loại là tính điểm theo xác suất, tốt hơn là sử dụng AUC tính trung bình trên tất cả các ngưỡng có thể. Tuy nhiên, nếu mục tiêu phân loại chỉ cần phân loại giữa hai lớp có thể và không yêu cầu khả năng mỗi lớp được dự đoán bởi mô hình, thì việc dựa vào điểm F bằng cách sử dụng một ngưỡng cụ thể sẽ phù hợp hơn.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.