3.41K subscribers
256 photos
8 files
469 links
Квантование & Прунинг & Дистилляция

Блог про сжатие сетей и не только.
От древнейших времен по настоящее время.
Download Telegram
Годный блогпостик про использование FP4 квантизации в проде от провайдера Spheron.

В частности, оценивается стоимость инференса при аренде конкретной GPU с учетом максимально достижимого throughput при использовании данного типа данных, а также вопросы качества и доступности в инференсных фреймворках.
🔥7
Quantized Reasoning Models Think They Need to Think Longer, but They Do Not

📄 Статья
📝 Блогпост

Известно, что квантизованные модели просаживаются в качестве несколько сильнее, чем модели на остальных классах задач.

Но из-за чего именно это происходит?

Команда из Meta обнаружила, что квантизованные модели подвержены overthinking: они начинают зацикливаться в рассуждениях и, даже получая в промежуточных рассуждениях верный ответ, не выдают его по итогу.

Авторы исследуют данное явление и предлагают простую стратегию, позволяющую одновременно укоротить ответы и улучшить качество.
1🔥1
🧪 Метод и эксперименты

Авторы рассматривают следующие варианты квантизации:

* 🔹 weight-only AWQ в 3 и 4 бита;
* 🔹 weight-only GPTQ в 3 и 4 бита;
* 🔹 weight + activation + KV-cache-квантизация в 4 и 8 бит при помощи FlatQuant.

Качество оценивают на задачах по математике, общим научным вопросам (GPQA-Diamond) и кодингу (LiveCodeBench). В качестве моделей рассматривают дистиллы дипсика и QwQ (почему не Квен / Квен-3.5?).

Менее агрессивные квантизации не так сильно меняют выход, но 3-битная квантизация весов и 4-битная квантизация весов + активаций заметно просаживают качество и одновременно увеличивают длину ризонинга. Причём длина ризонинга и качество имеют негативную корреляцию: чем длиннее ризонинг, тем хуже качество.

Анализируя ответы, авторы замечают, что сильно повышается доля токенов — overthinking markers — вида “Wait”, “But”, “Alternatively” и т. п. Кроме того, они обычно соответствуют позициям, где KL-дивергенция между выходами исходной и квантизованной моделей велика.

Для того чтобы побороть явление overthinking, предлагают занижать логиты, отвечающие за 50 вручную отобранных overthinking-токенов. В качестве бейзлайнов рассматривают случайные токены и токены с низкой / высокой KL-дивергенцией между сжатой и несжатой моделями.

📈 Занижение логитов отобранных токенов консистентно улучшает качество на 5–15%, при этом длина ризонинга сокращается на 10–20%.

В основном прирост качества достигается как раз за счёт решения проблемы overthinking — доля таких ошибок снижается в два и более раза.

Из альтернативных стратегий пенализация high-KL-токенов тоже работает неплохо, но хуже, чем пенализация вручную отобранных. Пенализация случайных токенов ничего не даёт, а low-KL-токенов только просаживает качество и удлиняет ризонинг.

💡 Гипотеза авторов о природе явления состоит в том, что токены с высокой энтропией имеют сильно размазанное распределение вероятностей, поэтому даже малый шум может привести к выбору другого токена — чаще всего как раз одного из overthinking-токенов.

📝 Выводы

Интересное наблюдение и простое решение для повышения качества работы, которое легко внедряется.

Было бы хорошо проверить справедливость полученных в работе выводов на квантизации больших и не очень МоЕшек в агентских задачах.
8😁7🔥1
Extreme Low-Bit Inference in Reasoning Models: Failure Modes and Targeted Recovery

📄 Статья
💻 Код

Вдогонку про влияние квантизации на ризонинг.

Ребята из Brain Lab выпустили интересное исследование, показывающее, как ломается ризонинг у квантизованных моделей, а также пару стратегий, помогающих предотвратить зацикливание генерации.
14
🧪 Метод и эксперименты

В данной работе фокусируются на 2-битном weight-only-сжатии ризонящих моделей. В аппендиксе есть эксперименты с FP4, со сжатием активаций и KV-кэшей. Квантизуют модели Qwen3-8B / Qwen3-32B через GPTQ.

Оказывается, что квантизация сильно меняет поведение трейсов ризонинга:

🔄 Число циклов резко возрастает, особенно для меньшей модели.
📏 Многие трейсы не вписываются в заданный лимит токенов.
⚠️ Блок <think> часто оказывается незакрытым.
💡 При этом сам ответ появляется в среднем чуть ли не раньше в трейсе, но модель его не выводит.
📈 Длина ризонинга сильно увеличивается.

Из этого следует, что, кроме просадки качества, мы ещё теряем в эффективности из-за того, что генерируем больше токенов.

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

При этом результат сильно зависит от выбора задачи: на ризонинг-бенчмарках типа AIME / GPQA-Diamond эффект сильно заметен. На простых задачах — ARC-C, ARC-E, PIQA, WinoGrande — просадка и в 2 битах очень умеренная. Вообще, я думал, что эти бенчмарки likelihood-based и гоняются с выключенным <think>.

