gonzo-обзоры ML статей – Telegram
gonzo-обзоры ML статей
24.1K subscribers
2.72K photos
2 videos
3 files
1.34K links
Авторы:
Гриша Сапунов, ранее руководитель разработки Яндекс-Новостей, ныне CTO Intento. Области интересов: AI/ML/DL, биоинформатика.
Лёша Тихонов, ранее аналитик в Яндексе, автор Автопоэта, Нейронной Обороны... Области интересов: discrete domain, NLP, RL.
Download Telegram
Что почитать в дороге
🤡69👍32😁14👎128🤮6🔥54🤨4💯1
Что-то интересное:

Happy to release Meta Code World Model (CWM), a 32-billion-parameter dense LLM that enables novel research on improving code generation through agentic reasoning and planning with world models.
https://ai.meta.com/research/publications/cwm

When humans plan, we imagine the possible outcomes of different actions. When we reason about code we simulate part of its execution in our head. The current generation of LLMs struggles to do this. What kind of research will an explicitly trained code world model enable? CWM allows us to study this question. Our model is trained on large amounts of coding data & bespoke Python + Bash world modeling data, allowing it to simulate Python function execution and agentic interactions in Bash environments.

The team and I can’t wait to see what new research will be enabled with a world model.
📊 Tech Report https://ai.meta.com/research/publications/cwm/
⚖️ Models weights https://ai.meta.com/resources/models-and-libraries/cwm-downloads/
🤗 On Huggingface https://huggingface.co/facebook/cwm
https://huggingface.co/facebook/cwm-sft
https://huggingface.co/facebook/cwm-pretrain
🧑‍💻 Inference Code https://github.com/facebookresearch/cwm

We believe CWM provides a strong testbed for research on improving code generation with world models. We performed multi-task RL, and CWM has competitive perfor mance for its size with 68.6% on LiveCodeBench v5, 76% on AIME24, and 65.8% on SweBench Verified with test time scaling.

I'm immensely proud of the work done by my cracked CodeGen team at Meta, with PhD students and veterans, for which nothing is someone else's problem.
The broader Meta AI community all pulled together for this.
I'm very thankful for the unwavering support of our whole leadership.

https://www.facebook.com/share/p/1DEqPXYp1g/
👍2212
Sakana опять что-то прикольное сделала.

We’re excited to introduce ShinkaEvolve: An open-source framework that evolves programs for scientific discovery with unprecedented sample-efficiency.
Blog: https://sakana.ai/shinka-evolve/
Code: https://github.com/SakanaAI/ShinkaEvolve
Paper: https://arxiv.org/abs/2509.19349

Like AlphaEvolve and its variants, our framework leverages LLMs to find state-of-the-art solutions to complex problems, but using orders of magnitude fewer resources!

Many evolutionary AI systems are powerful but act like brute-force engines, burning thousands of samples to find good solutions. This makes discovery slow and expensive. We took inspiration from the efficiency of nature.‘Shinka’ (進化) is Japanese for evolution, and we designed our system to be just as resourceful.

On the classic circle packing optimization problem, ShinkaEvolve discovered a new state-of-the-art solution using only 150 samples. This is a massive leap in efficiency compared to previous methods that required thousands of evaluations.

We applied ShinkaEvolve to a diverse set of hard problems with real-world applications:

1/ AIME Math Reasoning: It evolved sophisticated agentic scaffolds that significantly outperform strong baselines, discovering an entire Pareto frontier of solutions trading performance for efficiency.

2/ Competitive Programming: On ALE-Bench (a benchmark for NP-Hard optimization problems), ShinkaEvolve took the best existing agent's solutions and improved them, turning a 5th place solution on one task into a 2nd place leaderboard rank in a competitive programming competition.

3/ LLM Training: We even turned ShinkaEvolve inward to improve LLMs themselves. It tackled the open challenge of designing load balancing losses for Mixture-of-Experts (MoE) models. It discovered a novel loss function that leads to better expert specialization and consistently improves model performance and perplexity.

ShinkaEvolve achieves its remarkable sample-efficiency through three key innovations that work together: (1) an adaptive parent sampling strategy to balance exploration and exploitation, (2) novelty-based rejection filtering to avoid redundant work, and (3) a bandit-based LLM ensemble that dynamically picks the best model for the job.

By making ShinkaEvolve open-source and highly sample-efficient, our goal is to democratize access to advanced, open-ended discovery tools. Our vision for ShinkaEvolve is to be an easy-to-use companion tool to help scientists and engineers with their daily work. We believe that building more efficient, nature-inspired systems is key to unlocking the future of AI-driven scientific research. We are excited to see what the community builds with it!
🔥22👏105👍1
Прикольная работа Parallel-R1 про параллелизацию и исследование разных независимых путей во время ризонинга:

https://news.1rj.ru/str/gonzo_ML_podcasts/894

(параллелизация пока скорее только логическая, не техническая, но это логичный следующий шаг)

Ещё забавно, что это напоминает parallel scaling из “One extinction scenario” свежей книги Юдковского и Соареса ;)
7🔥4
😥

Philosopher John Searle, well-known for his work on philosophy of mind and philosophy of language, has died.

https://dailynous.com/2025/09/28/john-searle-1932-2025/

Там вообще какая-то грустная история...
https://www.colinmcginn.net/john-searle/
🕊24💔102👍1
Что-то интересное


Ring-1T-preview: Deep Thinking, No Waiting

The first 1 trillion open-source thinking model

https://huggingface.co/inclusionAI/Ring-1T-preview
👀33😱3🤔1
Вот наконец и продукт доехал

Introducing Tinker: a flexible API for fine-tuning language models.

Write training loops in Python on your laptop; we'll run them on distributed GPUs.

Private beta starts today. We can't wait to see what researchers and developers build with cutting-edge open models!

https://thinkingmachines.ai/tinker/

https://x.com/thinkymachines/status/1973447428977336578

Today we launched Tinker.

Tinker brings frontier tools to researchers, offering clean abstractions for writing experiments and training pipelines while handling distributed training complexity. It enables novel research, custom models, and solid baselines.

Excited to see what people build.

https://x.com/miramurati/status/1973498366521954774
🥴167🤔3🔥1🤮1
Stochastic activations
Maria Lomeli, Matthijs Douze, Gergely Szilvasy, Loic Cabannes, Jade Copet, Sainbayar Sukhbaatar, Jason Weston, Gabriel Synnaeve, Pierre-Emmanuel Mazaré, Hervé Jégou
Статья: https://arxiv.org/abs/2509.22358

Есть ещё на свете люди, продолжающие копаться в низких уровнях (на этот раз активации)! Но привязывают всё равно к LLM. Так необычно во введении читать, что функция активации -- это то, что внутри LLM между двумя линейными слоями в FFN блоке. Мы раньше всегда это проще объясняли, на примере одного нейрона…

Авторы предлагают стохастические активации. Я сначала по названию подумал, что речь будет несколько про другое, что будет какая-то хитрая функция с рандомом, ну как RReLU (randomized rectified linear unit, где для отрицательной части выбирался рандомный небольшой линейный коэффициент), но оказалось, что они предлагают случайно выбирать между SILU и RELU (что конечно тоже можно рассматривать как стохастическую функцию, но здесь стохастика вынесена на более высокий уровень), и у этого подхода есть свои плюсы.

RELU (=max(x, 0)) как известно был хорош, помог быстро продвинуть всю область где-то в районе AlexNet, когда оказалось, что с ним учится сильно быстрее, чем с дифференцируемой классикой типа сигмоид и гиперболических тангенсов. Проблема с RELU была в том, что если активация в зоне отрицательного аргумента, то там нулевой градиент и она оттуда не выберется. Как раз поэтому сети с RELU также естественным образом демонстрировали тенденцию к разреженности, что в свою очередь хорошо, если железо более эффективно умеет перемножать разреженные матрицы (но такое появилось сильно не сразу, да и для подобного паттерна разреженности это может быть непросто).

SILU (Sigmoid Linear Unit, оно же swish, =xσ(x)), особенно в сочетании с гейтами (SwiGLU), стабильно бил RELU по качеству, но не давал разреженности. Возможно, что бил как раз потому, что у RELU градиенты нулевые были в большом количестве случаев, и это не давало сети хорошо учиться.

Был и миллион других функций. Из относительно недавнего, например, Adaptive SwisH (ASH, https://arxiv.org/abs/2210.11672), со стохастическим сэмплингом внутри. Где-то идейно рядом с разреженностью также лежит Dropout, включая structured варианты типа LayerDrop (упоминали тут https://news.1rj.ru/str/gonzo_ML/2845).

Вопрос далее классический: как адресовать ограничения RELU, сохранив все его преимущества?

Если бы губы Никанора Ивановича да приставить к носу Ивана Кузьмича, да взять сколько-нибудь развязности, какая у Балтазара Балтазарыча, да, пожалуй, прибавить к этому ещё дородности Ивана Павловича — я бы тогда тотчас же решилась.


Предлагаются два подхода:

1) Swi+FT -- файнтюнинг активаций: обучаешь LLM с одной активацией (более качественной), потом заменяешь на RELU и файнтюнишь. Если точнее, то при обучении для первых 1 − α от общего числа шагов выбирается хорошая активация (SILU например), а затем переключаемся на вторую (RELU). Значение α обычно в районе 5-10%, иногда пробуют 20%. На инференсе тоже оставляем вторую активацию. Нет никаких прогревов оптимизатора, его параметры не переинициализируются, но применяется косинусное расписание, где learning rate плавно уменьшается до 0.01 от своего пикового значения. Поскольку SILU и RELU похожи (одинаковые асимптоты и значение в нуле), то проблемы не возникает. Есть спайк на лоссе в момент переключения, но он быстро уходит.

