💼 Заказчик: Компания Beeline является одним из ведущих поставщиков телекоммуникационных услуг в России.
❓Описание задачи: Модель для бинарной классификации аудиофрагментов с целью определения качества их транскрибации. Модель должна определять, является ли транскрибация качественной, при условии, что псевдоразметка отличается от ручной разметки не более, чем на N пунктов коэффициента ошибок в словах. Итоговая оценка качества модели будет проводиться с помощью метрики ROC-AUC.
Было проведено масштабное тестирование комбинаций из четырех методов векторизации и 32 моделей классификации. Проведенные исследования собраны в директории research.
Наилучший результат по метрике ROC-AUC показал fine-tuning модели sbert_large_mt_nlu_ru для задачи классификации:
- Дообучались 8 последних слоев энкодера и линейный слой (классификатор).
- ROC-AUC на тестовой выборке: 0.804.
Пайплайн обучения модели находится в файле Bert fine-tuning.
Предобученная модель размещена на 🤗 HuggingFace.
Для удобства тестирования мы подготовили ноутбук Model inference.
🏁 Выводы:
- Выбор подходящего метода векторизации имеет ключевое значение.
- Для повышения качества классификации модель стоит обучать на большем количестве данных, чем были представлены в тренировочном датасете.
- Данные в тренировочном датасете однородные (предобработанные), поэтому для них не потребовалась ручная нормализация. Кроме того, модель sbert самостоятельно обрабатывает заглавные буквы и взаимозаменяемость "ё" и "е". А вот знаки препинания и формат записи чисел (цифрами или текстом) на результат токенизации влияют, поэтому при оценке качества датасетов другого формата стоит предварительно привести текст к единообразному виду.