Задать вопрос
@Guywithinterest

Как решить задачу классификации в дисбалансном датасете через поиск аномалии?

Проблема такая: классы, которые надо предсказывать, в реальной жизни (тестовом сете) имеют дикий дисбаланс: 99% против 1%.

Тренировочный сет имеет 350к записей класса-меньшинства и 13 миллионов записей класса-большинства.

Идеально нужно получить модель, которая может предсказать меньшинство с precision >=90% и recall'ом более 50%. Как такого достичь, и как задачу вообще решить?

Сколько данных большинства использовать? Применять ли SMOTE к меньшинству (я отказываюсь от этого, т.к. данные в меньшинстве обозначают две противоположные друг другу крайности: условно, класс большинства - это 0, а данные из класса меньшинства - это -1 и 1)? Какой объем данных из большинства брать (больше, чем с тремя миллионами память отказывается работать)? Какие алгоритмы брать (пробовал разные ensemble алгоритмы, SVM и т.д., но результаты у всего одинаковые)?

Как бы вы решали эту задачу? Есть ли какие-то необычные, но мощные техники в достижении таких точности и отзыва?
  • Вопрос задан
  • 213 просмотров
Подписаться 3 Простой 1 комментарий
Пригласить эксперта
Ответы на вопрос 2
@dmshar
Вообще-то задача распространенная, можно сказать абсолютно традиционная. Ничего сверхестественного:
https://machinelearningmastery.com/imbalanced-clas...
https://towardsdatascience.com/imbalanced-data-in-...
https://machinelearningmastery.com/tour-of-evaluat...
https://newtechaudit.ru/algoritm-balansirovki-klas...
https://www.analyticsvidhya.com/blog/2023/01/pract...
https://alexanderdyakonov.wordpress.com/2021/05/27...
https://towardsdatascience.com/how-to-deal-with-im...
forum.disser.ru/index.php?act=attach&type=post&id=2340
https://dataaspirant.com/handle-imbalanced-data-ma...
Тут есть все - и теория, и алгоритмы и реализации (как правило - на Python). Далее - по ссылкам. И совет - хотите изучать Мachine Learning - начните с освоения методов поиска информации. Хотя-бы в Гуугле. Все лежит на поверхности!
Ответ написан
@GrKon
Я бы для начала сбалансирован набор до 50/50%. Если на таком балансе достигаются приемлемые результаты но на исходном балансе модель не даёт приемлемых результатов - дообучать модель постепенно меняя баланс к необходимому.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы