Telegram Group & Telegram Channel
Scaling Laws for Precision
[Статья] [Кода нет, как и ресурсов у вас, чтобы воспроизвести]

Введение

Известно, что с увеличением размера модели и количества данных качество моделей (в некотором смысле - обычно по val лоссу) растет. Причем не абы как, а по простым степенным законом (а-ля Шиншилла). Также известно, что инферить большие модели тяжело и дорого, а методы квантизации позволяют существенно сжимать модели в пределах умеренной просадки качества. Есть наблюдение, что более современные LLM (Llama-3+, Gemma-2, Qwen2+) сжимаются заметно тяжелее 🥵, чем предшественники;

Отсюда вопрос, при заданном бюджете на обучение, какое оптимальное отношение числа токенов к размеру модели и битность квантизации?

И в рассматриваемой работе, авторы проводят детальное и масштабное исследование, делая целый ряд нетривиальных выводов.

Метод

Ниже:
D - количество данных
N - количество параметров модели
P - precision на обучении

Авторы обучают тучу моделей (465 штук а-ля 🦙) разного размера, битности (от 3 до 16) и с разным бюджетом обучения (вплоть до отношения числа токенов к параметрам 10^5). Тем самым авторы учитывают случай характерный для современных моделей, где перекос в сторону данных сильно выходит на Chinchilla-optimal закон (D/N = 2000 у Llama-3 против D/N=20 по Шиншилле).

Рассматривают 3 сценария:
1️⃣ Post-training Quantization. Учим во bf16 и квантизуем после обучения. Берут GPTQ, как ходовой и рабочий метод.
2️⃣ Quantization-aware training. Квантизуем по ходу обучения. Но только веса.
3️⃣ Low-precision training. Квантизуем во время обучения веса, активации и KV-кэши.

Предложенный scaling law для post-training квантизации имеет вид (P - precision, она же битность):
L(N, D, P) = AN^{-\alpha} + BD^{-\beta} + E + \delta_{PTQ} (N, D, P)
Где \delta_{PTQ} - прирост лосса, вызванный квантизацией.

Для QAT и Low-precision training:
L(N, D, P) = AN^{-\alpha} (1 - e^{P_{w} / \gamma_w}) (1 - e^{P_{a} / \gamma_a}) (1 - e^{P_{kv} / \gamma_kv}) + BD^{-\beta} + E
То есть, некоторые модификации исходного scaling law.
👍53



group-telegram.com/quant_prune_distill/360
Create:
Last Update:

Scaling Laws for Precision
[Статья] [Кода нет, как и ресурсов у вас, чтобы воспроизвести]

Введение

Известно, что с увеличением размера модели и количества данных качество моделей (в некотором смысле - обычно по val лоссу) растет. Причем не абы как, а по простым степенным законом (а-ля Шиншилла). Также известно, что инферить большие модели тяжело и дорого, а методы квантизации позволяют существенно сжимать модели в пределах умеренной просадки качества. Есть наблюдение, что более современные LLM (Llama-3+, Gemma-2, Qwen2+) сжимаются заметно тяжелее 🥵, чем предшественники;

Отсюда вопрос, при заданном бюджете на обучение, какое оптимальное отношение числа токенов к размеру модели и битность квантизации?

И в рассматриваемой работе, авторы проводят детальное и масштабное исследование, делая целый ряд нетривиальных выводов.

Метод

Ниже:
D - количество данных
N - количество параметров модели
P - precision на обучении

Авторы обучают тучу моделей (465 штук а-ля 🦙) разного размера, битности (от 3 до 16) и с разным бюджетом обучения (вплоть до отношения числа токенов к параметрам 10^5). Тем самым авторы учитывают случай характерный для современных моделей, где перекос в сторону данных сильно выходит на Chinchilla-optimal закон (D/N = 2000 у Llama-3 против D/N=20 по Шиншилле).

Рассматривают 3 сценария:
1️⃣ Post-training Quantization. Учим во bf16 и квантизуем после обучения. Берут GPTQ, как ходовой и рабочий метод.
2️⃣ Quantization-aware training. Квантизуем по ходу обучения. Но только веса.
3️⃣ Low-precision training. Квантизуем во время обучения веса, активации и KV-кэши.

Предложенный scaling law для post-training квантизации имеет вид (P - precision, она же битность):
L(N, D, P) = AN^{-\alpha} + BD^{-\beta} + E + \delta_{PTQ} (N, D, P)
Где \delta_{PTQ} - прирост лосса, вызванный квантизацией.

Для QAT и Low-precision training:
L(N, D, P) = AN^{-\alpha} (1 - e^{P_{w} / \gamma_w}) (1 - e^{P_{a} / \gamma_a}) (1 - e^{P_{kv} / \gamma_kv}) + BD^{-\beta} + E
То есть, некоторые модификации исходного scaling law.

BY КПД


Warning: Undefined variable $i in /var/www/group-telegram/post.php on line 260

Share with your friend now:
group-telegram.com/quant_prune_distill/360

View MORE
Open in Telegram


Telegram | DID YOU KNOW?

Date: |

Telegram, which does little policing of its content, has also became a hub for Russian propaganda and misinformation. Many pro-Kremlin channels have become popular, alongside accounts of journalists and other independent observers. To that end, when files are actively downloading, a new icon now appears in the Search bar that users can tap to view and manage downloads, pause and resume all downloads or just individual items, and select one to increase its priority or view it in a chat. "Someone posing as a Ukrainian citizen just joins the chat and starts spreading misinformation, or gathers data, like the location of shelters," Tsekhanovska said, noting how false messages have urged Ukrainians to turn off their phones at a specific time of night, citing cybersafety. Oh no. There’s a certain degree of myth-making around what exactly went on, so take everything that follows lightly. Telegram was originally launched as a side project by the Durov brothers, with Nikolai handling the coding and Pavel as CEO, while both were at VK. At its heart, Telegram is little more than a messaging app like WhatsApp or Signal. But it also offers open channels that enable a single user, or a group of users, to communicate with large numbers in a method similar to a Twitter account. This has proven to be both a blessing and a curse for Telegram and its users, since these channels can be used for both good and ill. Right now, as Wired reports, the app is a key way for Ukrainians to receive updates from the government during the invasion.
from us


Telegram КПД
FROM American