2) StochA -- собственно стохастические активации: случайно выбираются активации из заданного набора, либо в трейне, либо в тесте. Здесь используется бернуллиевская (бинарная) случайная величина ω ∼ Bernoulli(p), так что с вероятностью p выбирается одна функция, и 1-p -- другая. Это, кстати, тоже напоминает дропаут активаций (хоть дропаут и для другой цели), так как получается что с заданной вероятностью мы выбираем функцию, которая занулит отрицательный аргумент.

Альтернативная стратегия -- случайно выбирать между identity (y=x) и нулевой функцией (y=0) с вероятностью, заданной сигмоидой, что в матожидании даёт SILU. На практике работает не очень.
8👍7😁3
Обучают dense декодеры с GQA, RMSNorm + pre-norm, RoPE. Модели 1.5B и 3B. Оптимизатор AdamW. Токенизатор Llama3, словарь 128k + 256 зарезервированных токенов. Предобучение на 47B и 80B токенов, в основном англ тексты и код. Батч 1M токенов, контекст 8k.

Стохастическая активация даёт чуть меньший лосс на трейне по сравнению с RELU. Но и SILU тоже даёт меньший лосс, и не заметно как-то очень больших различий с ним. Без файнтюнинга на валидации всё проседает, но после него норм, но опять же, насколько я вижу, не лучше детерминированного SILU.

При использовании RELU на инференсе разреженность может превышать 90%, что по идее позволяет не тягать из памяти 90% весов. Разреженность в 90% даёт ускорение инференса на 65% на CPU. На GPU надо ещё как-то сделать вычисления достаточно предсказуемыми, чтобы балансировать нагрузку между CUDA тредами.

Вот эта часть вообще одна из самых интересных, но деталей тут не очень много. Как именно реализовали вычисления на CPU? Если боттлнек -- доступ к памяти, то всё равно ведь сначала надо прочитать, чтобы понять, что там ноль? Либо сразу делать sparse вычисления и для конкретных умножений использовать какую-то библиотеку для разреженной линейной алгебры с правильным форматом хранения. Была ли процедура конвертации dense модели в частично sparse для инференса? Упоминают хранение разных матриц по строкам или столбцам, но хочется мяса про sparse FFN.

Интересно, что при файнтюнинге, если использовать одновременно Swi+FT и StochA, то в момент переключения на RELU есть выброс на графике лосса, но далее он уходит и финальное качество модели выше, чем если бы изначально обучалась на RELU. При этом если использовать только Swi+FT, то итоговый результат хуже. И они всё равно хуже детерминированного SILU.

Другое любопытное замечание: в тест-тайм можно использовать StochA вместо RELU и без файнтюнинга (!). Оно неплохо работает, результат между RELU и SILU. Можно это использовать для генерации множественных ответов по одному промпту.

На downstream задачах похожая картина. Новые методы лучше RELU, но хуже SILU. То есть главный selling point, это потенциальное ускорение за счёт разреженности, 1.65x для CPU (а для GPU ещё надо постараться, но по идее для нвидиевских GPU нескольких последних поколений с поддержкой разреженности в тензорных ядрах должно как-то работать). Если нужно качество, то SILU лучше без вариантов. Ну или популярный SwiGLU, который SILU с гейтом. Есть ещё часто используемый GELU, хотя мне кажется от него стали уходить в SwiGLU (Себастиан подтверждает).

Наверное какие-то другие более новые функции активации тоже есть, но я не видел современного сравнения их всех по типу старого доброго для CNN (https://arxiv.org/abs/1505.00853) или исследования Ноама Шазира про трансформеры (https://arxiv.org/abs/2002.05202). Был вот ReLU^2 для разреженных LLM, где он всех побил (https://arxiv.org/abs/2402.03804). Был xIELU (https://arxiv.org/abs/2411.13010), который тоже вроде лучше SwiGLU. Ждём, когда кто-то снова сделает полномасштабное сравнение.

Наверное, здесь в очередной раз можно закончить цитатой Ноама Шазира из той работы 2020 года:

We offer no explanation as to why these architectures seem to work; we attribute their success, as all else, to divine benevolence


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

Кстати, у Ноама был кейноут доклад на свежей HotChips:
https://www.youtube.com/watch?v=v0beJQZQIGA

Всё в его участием смотреть и читать стоит! Напомню также, что он соавтор статьи про трансформер, T5, статей про MoE и т.п.. Пример очень крутого человека без PhD.

На этом и закончим.
👍83🤯1