Авторы: Гриша Сапунов, ранее руководитель разработки Яндекс-Новостей, ныне CTO Intento. Области интересов: AI/ML/DL, биоинформатика. Лёша Тихонов, ранее аналитик в Яндексе, автор Автопоэта, Нейронной Обороны... Области интересов: discrete domain, NLP, RL.
Мне кажется, одним из следующих больших майлстоунов в обучении фронтирных моделей будет обучение на большом, актуальном и курируемом массиве учебной и научной литературы.
Это всё в целом как бы не новая идея. Модели и сейчас уже весьма неплохо отвечают на разные актуальные вопросы, решают сложные задачи уровня вплоть до олимпиадного и прогрессируют крайне быстро. Какие-то модели откровенно на книгах и обучаются, см. “Textbooks Are All You Need” (https://arxiv.org/abs/2306.11644, разбирали тут /channel/gonzo_ML/1871). Злые языки правда утверждают, что обучаются они на тест сете, отсюда развитие концепции до “Pretraining on the Test Set Is All You Need” (https://arxiv.org/abs/2309.08632). Другие авторы моделей очень не любят раскрывать состав своих трейн сетов, и не факт, что из-за наличия там тест сетов, может также из-за сложностей с авторским правом.
То есть мы вроде как бы и так уже там или по крайней мере идём. Но я думаю, что до реально масштабного обучения на учебниках, нам ещё надо сколько-то пройти. И попутно надо решить несколько вопросов:
1) Авторское право. Хорошие учебники кому-то принадлежат, защищены авторским правом и они не в опенсорсе с удобной лицензией. И нескоро там будут. Это сложная и многогранная тема и проблема требует системного решения, которое должно включать и экономические стимулы. Пользы от того, что кто-то сделал хороший учебник, а прибыль потом извлекает автор обученной на нём модели, тоже немного. Как-то должна перестроиться вся экономика вокруг таких моделей и данных.
2) Реально большой эффективный контекст, достаточный чтобы модель смогла интернализировать большие области знаний ничего не теряя, а также по ходу дела подтягивать свежие результаты, идеально без переобучения модели. Учебники скорее всего должны быть какого-то нового формата. Возможно частью решения будут являться knowledge graphs, но возможно не будут, большого их количества по разным областям как-то не появилось.
3) Зрелый RAG и иные тулы для работы с новой информацией. Тут вроде ничего нового, будет нужна верификация и оценка качества, оркестрация для регулярных обновлений и предобработки новых книг, статей и прочего, и в целом выстраивание системы, где интеграция старого и нового знания происходит более-менее автоматически.
4) Мультимодальность как минимум для текста + картинок, которых везде миллион и их надо хорошо понимать -- диаграммы, графики, схемы, математические и другие формулы. Видео тоже может быть полезно, но начать можно и без него. Интересно как бы могло выглядеть хорошее обучающее видео не для человека, а для модели?
На выходе получится модель, или даже скорее агент-помощник учёного, обладающий недюжинными способностями в разных областях знаний. Copilot для учёного, а со временем и авто-учёный, куда многие и так идут. А также заодно и тьютор или Букварь для благородных девиц.
Где-то рядом находится вопрос про safety, misuse, dual use и прочие опасные способности моделей. Тестирования моделей на такие способности уже давно есть (https://www.aisi.gov.uk/work/pre-deployment-evaluation-of-anthropics-upgraded-claude-3-5-sonnet) и описанное здесь обучение риски безусловно поднимет. Но бенефиты, я уверен, велики, и явно будет разделение на модели для людей проверенных и для всех остальных.
Большая и самая значимая часть проблем здесь, как видно, не совсем техническая.
Qwen3 models are supporting 119 languages and dialects.
И наконец-то есть полный список этих языков с разбивкой на семьи.
Новые оптимизаторы -- это вообще интересная тема, там тоже постоянно что-то появляется, и какая-то новая теория в том числе. Например, одна из недавних работ “Old Optimizer, New Norm: An Anthology” (https://arxiv.org/abs/2409.20325) обобщает несколько методов (Adam, Shampoo, Prodigy) и показывает их эквивалентность steepest descent с определённой нормой, а также намечает новое пространство (выбор нормы, выбор шага) для дизайна таких алгоритмов. Это всё идейно напоминает подход, который авторы SSM постоянно воспроизводят (/channel/gonzo_ML/2860, /channel/gonzo_ML/2718), сводя во всё более общем матаппарате разные методы (RNN, SSM, трансформеры) под один зонтик. Внимательно работу пока не изучал, но выглядит интересно. И про Newton-Schulz iteration там тоже есть.
Спасибо авторам мюона, нашёл прекрасную цитату в работе Ноама Шазира 2020 года (https://arxiv.org/abs/2002.05202):
“We offer no explanation as to why these architectures seem to work; we attribute their success, as all else, to divine benevolence.”
На этой оптимистической ноте и закончу.
Датасет DUMB500 — это тоже прекрасно, кстати!
Читать полностью…Just in case, бахнул авторазбор статьи про iCoT (https://arxiv.org/abs/2405.14838), которую упоминали в разборе Coconut'а (/channel/gonzo_ML/3567). По мне так довольно полезно уже.
/channel/gonzo_ML_podcasts/117
Тестируют подход на трёх датасетах с математическим (GSM8k) и логическим ризонингом (ProntoQA, и новый ProsQA).
Проверяют на предобученной GPT-2. Для математики используют две латентных мысли (c=2) на каждый шаг ризонинга, три этапа (stages, k=3) и обучают шесть эпох на первом этапе и три на остальных. На логике одна латентная мысль на шаг, шесть этапов, обучают пять эпох на этап.
В сравнении используются следующие бейзлайны:
1) обычный CoT с файнтюнингом модели на примерах
2) No-CoT, с обучением модели сразу выдавать ответ
3) iCoT, implicit CoT из https://arxiv.org/abs/2405.14838, который постепенно интернализировал промежуточные шаги рассуждений через последовательный файнтюнинг, там шаги по одному выбрасывались, а в Coconut вместо них появляются латентные шаги, что по идее даёт модели “подумать” побольше.
4) Pause token, когда между вопросом и ответом вставляются специальные токены <pause> (столько же, сколько continuous thoughts у кокоса) -- никакой цепочки размышлений тут нет, но дополнительные токены могут дать модели дополнительные вычислительные возможности.
Сам Coconut тоже проверяют в трёх режимах:
1) w/o curriculum без мультиэтапного обучения, сразу берутся данные с последнего этапа, где уже нет языковых мыслей, есть только латентные.
2) w/o thought с мультиэтапным обучением и постепенным убиранием языковых шагов рассуждения, но без использования непрерывных латентных мыслей -- по сути похоже на iCoT, но процедура обучения из Coconut
3) Pause as thought c заменой непрерывных мыслей на токены <pause> и сохранением мультиэтапной процедуры
🏁 Результаты
Coconut стабильно лучше LLM без CoT, и лучше CoT на логических задачах. На GSM8k обычный CoT лучше, но у Coconut растёт качество с увеличением числа мыслей на шаг (насыщения там не видно до двух мыслей на шаг, но в приложении попробовали три и там стало хуже, видимо из-за проблем в обучении, нужно что-то менять в процедуре).
Токенов у Coconut при этом меньше в разы.
Coconut с pause as thought в целом тоже неплохо работает, но обычный Coconut лучше.
На авторском датасете ProsQA, где предсказание следующего шага не очень помогает и надо планировать и искать по более сложному графу, обычный CoT не лучше No-CoT, зато Coconut или iCoT существенно улучшают ситуацию.
Без мультиэтапной процедуры с curriculum модель плохо выучивает ризонинг в латентном пространстве. В идеальном мире она бы сама выучила наиболее эффективные непрерывные мысли через бэкпроп, но чего-то не хватает.
Хоть Coconut и призван обходиться без перехода в пространство токенов, это по-прежнему можно делать, если хочется. В одном примере авторы декодировали первую непрерывную мысль и увидели там токены, которые ожидались в промежуточном рассуждении. Это прикольно в плане интерпретируемости.
🔍Анализ
У модели есть интересная возможность переключаться между ризонингом языковым и в латентном пространстве. Авторы дополнительно покопались в латентном ризонинге.
Проверили работу модели на датасете ProsQA с разным числом латентных мыслей, от нуля до шести. Разница здесь только в инференс тайме, модель одна и та же. Также дополнили мультиэтапную процедуру обучения, чтобы модель не забывала более ранние этапы, так что с вероятностью 0.3 замешиваются данные от других этапов.
Сделали более гранулярную классификацию качества ответа модели, теперь есть не просто корректность конечного ответа, а более детальные типы:
1) Correct Path — верный кратчайший путь в графе
2) Longer Path — верный, но не кратчайший
3) Hallucination — путь содержит несуществующие рёбра или несвязный
4) Wrong Target — путь валиден, но не к тому узлу
5) Correct Label и (6) Incorrect Label — для методов, где можно получить только финальный ответ
Ожидаемо, с увеличением количества непрерывных мыслей корректных результатов становится больше. Галлюцинации тоже уходят.
30 мая в Royal Institution в Лондоне будет лекция Хинтона. Есть онлайн.
Discourse: Digital intelligence vs biological intelligence
https://www.rigb.org/whats-on/discourse-digital-intelligence-vs-biological-intelligence
Tech headlines in the last couple of years have been dominated by Artificial Intelligence. But what do we mean by intelligence? What has AI learned from biological intelligence, and how do they still differ?
Acclaimed computer scientist, and winner of the 2024 Nobel Prize in Physics, Geoffrey Hinton will examine the similarities and differences between artificial and biological intelligence, following his decades of ground-breaking work which has enabled the neural networks of today.
Спасибо Мише Бурцеву за ссылку!
Что ждёт профессии, связанные с переводами, в ближайшие годы? Каким станет мышление и коммуникация в эпоху AI? Как LLM справляются с пониманием языка?
https://youtu.be/jWVbaCiN0Tc
Об этом — в подкасте с Григорием Сапуновым, соучредителем и техническим директором компании Intento, специалистом в области ИИ и анализа данных.
Вчера в разборе Multi-Token Attention упоминалась статья про Differential Transformer. До её разбора я всё-таки не доберусь, так что продолжаю эксперименты с автоматизированным разбором.
Результат тут.
Head mixing convolution позволяет перемешивать внимание между разными головами в пределах одного временного шага. Все головы внимания разбиваются на группы заданного размера и перемешивание происходит внутри группы (его также можно рассматривать и как небольшой полносвязный слой). Это делается после софтмакса, но при желании можно делать и до, на логитах, тоже получается pre и post (по дефолту).
Итого, возможны четыре варианта блока MTA с разными комбинациями pre/post свёрток. Тут есть простор для оптимизации, так если оба варианта pre или post, то можно объединить это в одну трёхмерную свёртку.
Group normalization with depth scaling использует GroupNorm и независимый скейлинг для каждой головы по рецепту от Differential Transformer (https://arxiv.org/abs/2410.05258, может кстати тоже его разобрать?).
Эксперименты начинают с игрушечной задачи: модели дают последовательность блоков, каждый из N случайных букв. Далее следует L<N букв вопроса. Задача -- найти блок, содержащий все буквы из вопроса в любом порядке. Модель должна вывести все буквы целевого блока, или только его первый либо последний токен (три разные варианта задачи). Для стандартного трансформера задача сложная, так как требует L кусочков информации для определения целевого блока, и их надо закодировать в один query вектор. С MTA должно быть проще, так как он может найти позицию каждой буквы, а потом свёрткой увеличить вес внимания, если все L букв найдены вместе.
Проверили на N=5 и 8, L=2. Пример задачи (надо найти блок с pb):
hjnvt.qfjgt.whftb.bjtpq. ...(many blocks)... .pxjvf.ulhik.qoiax#pb
И для разнообразия не про LLM.
Если это не первоапрельская шутка, то Kawasaki показал концепт нового мотоцикла транспортного средства, Corleo:
https://youtu.be/vQDhzbTz-9k?si=oC8mOuc-KfpIqkNa
А кому этого мало, есть Docker контейнерные перевозки для людей:
https://youtu.be/RFZ1aGqzIN4?si=lofqVvmzlJDHjhyg
Блин, круто. Особенно Corleo.
От непосредственных участников, так сказать
Читать полностью…Очередной лонгрид (264 страницы).
Advances and Challenges in Foundation Agents: From Brain-Inspired Intelligence to Evolutionary, Collaborative, and Safe Systems
https://arxiv.org/abs/2504.01990
Кажется, это next step относительно Foundation Models, теперь на новом уровне.
Имена в основном азиатские, кажется никого из них не знаю. Но по списку аффиляций солидно:
MetaGPT, Université de Montréal, Mila - Quebec AI Institute, Nanyang Technological University,
Argonne National Laboratory, University of Sydney, Penn State University, Microsoft Research Asia, University of Illinois at Urbana-Champaign, The Hong Kong University of Science and Technology, University of Southern California, Yale University, Stanford University, University of Georgia, The Ohio State University, King Abdullah University of Science and Technology, Duke University, The Hong Kong Polytechnic University, Google DeepMind, Canada CIFAR AI Chair
Гитхаб страница тоже весьма развесистая:
https://github.com/FoundationAgents/awesome-foundation-agents
Читать не перечитать!
Подоспели видео с Gemma 3 Day в Париже
https://youtube.com/playlist?list=PLOU2XLYxmsILOkAPDwRqvbiReWbIcLC4k&si=Pdba77GHDhwrWFQI
Хороший толк для прослушивания во время утренней прогулки.
Сотрудники Антропика, работающие над вопросами наличия сознания у моделей, рассуждают на тему.
https://youtu.be/pyXouxa0WnY?si=4MRs96pBHkzD3L50
Вау!
https://qwenlm.github.io/blog/qwen3/
Muon Optimizer Accelerates Grokking
Amund Tveit, Bjørn Remseth, Arve Skogvold
Статья: https://arxiv.org/abs/2504.16041
Любопытная история про гроккинг, здесь про влияние оптимизатора и конкретно про то, что переключение оптимизатора с AdamW на Muon существенно ускоряет наступление гроккинга.
Напомним, что гроккинг -- это весьма интересный феномен генерализации, когда модель сначала как бы переобучается (высокое качество на обучающем сете, но низкое на уровне рандома на валидационном), но если продолжать обучение дальше, то в какой-то момент перформанс на валидационном быстро датасете вырастает до высоких значений. Модель “врубается”.
Текущая работа определяет гроккинг следующим образом: это первая эпоха, на которой точность на валидации достигает или превосходит 95%, после того как точность на трейне стабилизировалась около 100%.
Если не читали разбор оригинальной статьи про гроккинг (/channel/gonzo_ML/831), очень рекомендую.
Вот ведь, было время, когда OpenAI публиковал интересные статьи, и эту, и про double descent, и много всего другого…
Muon (MomentUm Orthogonalized by Newton-Schulz) -- это свежий оптимизатор (https://github.com/KellerJordan/Muon), предназначенный для обучения внутренних слоёв моделей, работает с 2D+ матрицами параметров. Разные векторы и скаляры надо обучать чем-то другим, например, AdamW. Эмпирически нашли также, что и эмбеддинги с классификационными головами лучше обучать не Muon’ом, у них другая динамика оптимизации (по крайней мере у первых).
Алгоритм берёт градиенты из SGD-Nesterov-momentum (можно и без Нестерова, но с ним лучше) и делает их постпроцессинг через итерацию Newton-Schulz, которая приближённо ортогонализует матрицу апдейтов. Больше подробностей есть в описании алгоритма тут: https://kellerjordan.github.io/posts/muon/.
Muon родился осенью прошлого года (https://x.com/kellerjordan0/status/1842300916864844014) и уже показал себя хорошо на скейлинге MoE LLM c 3B/16B параметров (вариант deepseek-v3-small) в обучении на 5.7T токенов, будучи примерно в два раза эффективнее AdamW (https://arxiv.org/abs/2502.16982).
В текущей работе проверили несколько датасетов. Датасет как в оригинальной работе про гроккинг и арифметику по модулю 97, а также датасет про чётность 10-битных бинарных строк. Задачи выбраны потому что на них феномен хорошо демонстрируется.
Поскольку одна из свежих работ про гроккинг (https://arxiv.org/abs/2501.04697) показывала влияние нестабильности софтмакса (Softmax Collapse) на проявление феномена, попробовали несколько альтернатив: стандартный Softmax, кусочнолинейный Stablemax с лучшей стабильностью, и приводящий к разреженным результатам Sparsemax.
Проверяли на классическом трансформере, с identity эмбеддингами (токен “42” маппится в вектор 42), RoPE, RMSNorm, SiLU активации, с дропаутом.
Сравнивали AdamW (β1 = 0.9, β2 = 0.98) и Muon. Делали множественные запуски с разными случайными сидами.
Как результат, у Muon статистически значимо преимущество, он существенно раньше приводит к гроккингу, примерно на 100-й эпохе вместо 150-й. Ещё и распределение grokking times более узкое.
Так что хотите быстрого гроккинга, юзайте мюон!
Авторы немного рассуждают на тему, что именно в мюоне помогает гроккингу. Ограничения спектральных норм и сигналы второго порядка уводят модель в сторону от тупого запоминания и помогают обнаружить настоящий паттерн.
В целом требуется более широкое исследование на более крупных моделях и разнообразных задачах.
Ну и раз мы сегодня про терминаторов, то вот есть прекрасный свежий THOUGHTTERMINATOR (/channel/gonzo_ML_podcasts/123), заставляющий ризонинг модели не уходить в слишком глубокие обдумывания. Как полагается, обзор тоже сделан терминатором.
Читать полностью…Работы, на которые надо обратить внимание
https://blog.iclr.cc/2025/04/22/announcing-the-outstanding-paper-awards-at-iclr-2025/
Отдельный интересный результат в том, что Coconut с k=0, то есть когда он вынужден генерировать обычную языковую цепочку CoT без латентных мыслей (но уже с парой токенов <bot>/<eot>), качество выше, чем у CoT, меньше галлюцинирует. Видимо, помогает процедура обучения с замешиванием разных этапов (а может и пара дополнительных токенов тоже).
Латентный ризонинг можно интерпретировать как поиск по дереву, если опираться на интуицию, что непрерывные мысли могут содержать более одного шага рассуждения. Так, первая мысль кокоса может выбрать всех детей узла графа, следующая — детей детей. Получается похоже на поиск в ширину (BFS), но не равномерный, а с вероятностями или приоритетами. В работе посчитали эти вероятности для примеров, получается неявная value function для исследования графа. По ощущению тут где-то рядом MCTS. И вообще выглядит, что обучили не непрерывный CoT, а непрерывный ToT.
По полученным вероятностям можно оценить степень параллелизма мыслей, если смотреть на кумулятивные значения top-1/2/3 кандидатов. У первых мыслей такой параллелизм (разница между линиями для top-1/top-2/top-3) выше, чем у вторых.
Латентное рассуждение позволяет модели отложить выбор конкретных слов и «обдумывать» варианты глубже по дереву поиска, оценивая узлы уже у самых листьев, где ошибочные пути легко выявить. Экспериментально видно, что уверенность модели обратно пропорциональна высоте узла: на малых высотах она чётко отделяет правильные варианты от неправильных, тогда как на больших это различие размывается — поэтому планирование в непрерывном латентном пространстве оказывается выгодным.
---
Интересный подход, он сильно перекликается с LCM (/channel/gonzo_ML/3149), только в LCM сразу работали на уровне отдельных больших мыслей-предложений, а здесь скорее избавляются от токенов для промежуточных вычислений. Наверное, где-то посередине есть подход с латентными концептами для объектов, действий и свойств, пока вроде не видел такого. Верю глобально в это направление с латентным ризонингом и латентным всем. Thought vector is a thing.
In the meantime, прослушайте пение дрозда песню из шапки.
Training Large Language Models to Reason in a Continuous Latent Space
Shibo Hao, Sainbayar Sukhbaatar, DiJia Su, Xian Li, Zhiting Hu, Jason Weston, Yuandong Tian
Статья: https://arxiv.org/abs/2412.06769
Код: https://github.com/facebookresearch/coconut
Песня: https://www.youtube.com/watch?v=PKQPey6L42M
Статья, которую надо разобрать, про Coconut и ризонинг в латентном пространстве. Тем более даже Quanta уже написала, а мы всё нет.
📃TL;DR.
Идея проста: языковое пространство может быть не лучшим выбором для ризонинга через CoT (про CoT и ToT тут /channel/gonzo_ML/1885), и ризонинг можно делать не выходя в пространство токенов. Отсюда рождается Coconut (Chain Of CONtinUous Thought). Последнее скрытое состояние можно не декодировать в токен, а сразу подавать его на вход декодера в авторегрессионном процессе генерации как эмбеддинг для следующего шага.
💡Идея
Это интересный подход по нескольким причинам.
Во-первых, прогон всего ризонинга через токены создаёт узкое место. Из одного эмбеддинга могут быть сгенерированы разные токены, эквивалентные и не очень, и всё богатство оригинальной “мысли” может потеряться. Что если его не терять?
Дополнительный минус в том, что на каждый токен уходит одинаковый вычислительный бюджет, хотя токены неравнозначны. BLT (/channel/gonzo_ML/3109) отчасти решал эту проблему, но там и часть авторов та же, что у кокоса.
В общем, почему бы не попробовать ризонинг без языковых ограничений? Тем более, что, во-вторых, это соответствует некоторым данным по neuroimaging, когда в процессе ризонинга языковые области мозга не задействуются. В частности, одна из свежих работ (/channel/gonzo_ML/2797) говорит, что язык оптимизирован для коммуникации, а не для думания.
🛠Реализация
Она, как уже упоминалось в TL;DR, чрезвычайно проста. В процессе ризонинга мы не задействуем выходную голову модели и её слой эмбеддинга, а в качестве входного эмбеддинга на следующем шаге используем выходной эмбеддинг предыдущего шага.
LLM переключается между двумя режимами: языковым (language mode) и латентным (latent mode). Языковой режим — это стандартный режим для LLM с генерацией токенов. Латентный режим -- новый режим с переиспользованием эмбеддинга. Начало и окончание латентного режима обрамляется токенами <bot> и <eot>. Соответственно для всех токенов с индексами между индексами этих двух токенов включается новый режим. Весь процесс полностью дифференцируемый и позволяет обучать модель обычным бэкпропом.
Вопрос, где взять данные для такого обучения. Для этого берутся языковые данные для обычного CoT и реализуется мультиэтапный curriculum. На начальном этапе (stage) модель обучается обычному языковому CoT. На последующих этапах, для шага номер k, первые k шагов языкового размышления убираются, а внутри <bot>/<eot> тэгов появляются k позиций, в каждую из которых записываются эмбеддинги предыдущего шага. Состояние оптимизатора сбрасывается между отдельными этапами.
Во время обучения оптимизируется обычный negative log-likelihood loss, но маскируется и не учитывается лосс для вопроса и латентных мыслей (не буду кавычки каждый раз ставить вокруг слова мысль). Эта objective никак не стимулирует модель сжимать убираемые текстовые мысли, так что есть потенциал выучивания более эффективных репрезентаций ризонинга.
Для примера с N шагами рассуждения надо сделать N+1 forward pass. KV-кеш может помочь не пересчитывать одно и то же, но всё равно последовательная природа вычисления этих этапов не даёт эффективно распараллеливать весь процесс. Оптимизация является отдельным интересным направлением исследования, и я уверен, что за ней дело не станет.
При инференсе главный челлендж это решить, когда нужно уходить в латентный режим и выходить из него. С токеном <bot> всё просто, ставим сразу после вопроса, а для <eot> рассматриваются две стратегии: 1) обучить бинарный классификатор, решающий по эмбеддингу, когда надо переключаться, и 2) добивать паддингом латентные размышления до фиксированной длины. Оба подхода работают, так что по дефолту используют более простой второй.
🧪Оценка
Теперь признанная классика. Статьи про Adam и механизм внимания, ещё на базе RNN
https://blog.iclr.cc/2025/04/14/announcing-the-test-of-time-award-winners-from-iclr-2015/
Пообщались с Иваром Максутовым и Постнаукой о хренах и пряниках разном
Brand new 2025 AI Index Report is released!
https://hai.stanford.edu/ai-index/2025-ai-index-report
Multi-Token Attention
Olga Golovneva, Tianlu Wang, Jason Weston, Sainbayar Sukhbaatar
Статья: https://arxiv.org/abs/2504.00927
Продолжаем разборы архитектур.
Как известно, веса внимания в классическом механизме внимания определяются одним вектором значений query и одним вектором значений key. Этот “single token attention” является своеобразным боттлнеком для отделения важных частей от всего остального. Новый подход Multi-Token Attention (MTA) позволяет устранить боттлнек и определять веса внимания на основе нескольких векторов query и keys одновременно
Напомним, что в стандартном внимании веса внимания определяются как softmax(QK/sqrt(d)). Для каждого токена есть вектор эмбеддинга, этот вектор проецируется в три отдельных вектора Q, K и V, и по скалярному произведению векторов Q и K различных токенов определяется их “похожесть” или “важность”. После нормализации на корень от размерности эмбеддинга и взятию софтмакса от результата получаются веса внимания A. Далее с этими весами взвешиваются и суммируются вектора V и генерятся новые эмбеддинги для каждого токена. На наличие множества голов, маски декодера и прочего мы в этом объяснении забиваем, если хотите лучше понять/вспомнить этот процесс, отсылаю к классике (https://jalammar.github.io/illustrated-transformer/).
Внутри и снаружи этого базового механизма внимания можно много чего модифицировать -- мы писали про температуру в софтмаксе (/channel/gonzo_ML/3013), про отказ от нормализации до или после слоёв внимания (/channel/gonzo_ML/3478), 100500 вариантов разреженного и прочего модифицированного внимания, которые даже перечислять долго (просто как пример -- Reformer, /channel/gonzo_ML/176, далее воспользуйтесь поиском по каналу). Текущая работа тоже где-то в этом пуле.
Допустим, мы хотим найти предложение, содержащее несколько элементов. Пусть для примера это будет предложение “Where did Alice see the rabbit?” и мы хотим найти одновременное упоминание Алисы и кролика, им соответствуют query вектора q_a и q_r. Стандартный механизм считает веса внимания описанным выше способом, мы можем “найти” места в контексте, содержащие эти слова, и нам надо бы проверить, что они находятся где-то в соседних позициях. Но стандартный механизм внимания не даёт этого сделать в пределах одного слоя (через увеличение глубины можно, но хотелось бы и без), поскольку никаких взаимодействий между отдельными attention maps в нём нет, и даже если мы используем отдельные головы внимания для обнаружения Алисы и кролика, то нет механизма для комбинирования этих весов внимания. Модификация внимания в MTA позволяет добавить это взаимодействие между attention maps для соседних позиций Q и K или между отдельными головами.
На уровне конкретных модификаций внутри стандартного механизма внимания появляются три новых блока:
1) key-query convolution: комбинирует несколько key и query внутри головы
2) head mixing convolution: шарит информацию между головами и усиливает важную
3) group normalization with depth scaling: улучшает поток градиентов
Key-query convolution перемешивает веса внимания от разных временных шагов и работает так: к логитам внимания перед софтсаксом (QK/sqrt(d)) применяется двумерная обучаемая свёртка по измерениям q и k, измерения для батча и голов внимания не трогаются. Каждая голова внимания учит свою свёртку. Внутри свёртки используется маска с занулением элементов, чтобы не залезать в будущее. Это был pre-softmax convolution, он будет использоваться по дефолту. Можно также сделать post-softmax convolution, тогда свёртка считается не поверх логитов, а уже после софтмакса. Это делает взаимодействия между весами внимания аддитивными, а не мультипликативными. Я кстати не до конца понял, почему они до софтмакса прям мультипликативные...
🌸Релизим Llama 4🌸
OSS на уровне Gemini и Deepseek
Сегодня мы релизим модели из семейства Llama 4 — Llama 4 17Bx16 experts (Scout) и 128 experts (Maverick)
🌸Что интересного:
— 10 миллионов токенов контекстного окна с отличным качеством у модели Scout
— полный размер модели 16 экспертов — 108 млрд параметров, 128 экспертов — 400 млрд
— модель мультимодальная, инпут — текст, изображения, видео. Картинок в контексте может быть до 5 штук, чтобы сохранялся контекст
— 12 основных языков (английский, французский, немецкий, арабский ,хинди, индонезийский, итальянский, португальский, испанский, тагальский, тайский и вьетнамский), но более 200 в претрейне (из No Language Left Behind)
Где посмотреть:
🟣Чекпоинты HF
🟣Блогпост
Вышла Llama 4!
https://ai.meta.com/blog/llama-4-multimodal-intelligence/
У Михаила Кацнельсона классный пост с подборкой трёх интервью соавторов статей про обучение и многоуровневую оптимизацию :)
------
*Тем, кто интересуется интердисциплинарными исследованиями*
ТрВ провел интересный эксперимент - взяли интервью у трех соавторов одних и тех же работ. Биолог, физик твердого тела и космолог. Мне кажется, очень ценный материал: как люди по-разному смотрят на один и тот же совместно сваянный предмет. Если еще кому-то не пофиг, как делается наука, уместно посмотреть и сравнить (но, правда, это очень много букв).
Eugene Koonin http://trv-science.ru/2022/02/zhizn-kak-mnogourovnevoe-obuchenie/
Vitaly Vanchurin http://trv-science.ru/2022/04/ves-mir-neuroset/
Я http://trv-science.ru/2022/03/vsya-nasha-zhizn-zadachi-po-optimizacii/
Интересно, что вышел апдейт по ценам для картинки с результатами o3 на ARC-AGI.
Новая картинка выглядит так, что o3-low подорожала с $20 до $200 за задачу, а o3-high видимо с $3000 до $30000 (и ушла с картинки по превышению лимита в $10000 на задачу).
Инфляция!
Но o3-mini действительно выглядит любопытно, явно на другой кривой сидит по сравнению с o1/o1-pro/o3.