Khi nào không cần làm gì: mất cân bằng tự nó không phải lỗi. Nếu bạn dùng chỉ số phù hợp (PR-AUC, recall ở precision cho trước) và tự chọn ngưỡng, mô hình xác suất huấn luyện trên dữ liệu gốc thường đã đủ. Rất nhiều trường hợp chỉ cần hạ ngưỡng là giải quyết xong, không cần đụng tới phân phối dữ liệu. Tỷ lệ 1:10 hiếm khi cần can thiệp; vấn đề thật sự bắt đầu khi lớp dương chỉ còn vài trăm mẫu tuyệt đối.
Các lựa chọn khi cần can thiệp:
| Cách | Phù hợp khi | Rủi ro |
|---|---|---|
class_weight='balanced' | Muốn thử trước tiên, không đổi dữ liệu | Chỉ là nhân trọng số vào hàm mất mát |
| Undersampling lớp âm | Dữ liệu rất lớn, cần train nhanh | Vứt bỏ thông tin |
| Oversampling lớp dương | Lớp dương ít mẫu tuyệt đối | Dễ overfit vì lặp lại mẫu |
| SMOTE (sinh mẫu tổng hợp) | Feature liên tục, không gian đặc | Sinh mẫu vô nghĩa khi có biến phân loại hoặc dữ liệu nhiễu |
| Thu thập thêm dữ liệu lớp hiếm | Luôn tốt nhất nếu làm được | Tốn thời gian, chi phí |
Ba lỗi hay mắc:
1. Lấy mẫu lại trên toàn bộ dữ liệu trước khi tách/cross-validate. Bản sao của một mẫu lọt sang tập validation → điểm ảo. Phải resample bên trong từng fold, chỉ trên phần train.
2. Đánh giá trên tập test đã cân bằng. Tập test phải giữ phân phối thật của production.
3. Quên rằng lấy mẫu lại làm lệch xác suất đầu ra. Sau khi oversample, xác suất mô hình trả về không còn là xác suất thật → cần hiệu chuẩn lại hoặc điều chỉnh ngưỡng.