Success Story - rus

Квантизация NLP-трансформеров

Описание проекта:

Для решения NLP-задач активно применяются языковые модели, среди которых нередко используются архитектуры семейства моделей BERT. Однако тренд на увеличение размера моделей, состоящих из миллиардов параметров, создает проблему: высокая вычислительная нагрузка, которая ограничивала их использование на простых устройствах и требовала значительных ресурсов для развертывания.

Заказчик стремился снизить затраты на оборудование, необходимое для запуска NLP-моделей, а в идеале обеспечить их запуск на пользовательских устройствах. В качестве решения хотел получить подход, который должен быть универсальным и подходить для моделей, дообученных на данных, к которым у клиента нет доступа.

Решение:

Команда MIL Team предложила применить метод квантизации для снижения размерности нейронных сетей. Была создана инфраструктура для измерения производительности моделей до и после квантизации. Заказчику было важно, чтобы решение было универсальным и давало хорошие результаты для моделей BERT, RoBERTa, TinyBERT и XLNet на следующих датасетах:

- BooksCorpus - для моделирования языка;

- RACE и SQuAD2.0 - для понимания текста;

- IMDB, Amazon-2 - для классификации текста;

- MNLI, QNLI - для оценки общего понимания языка (GLUE).

Основная задача этапа состояла в сравнении методов квантизации, таких как обучения с учётом квантизации (QAT), пост-тренировочной динамической (PTDQ) и статической (PTSQ) квантизации, чтобы определить, возможно ли достичь желаемой заказчиком производительности в рамках ограниченной доступности или полным отсутствием набора данных, которые использовались для обучения модели, а также необходимо было проанализировать, как различные слои моделей реагируют на квантизацию. Отметим, что для данных условий применим только метод пост-тренировочной квантизации (PTQ), а метод QAT использовался для сравнения производительности результатов.

Смогли достичь результатов:

1.   Поставленные цели по минимальному падению точности после квантизации были достигнуты для большинства задач, но эти методы не полностью удовлетворяют проектным требованиям. Результаты PTDQ и PTSQ показали себя эффективно для задач классификации, а для задач понимания текста было большое падение метрик, следовательно, требовалась дальнейшая оптимизация методов, что привело к необходимости разработки на следующем этапе более продвинутого подхода.

2.   Выводы анализа слоёв моделей:

- RoBERTa оказалась наиболее устойчивой к квантизации среди протестированных архитектур, сохранив высокую точность даже при квантизации до 95% весов.
- TinyBERT показал хорошие результаты на простых задачах и оказался менее чувствителен к квантизации, но его производительность на сложных задачах падала сильнее.

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

- XLNet продемонстрировал средние результаты, уступив RoBERTa, но показав более высокую устойчивость к квантизации, чем BERT.

На втором этапе перед MIL Team стояла цель найти и протестировать новые методы квантизации, которые бы позволил решить задачи клиента для указанных ранее архитектур моделей.

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

Итоги проекта:

1. Автоматизация процесса квантизации: Мы разработали для Huawei скрипт для автоматизации процесса квантизации моделей с помощью метода ZeroQ с последующей квантизацией с помощью PTSQ. Результат работы скрипта - готовая квантизированная модель, которая конвертируется в ONNX-формат.

2. Научное исследование: Команда предоставила глубокое исследование различных методов квантизации для исследуемых языковых моделей с выводами и рекомендациями.

3. Публикация научной статьи: На основе полученных результатов была написана и опубликована совместная научная статья: «On the Way to Lossless Compression of Language Transformers: Exploring Cross-Domain Properties of Quantization».

Research Compression NLP