Nguyên nhân sâu xa của vấn đề mất cân bằng lớp học là gì?


30

Gần đây tôi đã suy nghĩ rất nhiều về "vấn đề mất cân bằng lớp học" trong học máy / thống kê, và ngày càng đi sâu vào cảm giác mà tôi không hiểu chuyện gì đang xảy ra.

Trước tiên hãy để tôi xác định (hoặc cố gắng) xác định các điều khoản của mình:

Các vấn đề mất cân bằng lớp trong máy học / thống kê là quan sát rằng một số phân loại nhị phân (*) thuật toán không hoạt động tốt khi tỷ lệ 0 lớp học để 1 lớp là rất sai lệch.

Vì vậy, ở trên, ví dụ, nếu có một trăm lớp cho mỗi lớp, tôi sẽ nói sự mất cân bằng của lớp là đến , hoặc .0111001%

Hầu hết các tuyên bố về vấn đề tôi đã thấy thiếu những gì tôi nghĩ là đủ điều kiện (những gì mô hình đấu tranh, mất cân bằng là một vấn đề), và đây là một trong những sự nhầm lẫn của tôi.

Một cuộc khảo sát các văn bản tiêu chuẩn trong máy học / thống kê học ít xuất hiện:

  • Các yếu tố của Leaning thống kêgiới thiệu về học thống kê không chứa "sự mất cân bằng lớp học" trong chỉ mục.
  • Học máy cho phân tích dữ liệu dự đoán cũng không chứa "sự mất cân bằng lớp" trong chỉ mục.

  • Học máy của Murphy : Một viễn cảnh xác suất chứa "sự mất cân bằng lớp * trong chỉ mục. Tham chiếu là một phần trên SVM, nơi tôi tìm thấy nhận xét trêu ngươi sau:

    Điều đáng ghi nhớ là tất cả những khó khăn này, và vô số các heuristic đã được đề xuất để khắc phục chúng, về cơ bản phát sinh vì SVM không mô hình hóa sự không chắc chắn bằng cách sử dụng xác suất, vì vậy điểm số đầu ra của chúng không thể so sánh giữa các lớp.

Nhận xét này không phù hợp với trực giác và kinh nghiệm của tôi: ở công việc trước đây, chúng tôi sẽ thường xuyên điều chỉnh hồi quy logistic và mô hình cây tăng cường độ dốc (để giảm thiểu khả năng ghi nhật ký nhị thức) cho dữ liệu không cân bằng (theo thứ tự mất cân bằng lớp ), với không có vấn đề rõ ràng trong hiệu suất.1%

Tôi đã đọc (ở đâu đó) rằng các mô hình dựa trên cây phân loại (bản thân cây và rừng ngẫu nhiên) cũng gặp phải vấn đề mất cân bằng lớp. Điều này làm vẩn đục nước một chút, theo một nghĩa nào đó, cây sẽ trả về xác suất: bản ghi biểu quyết cho lớp mục tiêu trong mỗi nút thiết bị đầu cuối của cây.

Vì vậy, để kết thúc, những gì tôi thực sự theo đuổi là một sự hiểu biết khái niệm về các lực dẫn đến vấn đề mất cân bằng giai cấp (nếu nó tồn tại).

  • Đó có phải là một cái gì đó chúng ta làm cho chính mình với các thuật toán được chọn xấu và ngưỡng phân loại mặc định lười biếng?
  • Liệu nó có biến mất nếu chúng ta luôn phù hợp với các mô hình xác suất tối ưu hóa các tiêu chí chấm điểm thích hợp? Nói cách khác, nguyên nhân đơn giản là sự lựa chọn kém của chức năng mất, tức là đánh giá khả năng dự đoán của một mô hình dựa trên các quy tắc phân loại cứng và độ chính xác tổng thể?
  • Nếu vậy, các mô hình không tối ưu hóa các quy tắc chấm điểm thích hợp thì vô dụng (hoặc ít nhất là ít hữu ích hơn)?

(*) Theo phân loại, tôi có nghĩa là bất kỳ mô hình thống kê nào phù hợp với dữ liệu phản hồi nhị phân. Tôi không cho rằng mục tiêu của tôi là một sự phân công khó khăn cho lớp này hay lớp kia, mặc dù nó có thể.


