Многие из них понимают, насколько хороша «точность» как показатель производительности, и это зависит от вашей проблемы. Если неправильно классифицировать «A» как «B» так же плохо/хорошо, как ошибочно классифицировать «B» как «A», тогда нет оснований делать что-то другое, кроме как просто отметить все как «A», так как вы знаете, что он надежно получит вы на 98% точность (пока это несбалансированное распределение отражает истинное распределение).
Без знания вашей проблемы (и если точность - это мера, которую вы должны использовать), лучшим ответом, который я мог бы дать, является «это зависит от набора данных». Возможно, вы можете получить 99% -ную точность со стандартными наивными отсеками, хотя это может быть маловероятным. Для Naive Bayes, в частности, вы можете сделать это, чтобы отключить использование пригородов (предварительная по существу пропорция каждого класса). Это приводит к тому, что притворяется, что каждый класс в равной степени вероятен, хотя параметры модели будут изучены из неравных объемов данных.
Ваше предлагаемое решение является обычной практикой, оно иногда работает хорошо. Другая практика заключается в создании поддельных данных для меньшего класса (как будет зависеть от ваших данных, для текстовых документов я не знаю особого способа). Другая практика заключается в увеличении веса точек данных в недопредставленных классах.
Вы можете найти «несбалансированную классификацию» и найти намного больше информации об этих типах проблем (они являются одними из самых сложных).
Если точность на самом деле не является хорошей мерой для вашей проблемы, вы можете найти дополнительную информацию о «дорогостоящей классификации», которая должна быть полезной.