есть ли способ преодолеть эту проблему?
Да, есть. Но сначала нужно понять, почему это происходит?
В основном ваш набор данных не сбалансирован.
Несбалансированный набор данных означает, что экземпляры одного из двух классов выше, чем другого, иными словами, число наблюдений не одинаково для всех классов в наборе классификационных данных.
В этом сценарии ваша модель смещается в сторону класса с большинством выборок, поскольку у вас есть больше данных для обучения для этого класса.
* Решения 1016 *
- Под выборкой:
Случайное удаление выборок из класса большинства для создания баланса набора данных.
- Превышение выборки:
Добавление большего количества образцов классов меньшинств для создания баланса набора данных.
- Изменение показателей производительности
Используйте
F1-score
, 'вспомните or
точность` для измерения производительности вашей модели.
Есть еще несколько решений, если вы хотите узнать больше, обратитесь к этому blog
Есть другой алгоритм, с которым я столкнулся, например, классификатор SVM или логистическая регрессия (модель максимальной энтропии), однако я не уверен
который будет более подходящим для моего использования
Вы никогда не узнаете, если не попробуете, я бы посоветовал вам попробовать 3-4 различных алгоритма для ваших данных.