Когда бизнесу требуется автоматическая классификация клиентских текстов, дефолтным решением часто становится запуск тяжелого трансформера. Классические подходы вроде частотного метода TF-IDF многие инженеры и менеджеры воспринимают как музейный экспонат эпохи до BERT, который стыдно тащить в современный продакшен. Этот архитектурный выбор редко перепроверяют на собственных данных, заранее полагая, что сложная нейросеть покажет превосходство.

Однако прямое инженерное сравнение на реальном корпусе отзывов об организациях из Яндекс Карт (датасет d0rj/geo-reviews-dataset-2023 на 500 тысяч записей) показывает обратную картину. Задача состояла в определении тональности по трем классам: негатив, нейтрально и позитив. В реальных отзывах позитивных текстов оказалось 86%, а нейтральных — лишь 4%. При таком перекосе стандартная точность (accuracy) обманчива: модель, выдающая всегда один класс, покажет 86% правильных ответов, не научившись ровным счетом ничему.

Ловушка стандартных метрик

Для честного сопоставления использовалась метрика macro-F1, которая одинаково учитывает вклад каждого класса независимо от его доли в выборке. Все эксперименты проводились на стандартном 12-ядерном процессоре без подключения дорогостоящих графических ускорителей.

Дообученный русский трансформер cointegrated/rubert-tiny2 на 29 миллионов параметров без специальной ручной настройки весов выдал формальную точность 0.923, но провалил целевую метрику macro-F1 до уровня 0.574.

Базовый трансформер получил высокую точность только за счет полного игнорирования четырех процентов нейтральных отзывов, выдав нулевое качество на самом сложном классе выборки.

Отказ от ручной балансировки потерь превратил тяжелую модель в бесполезный инструмент, который оптимизировал отчетность перед менеджментом за счет редких, но критически важных случаев.

Честный счет против нейросетей

Сверточная сеть TextCNN на 3.8 миллиона параметров с обучаемыми эмбеддингами обучалась 166 секунд и показала macro-F1 на уровне 0.624. Ей банально не хватило объема выборки, чтобы переиграть алгоритмы прямого подсчета частот.

Классический бейзлайн на базе TF-IDF с логистической регрессией и встроенной балансировкой классов показал macro-F1 на уровне 0.664 при обучении за полторы секунды на униграммах, а добавление биграмм подняло показатель до 0.671 за 2.8 секунды.

Три секунды вычислений на обычном офисном CPU обеспечили результат 0.671 по macro-F1, полностью перечеркнув необходимость восьмиминутного дообучения нейросети на 29 миллионов параметров и закупки GPU-инфраструктуры.

Машинное обучениеИИ в бизнесеСнижение затратПроизводительностьНейросети