Я намагаюся побудувати модель прогнозування з SVM на досить незбалансованих даних. Мій етикетки / вихід мають три класи: позитивний, нейтральний та негативний. Я б сказав, що позитивний приклад становить приблизно 10 - 20% моїх даних, нейтральний - 50 - 60%, а негативний - 30 - 40%. Я намагаюся збалансувати класи, оскільки вартість, пов’язана з невірними прогнозами серед класів, не однакова. Одним із методів було переупорядкування навчальних даних та створення настільки ж збалансованого набору даних, який був більшим за вихідний. Цікаво, що коли я це роблю, я, як правило, отримую кращі прогнози для іншого класу (наприклад, коли я збалансував дані, я збільшив кількість прикладів для позитивного класу, але за вибірковими прогнозами, негативний клас зробив краще). Кожен може пояснити взагалі, чому це відбувається? Якщо я збільшить кількість прикладів для негативного класу, чи отримаю я щось подібне для позитивного класу у вибіркових прогнозах (наприклад, кращі прогнози)?
Також дуже відкриті до інших думок щодо того, як я можу вирішити незбалансовані дані або через накладення різних витрат на помилкову класифікацію, або за допомогою вагових класів у LibSVM (не знаю, як правильно вибрати / налаштувати їх).