1
Một vấn đề rõ ràng có thể phát sinh khi người học phạt mỗi lớp mất như nhau. Về lý thuyết, trả lại mọi thứ cùng lớp có thể giảm thiểu tổn thất toàn bộ.
Firebug

1
Tôi quên thêm poor choice of loss functionvào danh sách của tôi. Vì vậy, bạn có nghĩ rằng điều này đúng ngay cả đối với các quy tắc tính điểm thích hợp là các hàm mất?
Matthew Drury

Tôi nghĩ vậy. Tôi đoán chúng ta có thể hình thành một vấn đề trong đó giảm thiểu việc mất lớp lớn hơn chỉ giảm thiểu việc mất toàn bộ vấn đề, trong khi nói chung, nhóm thiểu số là mối quan tâm lớn hơn.
Firebug

3
Tôi đồng ý với tình cảm của câu hỏi. Tôi đã có một giả thuyết hoạt động (mặc dù rất vui khi từ chối nó) rằng không có vấn đề mất cân bằng lớp nào, chỉ là chúng tôi đào tạo với các hàm mất không thể hiện những gì chúng tôi sẽ sử dụng để đo lường thành công trên dữ liệu thử nghiệm. Và thật khó để gọi đây là một sai lầm, vì nó gần như là thông lệ tiêu chuẩn: ví dụ: không phải là tiêu chuẩn để tối ưu hóa trực tiếp điểm AUC hoặc F1, nhưng đó là những thước đo thành công phổ biến cho các vấn đề với sự mất cân bằng trong lớp. Vì vậy, có lẽ đó là vấn đề mất cân bằng lớp học?
DavidR

9
Nguyên nhân của vấn đề mất cân bằng lớp là quy ước sử dụng độ chính xác làm hàm mất. mất cân bằng lớp học là một đặc điểm của vấn đề (ví dụ chẩn đoán bệnh hiếm gặp), có thể được xử lý bằng cách sử dụng một số chiến lược. Sử dụng trọng số lớp tỷ lệ nghịch với kích thước lớp khi tính toán hàm mất là một trong số đó. Ngoài ra, AUC là một hàm mất mát là một ý tưởng tốt vì nó đặc biệt phân biệt giữa dương tính thật và dương tính giả. Do đó, vấn đề cốt lõi của vấn đề mất cân bằng lớp là chức năng mất. Câu hỏi tuyệt vời, mà tôi không dám trả lời.
Nikolas Rieble

Câu trả lời:


4

