tgoop.com/quant_prune_distill/356
Last Update:
EoRA: Training-free Compensation for Compressed LLM with Eigenspace Low-Rank Approximation
[Статья][Написание кода предоставляется читателю в качестве несложного упражения]
Введение
Низкоранговые приближения применяются много где в Deep Learning и не только, про LoRA не слышал только ленивый. В данной статье группа миньонов кожаной куртки предлагает компенсировать ошибку методов сжатия (прунинга и квантизации) за счет вставки низкорангового разложения ошибки сжатия как адаптера паралелльно весам.
Метод
Метод прост как пробка.
1️⃣ Были у нас исходные веса W.
2️⃣ После сжатия имеем Wc.
3️⃣ SVD матрицы W - Wc
4️⃣ Берем сколько-то главных компонент и вставляем параллельно сжатым весам как LoRA адаптер.
При этом ничего не надо обучать.
Эксперименты
Метод тестируют поверх 50% / 60% unstructured sparsity, 2:4 sparsity с SparseGPT в качестве алгоритма сжатия и 3/4-битной квантизацией GPTQ. В большинстве экспериментов берут ранг добавки равным 128. Проверяют на Llama-2 (7B и 13B), Llama-3 (8B).
Метод дает ожидаемо небольшой прирост по качеству на стандартных бенчах, но не слишком выдающийся.
Чем больше ранг добавки - тем, ожидаемо, лучше качество. В случае необходимости добавки можно дотюнить, а-ля чиста LoRA файнтьюн, и это еще немного накинет.
Вывод
Простой и бюджетный способ накинуть немного качества за счет небольшого количества параметров и дополнительных вычислений.
Так как базовые методы сжатия data-aware (SparseGPT, GPTQ), то вместо SVD можно было бы использовать Reduced Rank Regression, и это бы работало, скорее всего, чуть лучше.
BY КПД
Share with your friend now:
tgoop.com/quant_prune_distill/356