Nên sử dụng hàm mất mát nào để có được phân loại nhị phân có độ chính xác cao hoặc thu hồi cao?


11

Tôi đang cố gắng thực hiện một trình phát hiện các đối tượng hiếm khi xảy ra (bằng hình ảnh), dự định sử dụng trình phân loại nhị phân CNN được áp dụng trong cửa sổ trượt / thay đổi kích thước. Tôi đã xây dựng các bộ kiểm tra và huấn luyện dương tính 1: 1 cân bằng (có phải là điều đúng đắn trong trường hợp như vậy btw không?), Và bộ phân loại đang hoạt động tốt trên một bộ kiểm tra về độ chính xác. Bây giờ tôi muốn kiểm soát thu hồi / độ chính xác của trình phân loại của mình, vì vậy, chẳng hạn, nó sẽ không dán nhãn sai quá nhiều cho sự xuất hiện của đa số lớp.

Giải pháp rõ ràng (đối với tôi) là sử dụng cùng một tổn thất logistic hiện được sử dụng, nhưng lỗi trọng số loại I và loại II khác nhau bằng cách nhân tổn thất trong một trong hai trường hợp trên một số hằng số, có thể điều chỉnh được. Đúng không?

PS Về ý nghĩ thứ hai, điều này tương đương với việc cân nhắc một số mẫu đào tạo hơn các mẫu khác. Chỉ cần thêm nhiều hơn một lớp sẽ đạt được điều tương tự tôi nghĩ.


bạn đã bao giờ giải quyết điều này? Tôi có một mục tiêu tương tự. Tôi muốn tối ưu hóa cho độ chính xác (loại 1) và ít quan tâm đến lỗi loại 2, vì vậy đã xem xét những gì có thể được thực hiện liên quan đến chức năng mất.
Jonathan Shore

Câu trả lời:


6

Xây dựng một cách nhân tạo một bộ huấn luyện cân bằng là điều gây tranh cãi, thực sự gây tranh cãi. Nếu bạn làm điều đó, bạn nên xác minh bằng thực nghiệm rằng nó thực sự hoạt động tốt hơn so với việc tập luyện không cân bằng. Cân bằng nhân tạo bộ thử nghiệm gần như không bao giờ là một ý tưởng tốt. Bộ kiểm tra phải đại diện cho các điểm dữ liệu mới khi chúng đi vào mà không có nhãn. Bạn mong đợi chúng không cân bằng, vì vậy bạn cần biết liệu mô hình của bạn có thể xử lý một bộ kiểm tra không cân bằng hay không. (Nếu bạn không mong đợi các bản ghi mới không cân bằng, tại sao tất cả các bản ghi hiện tại của bạn không cân bằng?)

Về số liệu hiệu suất của bạn, bạn sẽ luôn nhận được những gì bạn yêu cầu. Nếu độ chính xác không phải là thứ bạn cần nhất trong một tập hợp không cân bằng, bởi vì không chỉ các lớp mà cả chi phí phân loại sai cũng không cân bằng, vậy thì đừng sử dụng nó. Nếu bạn đã sử dụng độ chính xác làm số liệu và thực hiện tất cả các lựa chọn mô hình và điều chỉnh siêu tham số của mình bằng cách luôn lấy độ chính xác tốt nhất, bạn sẽ tối ưu hóa cho độ chính xác.

Tôi lấy lớp thiểu số làm lớp tích cực, đây là cách đặt tên thông thường. Do đó, độ chính xác và thu hồi như được thảo luận dưới đây là độ chính xác và thu hồi của nhóm thiểu số.

  • Nếu điều quan trọng duy nhất là xác định tất cả các hồ sơ lớp thiểu số, bạn có thể thu hồi. Do đó, bạn đang chấp nhận tích cực sai.
  • Tối ưu hóa chính xác chỉ là một ý tưởng rất kỳ lạ. Bạn sẽ nói với trình phân loại của bạn rằng đó không phải là vấn đề để phát hiện ra nhóm thiểu số. Cách dễ nhất để có độ chính xác cao là quá thận trọng khi tuyên bố tầng lớp thiểu số.
  • Nếu bạn cần độ chính xác và thu hồi, bạn có thể lấy F-đo. Đó là ý nghĩa hài hòa giữa độ chính xác và thu hồi và do đó xử phạt các kết quả trong đó cả hai số liệu phân kỳ.
  • Nếu bạn biết chi phí phân loại sai cụ thể theo cả hai hướng (và lợi nhuận của phân loại chính xác nếu chúng khác nhau cho mỗi lớp), bạn có thể đặt tất cả số đó vào hàm mất và tối ưu hóa nó.

