QUANT_PRUNE_DISTILL Telegram 133
GPTQ ранее показал сильный результат при квантовании больших языковых моделей, потому авторы статьи (его же создатели) берут его за основу. Однако, наивное применение сопряжено с определенными сложностями - для оценки гессианов нужно прогнать последовательности через каждого эксперта, которые хоть и небольшие, но их много. Авторы прогоняют последовательность через блок, и для каждого эксперта сохраняют в оперативную память активации, нужные для оценки гессиана, и распределение токенов. Чтобы повысить скорость алгоритма, квантизация нескольких экспертов проводится параллельно. 16 Экспертов, обрабатываемых параллельно дают прирост ~6x по сравнению с обработкой каждого эксперта по отдельности.

Чтобы все завелось, потребовался еще ряд мелких хаков :
1) более сильная регуляризация
2) использование округления к ближайшему целому вместо GPTQ, если матрица, оказалась плохо обусловленной
3) ограничение на число токенов для каждого эксперта, чтобы не создавать большие тензоры.

Кроме того, полезным оказалось не учитывать специальные токены при калибровке.

Для сжатия весов используется поканальная тернарная квантизация, когда каждый вес принимает только 3 значения - минимальное, 0 и максимальное. Обычно веса имеют нормальное распределение, сконцентрированное около 0, потому значительная доля весов (85-90%) становится нулевой. Потому возникает идея как-то использовать это свойство.

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

Потому авторы предложили свою схему энтропийного кодирования с фиксированной длиной символа, но кодирующее переменное число бит, которое может быть эффективно реализовано на GPU. Сжатие не Шеннон-оптимально, зато процедура кодирования позволяет эффективно использовать GPU. И далее описывается процедура и реализация CUDA kernel.



tgoop.com/quant_prune_distill/133
Create:
Last Update:

GPTQ ранее показал сильный результат при квантовании больших языковых моделей, потому авторы статьи (его же создатели) берут его за основу. Однако, наивное применение сопряжено с определенными сложностями - для оценки гессианов нужно прогнать последовательности через каждого эксперта, которые хоть и небольшие, но их много. Авторы прогоняют последовательность через блок, и для каждого эксперта сохраняют в оперативную память активации, нужные для оценки гессиана, и распределение токенов. Чтобы повысить скорость алгоритма, квантизация нескольких экспертов проводится параллельно. 16 Экспертов, обрабатываемых параллельно дают прирост ~6x по сравнению с обработкой каждого эксперта по отдельности.

Чтобы все завелось, потребовался еще ряд мелких хаков :
1) более сильная регуляризация
2) использование округления к ближайшему целому вместо GPTQ, если матрица, оказалась плохо обусловленной
3) ограничение на число токенов для каждого эксперта, чтобы не создавать большие тензоры.

Кроме того, полезным оказалось не учитывать специальные токены при калибровке.

Для сжатия весов используется поканальная тернарная квантизация, когда каждый вес принимает только 3 значения - минимальное, 0 и максимальное. Обычно веса имеют нормальное распределение, сконцентрированное около 0, потому значительная доля весов (85-90%) становится нулевой. Потому возникает идея как-то использовать это свойство.

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

Потому авторы предложили свою схему энтропийного кодирования с фиксированной длиной символа, но кодирующее переменное число бит, которое может быть эффективно реализовано на GPU. Сжатие не Шеннон-оптимально, зато процедура кодирования позволяет эффективно использовать GPU. И далее описывается процедура и реализация CUDA kernel.

BY КПД


Share with your friend now:
tgoop.com/quant_prune_distill/133

View MORE
Open in Telegram


Telegram News

Date: |

Telegram message that reads: "Bear Market Screaming Therapy Group. You are only allowed to send screaming voice notes. Everything else = BAN. Text pics, videos, stickers, gif = BAN. Anything other than screaming = BAN. You think you are smart = BAN. The Standard Channel The initiatives announced by Perekopsky include monitoring the content in groups. According to the executive, posts identified as lacking context or as containing false information will be flagged as a potential source of disinformation. The content is then forwarded to Telegram's fact-checking channels for analysis and subsequent publication of verified information. Private channels are only accessible to subscribers and don’t appear in public searches. To join a private channel, you need to receive a link from the owner (administrator). A private channel is an excellent solution for companies and teams. You can also use this type of channel to write down personal notes, reflections, etc. By the way, you can make your private channel public at any moment. Activate up to 20 bots
from us


Telegram КПД
FROM American