tgoop.com/quant_prune_distill/348
Last Update:
Self-calibration for Language Model Quantization and Pruning
[Статья] [Кода нет]
Многие современные методы сжатия моделей используют некоторую выборку калибровочных данных для приближения эмпирического распределения данных. Чем ближе эта выборка к целевому набору задач - тем интуитивно лучше качество, но хороших предписаний по отбору последовательностей до сих пор не существует.
Ранее эти же авторы перебрали несколько вариантов (пост на КПД), и обнаружили, что некоторое, хоть и не столько значительное, различие в качестве есть в зависимости от источника данных.
В этой же статье авторы предлагают сжимаемой модели самой сгенерировать 🪄 данные для калибровки.
Метод
Калибровочные последовательности генерируют начиная с <bos>
токена.
Дабы повысить качество данных предлагается динамически менять температуру - сначала больше, чтобы было разнообразие, а затем снижать по мере увеличения количества сгенерированных токенов.
Эксперименты
Рассматривают несколько небольших LLM:
⭐️ Gemma 2B
⭐️ Phi-2
⭐️ OPT 6.7B 👨🦳
⭐️ Mistral 7B
⭐️ Llama-3.1-8B
Которые сжимают при помощи AWQ, GPTQ (4-битная квантизация) и SparseGPT, Wanda (2:4 прунинг).
В качестве бейзлайнов берут Wikitext-2, C4, рандомные токены, Сosmopedia.
Качество замеряют на стандартных бенчах из lm-eval-harness.
⚡️ Синтетические данные, сгенерированные моделью, почти всегда лучше выборок из датасетов. Различие заметнее на прунинге, где просадки больше.
⚡️ Сгенерированный текст обыкновенно довольно связный, грамматически корректный, по статистикам довольно близок к реальному, но менее разнообразный.
⚡️ Снижение температуры 🌡️ генерации от 2 до 1 по ходу генерации дает самые лучшие результаты, хоть и без значительного отрыва от фиксированной температуры - 1.
Вывод
Идея прикольная, и для используемого количества данных (128 последовательной длины 2048) достаточно дешева в проверке. Эффективность метода во многом зависит от качества базовой модели, что, впрочем, для современных LLM, интересных сообществу верно. Интересно 🤔, справедливы ли полученные выводы для более сложных задач?
BY КПД
Share with your friend now:
tgoop.com/quant_prune_distill/348