Вводят четыре режима деградации качества:

🟢 Стабильный. Без заметной просадки.
🟡 Заметная, но умеренная просадка. Трейсы ещё не ломаются, но есть нарушения в плане фактологии и commonsense.
🟠 Значительная деградация. Генерация часто не завершается.
🔴 Полный коллапс.

В первую категорию попадает Qwen3-32B на простых задачах. По мере усложнения задач и уменьшения размера модели растёт степень деградации.

Дабы как-то подлечить просадку, предлагают два решения:

📝 (+P) FP16-модель пишет план, а квантизованная исполняет. Это заметно поднимает качество и правит многие ошибки ризонинга, но точность всё ещё ощутимо ниже базовой модели.

🔁 (+L) Loop Rescue. Если модель зацикливается, но выдаёт ответ, выписываем промежуточный ответ. Если ответа нет, просим FP16-модель сгенерировать его с нуля.

Стратегии комплиментарны и могут дополнять друг друга.

На простых задачах смысла в этом не так много, так как и просадки, и зацикливания нет. Но на сложных задачах и ризонинг укорачивается, и качество заметно улучшается.

На простых задачах end-to-end speedup с учётом длины генерации находится в районе 2×, а на сложных — несколько процентов с просадкой порядка 20% в среднем.

📌 Выводы

Занятная и интересная стратегия по выправлению ризонинга. Для production-grade-системы, понятное дело, просадки качества слишком велики, но и 2-битная квантизация без свистоплясок — это действительно тяжёлый случай.

Интересно было бы дообучить квантизованную модель через какой-нибудь RL с penalty на циклы.
7
Интересная по описанию либа Humming от InclusionAI.

Позиционируется как легковесный, высокопроизводительный фреймворк с JIT-компилированными GEMM-операциями (под NVIDIA GPU).

⚙️ Он предлагает широкий ассортимент кернелов под разные конфигурации квантованных весов и активаций:

🧮 Веса можно квантовать почти в любую целочисленную битность от 1 до 8, а также в разные варианты FP.
Активации можно квантовать в FP16/BF16/FP8/FP4/INT8/INT4. FP8 поддерживается только начиная с Hopper, а FP4 — с Blackwell.

🧩 Ещё он работает с MoE и позволяет прикручивать адамаровы повороты в квантизацию.

🤷‍♂️ Утверждается, что он выдаёт SOTA-скорость и эффективность, но никаких чисел в README, да и вообще нигде, не приводится.

📊 Квантованных чекпоинтов с замерами качества и скорости тоже нигде нет.

🤔 Выглядит потенциально интересно для ресерча, но как будто не хватает нормальной доки и полноценного описания бенефитов. Могли бы Claude Code постараться напрячь, раз он у них и так многое делает.
10
Бывает и такое, что Reviewer #2 ставит тебе Accept.

Но ревью настолько короткое и несодержательное, что Area Chair не примет во внимание...
😁14💯5
Серёжа сьел токены сына
Зачем? Не объяснив причину
Серёжа запускает клод, рой агентов
И сьедает квоту его

Зачем так ждать чего-то?
Так сильно хотеть чего-то?
Так сильно обливать сердце кровью?
И в снег, и в метель, и в грозы
Писать Деду Морозу
Чтоб выслал новые токены
А не какой-нибудь сраный пенал…
😭16👏3👎1🥴1
step: 11 loss: 9.8672 grad_norm: 2.8441 tps: 5,471 time/step: 2.99s tflops: 198,319.19 mfu: 63563.84% memory: 243.85GiB


MFU > 60000%

Такое даже Уроборосу не снилось)
😁17🤣7🔥5
🚀 Лаба Song Han (одного из апостолов EfficientDL) из MIT выпустила репозиторий со скиллом для агентов, предназначенным для оптимизации кернелов под Hopper и Blackwell.

📚 Репозиторий содержит набор скриптов, которые позволяют агенту обращаться к различным базам знаний, блогам, PR'ам и другим артефактам, посвященным тензорным ядрам и архитектурным особенностям Hopper и Blackwell.

🛠️ В частности, в него заложены знания по:

* CUDA
* CuTe DSL
* PTX
* Triton
* TileLang
* cuTile

⚠️ При этом авторы сразу оговаривают в дисклеймере, что скилл не предназначен для задач, связанных с распределенным обучением и мультихостовым параллелизмом.
🔥92👍2
Введение в Квантизацию.pdf
6.1 MB
📚 Презентация про квантизацию с моего выступления на нашей Hardware Efficiency Reading Group, где мы обсуждаем статьи, идеи и практические аспекты эффективного глубокого обучения.

🎥 Записи и 📋 программу прошлых семинаров можно найти здесь.

🗓️ Семинар проходит (почти) каждый понедельник с 13:00 до 14:00.

📢 Группа с анонсами и материаламитут.

Будем рады всем, кто интересуется эффективным глубоким обучением, GPU, CUDA, оптимизацией и современными ML-системами! 🚀
👍1310🔥5