Telegram Group & Telegram Channel
[Mamba-2] Transformers are SSMs: Generalized Models and Efficient Algorithms Through Structured State Space Duality
Tri Dao, Albert Gu
Статья: https://arxiv.org/abs/2405.21060
Код: https://github.com/state-spaces/mamba
Блог: https://goombalab.github.io/blog/2024/mamba2-part1-model/
Твиттер-тред: https://x.com/_albertgu/status/1797651223035904355

Transformers are RNNs/SSMs

Краткий формат. Авторы Mamba (https://www.group-telegram.com/ar/gonzo_ML.com/2148) выпустили обновлённую версию своей модели, Mamba-2. У неё вектор состояния большего размера (16 -> 256), при этом она в два раза быстрее обучается, а её код проще (30 строк).

Старая Мамба была хороша, но авторы не были полностью удовлетворены. Во-первых, механизмы внимания оставались где-то за пределами парадигмы SSM, а было бы интересно их как-то объединить. Во-вторых, хоть Мамба и была уже достаточно быстра (с эффективной имплементацией через selective scan), всё равно она уступала по вычислительной эффективности механизму внимания и перемножению матриц.

Авторы подошли к проблеме фундаментально и предложили фреймворк под названием structured state space duality (SSD), который объединяет structured SSM и варианты внимания в новом SSD слое. Показана эквивалентность SSM и семейства структурированных матриц под названием semiseparable matrices. Основная идея работы в том, что различные методы вычисления SSM могут быть выражены как алгоритмы умножения структурированных матриц. Также авторы развили теорию линейного внимания (“Transformers are RNNs: Fast Autoregressive Transformers with Linear Attention”, https://arxiv.org/abs/2006.16236 — название текущей работы, видимо, аллюзия на эту) и обобщили результаты про его рекуррентную форму на structured masked attention (SMA). Наконец они соединили SSM и SMA, показав, что у них есть большое пересечение где они двойственны друг другу и по сути являются моделью, выражаемой одной и той же функцией. Также доказали, что любой kernel attention method с быстрой рекуррентной формой должен быть SSM.

В этой статье на 52 страницы много математики, я пока ещё не углублялся, но авторы написали прекрасную серию постов, которую можно читать вместо статьи:

Часть 1: В целом про SSD модель (https://goombalab.github.io/blog/2024/mamba2-part1-model/)\
Часть 2: Теория с математическим разбором фреймворка SSD (https://goombalab.github.io/blog/2024/mamba2-part2-theory/)
Часть 3: Алгоритмическая часть и код (https://goombalab.github.io/blog/2024/mamba2-part3-algorithm/)
Часть 4: Оптимизации на уровне системы для large-scale training, файнтюнинга и инференса (https://goombalab.github.io/blog/2024/mamba2-part4-systems/)

Оригинальная Мамба была selective SSM (S6) с диагональной структурой. SSD идёт ещё дальше и ограничивает диагональ матрицы A, теперь все элементы должны иметь одинаковые значения (то есть это скаляр умноженный на единичную матрицу). Старая Mamba применялась к каждому входному каналу отдельно, новая обрабатывает сразу много каналов (например 64) одной общей рекуррентностью. Это повышает вычислительную эффективность и даёт более быстрое обучение. При этом теоретически у Mamba-2 меньшая выразительность, чем у Mamba-1, и первая Мамба также может быть лучше в инференсе. Это всё пока не изучалось и ждёт своих исследователей.

Фреймворк позволяет перенести устоявшиеся для внимания техники на архитектуры SSM и реализовать аналоги голов (MHA) в SSM. Также архитектура блока сети (Mamba блок, https://www.group-telegram.com/ar/gonzo_ML.com/2153) слегка изменена относительно SSM. Появляется grouped-value attention в структуре голов и все data-dependent проекции (параметры A,B,C в SSM) теперь получаются параллельно со входом X, а не последовательно как раньше. Реализованы разные оптимизации, в частности модель сделана Tensor Parallelism-friendly.



group-telegram.com/gonzo_ML/2718
Create:
Last Update:

[Mamba-2] Transformers are SSMs: Generalized Models and Efficient Algorithms Through Structured State Space Duality
Tri Dao, Albert Gu
Статья: https://arxiv.org/abs/2405.21060
Код: https://github.com/state-spaces/mamba
Блог: https://goombalab.github.io/blog/2024/mamba2-part1-model/
Твиттер-тред: https://x.com/_albertgu/status/1797651223035904355

Transformers are RNNs/SSMs

Краткий формат. Авторы Mamba (https://www.group-telegram.com/ar/gonzo_ML.com/2148) выпустили обновлённую версию своей модели, Mamba-2. У неё вектор состояния большего размера (16 -> 256), при этом она в два раза быстрее обучается, а её код проще (30 строк).

Старая Мамба была хороша, но авторы не были полностью удовлетворены. Во-первых, механизмы внимания оставались где-то за пределами парадигмы SSM, а было бы интересно их как-то объединить. Во-вторых, хоть Мамба и была уже достаточно быстра (с эффективной имплементацией через selective scan), всё равно она уступала по вычислительной эффективности механизму внимания и перемножению матриц.

Авторы подошли к проблеме фундаментально и предложили фреймворк под названием structured state space duality (SSD), который объединяет structured SSM и варианты внимания в новом SSD слое. Показана эквивалентность SSM и семейства структурированных матриц под названием semiseparable matrices. Основная идея работы в том, что различные методы вычисления SSM могут быть выражены как алгоритмы умножения структурированных матриц. Также авторы развили теорию линейного внимания (“Transformers are RNNs: Fast Autoregressive Transformers with Linear Attention”, https://arxiv.org/abs/2006.16236 — название текущей работы, видимо, аллюзия на эту) и обобщили результаты про его рекуррентную форму на structured masked attention (SMA). Наконец они соединили SSM и SMA, показав, что у них есть большое пересечение где они двойственны друг другу и по сути являются моделью, выражаемой одной и той же функцией. Также доказали, что любой kernel attention method с быстрой рекуррентной формой должен быть SSM.

В этой статье на 52 страницы много математики, я пока ещё не углублялся, но авторы написали прекрасную серию постов, которую можно читать вместо статьи:

Часть 1: В целом про SSD модель (https://goombalab.github.io/blog/2024/mamba2-part1-model/)\
Часть 2: Теория с математическим разбором фреймворка SSD (https://goombalab.github.io/blog/2024/mamba2-part2-theory/)
Часть 3: Алгоритмическая часть и код (https://goombalab.github.io/blog/2024/mamba2-part3-algorithm/)
Часть 4: Оптимизации на уровне системы для large-scale training, файнтюнинга и инференса (https://goombalab.github.io/blog/2024/mamba2-part4-systems/)

Оригинальная Мамба была selective SSM (S6) с диагональной структурой. SSD идёт ещё дальше и ограничивает диагональ матрицы A, теперь все элементы должны иметь одинаковые значения (то есть это скаляр умноженный на единичную матрицу). Старая Mamba применялась к каждому входному каналу отдельно, новая обрабатывает сразу много каналов (например 64) одной общей рекуррентностью. Это повышает вычислительную эффективность и даёт более быстрое обучение. При этом теоретически у Mamba-2 меньшая выразительность, чем у Mamba-1, и первая Мамба также может быть лучше в инференсе. Это всё пока не изучалось и ждёт своих исследователей.

Фреймворк позволяет перенести устоявшиеся для внимания техники на архитектуры SSM и реализовать аналоги голов (MHA) в SSM. Также архитектура блока сети (Mamba блок, https://www.group-telegram.com/ar/gonzo_ML.com/2153) слегка изменена относительно SSM. Появляется grouped-value attention в структуре голов и все data-dependent проекции (параметры A,B,C в SSM) теперь получаются параллельно со входом X, а не последовательно как раньше. Реализованы разные оптимизации, в частности модель сделана Tensor Parallelism-friendly.

BY gonzo-обзоры ML статей


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

Share with your friend now:
group-telegram.com/gonzo_ML/2718

View MORE
Open in Telegram


Telegram | DID YOU KNOW?

Date: |

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. Telegram users are able to send files of any type up to 2GB each and access them from any device, with no limit on cloud storage, which has made downloading files more popular on the platform. Perpetrators of these scams will create a public group on Telegram to promote these investment packages that are usually accompanied by fake testimonies and sometimes advertised as being Shariah-compliant. Interested investors will be asked to directly message the representatives to begin investing in the various investment packages offered. Under the Sebi Act, the regulator has the power to carry out search and seizure of books, registers, documents including electronics and digital devices from any person associated with the securities market. Channels are not fully encrypted, end-to-end. All communications on a Telegram channel can be seen by anyone on the channel and are also visible to Telegram. Telegram may be asked by a government to hand over the communications from a channel. Telegram has a history of standing up to Russian government requests for data, but how comfortable you are relying on that history to predict future behavior is up to you. Because Telegram has this data, it may also be stolen by hackers or leaked by an internal employee.
from ar


Telegram gonzo-обзоры ML статей
FROM American