3

Bạn đang thực hiện một số giả định. Tốt nhất là nghĩ về mục tiêu cuối cùng trong điều khoản chung, sau đó xây dựng một chiến lược đáp ứng mục tiêu đó. Ví dụ, bạn có thực sự cần phân loại lựa chọn bắt buộc và tín hiệu: tỷ lệ nhiễu đủ lớn để hỗ trợ điều đó (ví dụ hay: nhận dạng âm thanh và hình ảnh)? Hoặc là tín hiệu: tỷ lệ nhiễu thấp hoặc bạn quan tâm đến xu hướng ? Đối với sau này, ước tính rủi ro là dành cho bạn. Sự lựa chọn là chính và quyết định số liệu chính xác dự đoán bạn chọn. Để biết thêm suy nghĩ về tất cả những điều này, hãy xem http://www.fharrell.com/2017/01/ classification-vs-prediction.htmlhttp://www.fharrell.com/2017/03/damage-caused-by- classifying .html .

Phần lớn các vấn đề liên quan đến việc ra quyết định và các quyết định tối ưu đến từ ước tính rủi ro cùng với chức năng mất / chi phí / tiện ích.

Một trong những khía cạnh tốt nhất của phương pháp ước tính rủi ro (xác suất) là nó xử lý các vùng màu xám trong đó sẽ là một sai lầm khi phân loại hoặc quyết định mà không thu được thêm dữ liệu. Và sau đó, có một thực tế là ước tính xác suất không yêu cầu (thậm chí không cho phép) người ta "cân bằng" kết quả bằng cách thao tác giả tạo mẫu.


1

j=1Jlog{1+exp[f(xj)]}+k=1Klog{1+exp[f(xk)]}
jkf()x
j=1Jlog{1+exp[f(xj)]}+k=1Kwlog{1+exp[f(xk)]}
w>1ww=2

Nhưng đó sẽ không còn là một công cụ ước tính khả năng tối đa - một thống kê không có
Frank Harrell

1
Đồng ý, nhưng tôi không tin rằng nó có vấn đề nếu suy luận thống kê về các tham số trong hồi quy logistic không phải là mục tiêu mong muốn (đề cập của OP về việc sử dụng CNN cũng không dựa trên ML). Thật vậy, hầu hết / tất cả đầu ra suy luận từ phương pháp trọng số này tốt nhất sẽ bị bỏ qua, nhưng mô hình và kết quả rủi ro vẫn có thể được áp dụng cho một bộ xác nhận với kết quả mong muốn, ví dụ phân biệt / hiệu chuẩn tốt.
Travis Gerke

1
Không, bạn sẽ làm xáo trộn hiệu chuẩn của mô hình và sẽ có được ước tính tham số nhiễu hơn với cách tiếp cận trên. MLE tồn tại vì một số lý do rất tốt.
Frank Harrell

Hãy xem xét trường hợp tầm thường của việc rất quan tâm đến việc phân loại sai theo một cách, nhưng không phải là cách khác - tức là mất không cho một trong các hướng. Mô hình tốt nhất cho sự mất mát đó sẽ chỉ dự đoán loại quan tâm. Mặc dù nó sẽ là một mô hình khủng khiếp, mục tiêu đã đạt được. Điều quan trọng là phải hiểu mục tiêu và không đặt niềm tin mù quáng vào một khái niệm lý thuyết (MLE) mà không hiểu mục đích của nó. Như TravisGerke đã lưu ý, nếu nhấn mạnh vào dự đoán hơn là mô hình hóa, thì cách tiếp cận của ông khá hữu ích. Nó chắc chắn tốt hơn so với downsampling lớp đa số.
Statseeker
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.