Một mục từ Bách khoa toàn thư về học máy ( https://cling.csd.uwo.ca/ con / cost_sensitive.pdf) giải thích một cách hữu ích rằng cái được gọi là "vấn đề mất cân bằng lớp học" được hiểu rõ hơn là ba vấn đề riêng biệt:

 (1) assuming that an accuracy metric is appropriate when it is not

 (2) assuming that the test distribution matches the training 
     distribution when it does not

 (3) assuming that you have enough minority class data when you do not

Các tác giả giải thích:

Các bộ dữ liệu mất cân bằng lớp xảy ra trong nhiều ứng dụng trong thế giới thực, nơi phân phối dữ liệu của lớp rất mất cân bằng. Một lần nữa, không mất tính tổng quát, chúng tôi cho rằng nhóm thiểu số hoặc hiếm là lớp tích cực và lớp đa số là lớp tiêu cực. Thường thì lớp thiểu số rất nhỏ, chẳng hạn như 1% số liệu. Nếu chúng ta áp dụng hầu hết các trình phân loại truyền thống (không nhạy cảm với chi phí) trên tập dữ liệu, chúng có thể sẽ dự đoán mọi thứ là âm (lớp đa số). Điều này thường được coi là một vấn đề trong việc học hỏi từ các bộ dữ liệu mất cân bằng cao.

Tuy nhiên, như được chỉ ra bởi (Provost, 2000), hai giả định cơ bản thường được đưa ra trong các phân loại không nhạy cảm chi phí truyền thống. Đầu tiên là mục tiêu của các phân loại là tối đa hóa độ chính xác (hoặc giảm thiểu tỷ lệ lỗi); thứ hai là phân phối lớp của các tập dữ liệu huấn luyện và kiểm tra là như nhau. Theo hai giả định này, dự đoán mọi thứ là tiêu cực cho một bộ dữ liệu mất cân bằng cao thường là điều nên làm. (Drumond và Holte, 2005) cho thấy thường rất khó để vượt qua trình phân loại đơn giản này trong tình huống này.

Do đó, vấn đề lớp mất cân bằng chỉ trở nên có ý nghĩa nếu một hoặc cả hai giả định trên không đúng; nghĩa là, nếu chi phí của các loại lỗi khác nhau (dương tính giả và âm tính giả trong phân loại nhị phân) không giống nhau hoặc nếu phân phối lớp trong dữ liệu thử nghiệm khác với dữ liệu huấn luyện. Trường hợp đầu tiên có thể được xử lý bằng cách sử dụng hiệu quả các phương pháp trong học tập siêu nhạy cảm với chi phí.

Trong trường hợp khi chi phí phân loại sai không bằng nhau, thường sẽ tốn kém hơn khi phân loại sai một ví dụ thiểu số (tích cực) vào lớp đa số (tiêu cực), hơn là một ví dụ đa số vào lớp thiểu số (nếu không thì việc dự đoán mọi thứ sẽ hợp lý hơn tiêu cực). Đó là, FN> FP. Do đó, với các giá trị của FN và FP, một loạt các phương pháp học siêu nhạy cảm với chi phí có thể và đã được sử dụng để giải quyết vấn đề mất cân bằng lớp học (Ling và Li, 1998; Japkowicz và Stephen, 2002). Nếu các giá trị của FN và FP không được xác định rõ ràng, FN và FP có thể được chỉ định tỷ lệ với p (-): p (+) (Japkowicz và Stephen, 2002).

Trong trường hợp phân phối lớp của các tập dữ liệu kiểm tra và kiểm tra là khác nhau (ví dụ: nếu dữ liệu đào tạo bị mất cân bằng cao nhưng dữ liệu kiểm tra cân bằng hơn), một cách tiếp cận rõ ràng là lấy mẫu dữ liệu đào tạo sao cho phân phối lớp của nó giống như dữ liệu thử nghiệm (bằng cách ghi đè lên lớp thiểu số và / hoặc gạch dưới lớp đa số) (Provost, 2000).

Lưu ý rằng đôi khi số lượng ví dụ của lớp thiểu số quá ít để các trình phân loại học đầy đủ. Đây là vấn đề của dữ liệu đào tạo không đủ (nhỏ), khác với dữ liệu của các bộ dữ liệu không cân bằng.

Do đó, như Murphy ngụ ý, không có vấn đề gì về việc sử dụng các lớp không cân bằng, miễn là bạn tránh được ba sai lầm này. Các mô hình mang lại xác suất sau sẽ giúp tránh lỗi (1) dễ dàng hơn so với các mô hình phân biệt đối xử như SVM vì chúng cho phép bạn tách biệt suy luận khỏi việc ra quyết định. (Xem phần 1.5.4 Suy luận và Quyết định của Giám mục để thảo luận thêm về điểm cuối cùng đó.)

Mong rằng sẽ giúp.


1
Tôi sẽ đăng một cái gì đó tương tự. một nhận xét nhỏ - tôi nghĩ thật điên rồ khi nhấn mạnh lớp lớn hơn. Điều này sẽ làm mất dữ liệu của bạn và chắc chắn sẽ không mang lại kết quả tốt hơn. Tôi thích khái niệm phân tách suy luận và phân loại. phần suy luận không bị ảnh hưởng bởi sự mất cân bằng, nhưng việc ra quyết định (phân loại) có thể bị ảnh hưởng rất nhiều.
xác suất

@probabilityislogic (và Bill Vander Lugt): Có một vấn đề khác có thể không được thảo luận trong văn bản đó: liệu Ansatz có phân biệt đối xử có đầy đủ hay không. Một cách không phù hợp cho một mô hình phân biệt đối xử trong đó một lớp sẽ phù hợp hơn cũng có thể dẫn đến "các vấn đề mất cân bằng lớp".
cbeleites hỗ trợ Monica

8

Bất cứ điều gì liên quan đến tối ưu hóa để giảm thiểu hàm mất mát, nếu đủ lồi, sẽ đưa ra một giải pháp tối thiểu toàn cầu của hàm mất đó. Tôi nói 'đủ lồi' vì các mạng sâu không nằm trên toàn bộ lồi, nhưng đưa ra mức tối thiểu hợp lý trong thực tế, với các lựa chọn cẩn thận về tỷ lệ học tập, v.v.

Do đó, hành vi của các mô hình như vậy được xác định bởi bất cứ điều gì chúng ta đặt trong hàm mất.

F

yf= =f(x)

FGbFFbG

yg= ={Bnếu f(x)>bMộtnếu không thì

bG

FGG*

Bây giờ, giả sử chúng ta có một hàm mất đó là:

L= =1NΣn= =1Ntôiytôig(xtôi)

tôic1c0ytôitôig(xtôi)tôi

99*0,9= =89,199*0,1= =9,91*0,9= =0,91*0,1= =0,1

L= =(9,9+0,1)/100= =0,1

G1/100

L= =0,01

Thấp hơn mười lần so với tổn thất khi thiết lập ngưỡng như để gán mức thu hồi và độ chính xác bằng nhau cho mỗi lớp.

GG*

G*

Ngoài ra, chúng tôi có thể sửa đổi tập dữ liệu bằng cách nhân bản mỗi ví dụ B 99 lần, điều này cũng sẽ khiến hàm mất không còn tối thiểu ở một vị trí khác với ngưỡng lý tưởng trước đó của chúng tôi.


4
Bạn có thể vui lòng cố gắng làm cho câu trả lời của bạn cụ thể hơn một chút cho các câu hỏi đang được hỏi không? Trong khi rõ ràng chu đáo nó đọc chủ yếu là bình luận chứ không phải là một câu trả lời. Ví dụ, chỉ với mục đích bình luận, người ta có thể lập luận rằng việc sử dụng quy tắc chấm điểm không đúng như hàm mất được xác định là sai về cơ bản và do đó phân tích tiếp theo là không hợp lệ.
usεr11852 nói Phục hồi Monic

G*

2
FPTPk

FFGFFG

3
Điều này giả định ngầm định (1) rằng KPI mà chúng tôi cố gắng tối đa hóa là độ chính xác và (2) độ chính xác đó là KPI thích hợp để đánh giá mô hình phân loại. Không phải vậy.
S. Kolassa - Hồi phục lại

0

Lưu ý rằng các trình phân loại một lớp không có vấn đề mất cân bằng khi chúng xem xét từng lớp một cách độc lập với tất cả các lớp khác và chúng có thể đối phó với "không phải lớp" bằng cách không mô hình hóa chúng. (Tất nhiên họ có thể có vấn đề với kích thước mẫu quá nhỏ).

Nhiều vấn đề sẽ được mô hình hóa phù hợp hơn bởi các phân loại một lớp dẫn đến các mô hình không xác định khi sử dụng các phương pháp phân biệt đối xử, trong đó "các vấn đề mất cân bằng lớp" là một triệu chứng.

Ví dụ, xem xét một số sản phẩm có thể tốt để bán hay không. Một tình huống như vậy thường được đặc trưng bởi

class         | "good"                        | "not good"
--------------+-------------------------------+------------------------------------------
sample size   | large                         | small
              |                               |
feature space | single, well-delimited region | many possibilities of *something* wrong 
              |                               | (possibly well-defined sub-groups of
              |                               |    particular fault reasons/mechanisms) 
              |                               | => not a well defined region, 
              |                               | spread over large parts of feature space
              |                               |
future cases  | can be expected to end up     | may show up *anywhere* 
              | inside modeled region         | (except in good region)

Do đó, lớp "tốt" được xác định rõ trong khi lớp "không tốt" được định nghĩa sai. Nếu một tình huống như vậy được mô hình hóa bởi một bộ phân loại phân biệt, chúng ta có "vấn đề mất cân bằng" hai lần: không chỉ có cỡ mẫu nhỏ "không tốt", nó còn có mật độ mẫu thấp hơn (ít mẫu hơn trải ra trên một phần lớn hơn của không gian tính năng).

Loại "vấn đề mất cân bằng lớp" này sẽ biến mất khi tác vụ được mô hình hóa thành nhận dạng một lớp của lớp "tốt" được xác định rõ.

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.