Tôi đang cố gắng xây dựng một mô hình dự đoán với các SVM trên dữ liệu khá mất cân bằng. Nhãn / đầu ra của tôi có ba lớp, tích cực, trung tính và tiêu cực. Tôi muốn nói rằng ví dụ tích cực tạo ra khoảng 10 - 20% dữ liệu của tôi, trung tính khoảng 50 - 60% và âm khoảng 30 - 40%. Tôi đang cố gắng cân bằng các lớp vì chi phí liên quan đến dự đoán không chính xác giữa các lớp không giống nhau. Một phương pháp là lấy lại dữ liệu huấn luyện và tạo ra một bộ dữ liệu cân bằng như nhau, lớn hơn so với ban đầu. Thật thú vị, khi tôi làm điều đó, tôi có xu hướng nhận được các dự đoán tốt hơn cho lớp khác (ví dụ: khi tôi cân bằng dữ liệu, tôi đã tăng số lượng ví dụ cho lớp tích cực, nhưng trong các dự đoán mẫu, lớp phủ định đã làm tốt hơn). Bất cứ ai cũng có thể giải thích chung tại sao điều này xảy ra? Nếu tôi tăng số lượng ví dụ cho lớp phủ định, tôi sẽ nhận được một cái gì đó tương tự cho lớp tích cực trong các dự đoán mẫu (ví dụ: dự đoán tốt hơn)?
Cũng rất cởi mở với những suy nghĩ khác về cách tôi có thể giải quyết dữ liệu không cân bằng thông qua việc áp đặt các chi phí khác nhau khi phân loại sai hoặc sử dụng trọng số lớp trong LibSVM (không chắc chắn làm thế nào để chọn / điều chỉnh các dữ liệu đó đúng cách).