rizzearch
1.01K subscribers
988 photos
11 videos
320 links
Кайфули на каждый день

Авторы:
@zzmtsvv
@maxnygma (AI4Science посты)
Download Telegram
Differential Transformer

another attempt to улучшить трансформер более-менее простым способом

итак, ребятки из майкрософт и tsinghua решили тоже призадуматься насчет того, что аттеншн может “аттендиться” на нерелевантные токены по его построению (о чем мы уже успели упомянуть здесь и здесь) и убрать этот “шум”

но идея простая (и не факт, что масштабируемая) - давайте просто фиттить две аттеншн мапы вместо одной, будем брать разницу между ними, которая интуитивно должна оставлять аттеншн только самым информативным токенам и нивелировать вышеупомянутый ишью

но так просто из-под коробки у них это не завелось - пришлось добавлять 4 обучаемых вектора, которые в совокупности составляли коэф для регуляризации в разнице между аттн мапами (см картинки есчо)

так еще и добавили то, что назвали lambda_init, который очень жестко подогнали, несмотря на то, что зависит от глубины слоя. в общем довольно прикольно, но встает оч много вопросов по поводу стабильности и потенциала этой темки

по скейлу - модельки от 830м до 13б, что относительно немного. очень вероятно, что подогнанные числа (типа тех дробных в lambda_init) не будут подходить под больший скейл (а может и вообще никакие не будут подходить, если проблема лишнего аттенда токенам присутствует в меньшей степени в бОльших моделях)

👀LINK
🔥2
Engaging in Personally Meaningful Activities is Associated with Meaning Salience and Psychological Well-being.

Если я чего-то не делаю, кто сделает за меня? И если не делаю прямо сейчас, то когда же? Но если я делаю это лишь ради себя — то кто же я?

Воля к смыслу
Виктор Франкл


исследование 2019 года, которое показывает, что у участников оного удовлетворенность жизнью и настроение были на пике тогда, когда они занимались вещами, которые, по их мнению, наполняли жизнь смыслом (meaningful). но так же верно было и обратное: чем меньше смысла, тем меньше вероятность счастья

(рофло)таблицу с 10 наиболее важными и значимыми делами прикладываем.

👀LINK
9
Do Transformers Really Perform Bad for Graph Representation?

Сегодня посмотрим на один из способов использования трансформера для графов - Graphormer. Статья строит себя на идеи использовать структурные признаки графа в аттеншене. В GNN у нас есть разные структурные признаки, которые неявно появляются из-за механизма message passing. В трансформерах, которые моделируют fully-connected граф такого нет

1️⃣ Centrality Encoding. Это просто степень вершины графа. Если граф направленный, то отдельно считаются in-degree и out-degree. Эта фича просто прибавляется к фичам вершин перед обработкой. Такая добавка нужна для учета важности отдельных вершин с большим количеством соседей в графе

2️⃣ Spatial Encoding. Он нужен чтобы модель понимала, что каждая вершина может взаимодействовать с другой, и это взаимодействие зависит от их позиции. Делается это с помощью обучаемой функции, которая на входе получает дистанцию самого короткого пути между вершинами i и j и отдает скаляр как bias перед расчетом softmax в аттеншене

3️⃣ Edge Encoding. Для кодирования ребер делают следующее. Берут один из кратчайших путей между вершинами i и j и считают среднее скалярное произведение фичей ребра и обучаемых весов. Такая идея позволяет обощить информацию ребер на весь граф. Полученный скаляр также прибавляют как bias в аттеншене

Также из деталей имплементации авторы используют виртуальную вершину VNode, которая соединена со всеми вершинами и служит аналогом CLS токена. Кстати, такая штука в GNN может привести в размытию репрезнтаций, про которое мы позже расскажем. Как и во многих статьях про трансформеры для графов, в Graphormer показывают, что их модель более экспрессивна, чем 1-WL тест, которым ограничен классический message passing

Эксперименты проводились на задаче регрессии квантово-химических свойств в бенчмарке OGB-LSC (PCQM4M-LSC). Бьет разные варианты GNN и ванильный Graph Transformer, который юзает Лапласиан для структурный признаков + другие графовые датасеты

🤕Проблемы. Метод не без минусов. Во-первых мы помним про квадратичную сложность классического аттеншена. Во-вторых про отсутствие важных индуктивных признаков для молекул и материалов (скажем эквивариантности или учета периодичности кристаллической решетки). Не удивительно, что на химических и физических задачах Graphormer быстро побили

👀 LINK
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥6
ReLIC: A Recipe for 64k Steps of In-Context Reinforcement Learning for Embodied AI

ин-контекст рл шагает дальше и идет в усложнение тасок, особенно для embodied агентов. а с усложнениями тасок усложняется обучение и требование по длине контекста трансформера (при том многократно)

и получилось у авторов завести такое с введением синк кв (при том сделали это наивно, заменяя первые токены в форварде на синк токены, мб лучшего способа и нет) + ввели понятие “partial updates”, когда полиси обновляется несколько раз за роллаут (периодически, с заранее выбранным гиперпараметром)

код построен на базе habitat и как будто бы много где довольно грязный, пока в нем разбираешься - начинает постепенно мерещиться Апостол Павел

однако, тот факт что они смогли расширить контекст до 64к токенов - скорее всего правда и есть очень круто, а еще так же им получилось без оптимальных действий показать, что ин-контекст способности все равно появляются (но об этом уже был подробный эвиденс здесь)

почему-то решили не прогонять бейзлайны и вставили просто результаты из папиры про DPT, где конечно дпт все обыгрывает, что супер странно (почему бы не поднять бейзлайны самим, как и желательно?)

и в завершение небольшое уточнение по поводу официальной реализации дпт - основная идея заключается в рандомном сборе контекста трансформера для повышения диверсити → появляется генерализация на таски и ин-контекст способности. из-за рандомности контекста, однако, стоит выключать позиционное кодирование (потому что оно не имеет смысла), о чем много раз авторы упоминали в статье. трансформер их - гпт2 из хф, где на уровне форварда модели врубаются поз энкодинг, можно было бы наверное некрасиво как-то это выключить, но авторы этого не сделали. а вот где сделано по базе, так это у дуно

👀LINK
👍2
softmax is not enough (for sharp out-of-distribution)

“Energy continuously flows from being concentrated
To becoming dispersed, spread out, wasted and useless.”— The 2nd Law:
Unsustainable, by Muse


именно так начинают конклюжн авторы своей статьи, где достаточно подробно показывают, что софтмаксу (который происходит в аттеншне) становится бо-бо при увеличении длины контекста

а именно при увеличении сек лена (до такой степени, которая превышает максимальную длину на трейне) значения начинают размываться и терять смысл при том самом аттенде токенов (кстати, похожую концепцию наблюдали и здесь), а это особенно критично, как подмечает дипмаинд, для ризонинг систем и любых других, где есть аналогия с sharp/hard decisions

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

помимо toy example такое же наблюдается и на гемме 2б на других задачках, где есть необходимость в жестком/остром аттенде информации по токенам ⇒ и авторы это связывают с необходимостью в создании адаптивной температуры (которую топорно пытались недавно сделать китайцы)

в целом интересная работа + предлагают интересное решение через полиномиал фит адаптивной температуры (решение кнш не скейлится, да и авторы сами про это говорят + уточняют, как они с этим сильно долбились на гемме, но все равно прикольно получилось)

👀LINK

подслушано здесь
2👍2
Round and Round We Go! What makes Rotary Positional Encodings useful?

так уж получилось, что RoPE часто используют в ллмках - идея “ротейта” векторов q & k друг от друга в соответствии с их расстоянием друг от друга интуитивно понятна, так еще и на практике работает неплохо. а чтобы работала еще лучше, приправляют это все поворотом не на один угол, а на много (которые характеризуются диапазоном частот для пущей генерализации и надежности, что эта модификация выстрелит)

но если копнуть чуть глубже, то представление о роуп было такое, что он уменьшает коэфы аттеншна с увеличением расстояния между токенами (аналогично такое делает алиби). однако, как вывели авторы, все не так просто, а даже интереснее (по крайней мере на скейле моделей 2б и 7б, но скорее всего эта концепция присутствует во всех ллмках)

в первую очередь, они выяснили, что далеко не всегда происходит дикей активаций с варьированием расстояния, а только в специальных случаях, например, при константных запросах и ключах, что не оч практично. гораздо практичнее представлять q & k какими-то случайными величинами, и тогда никакого дикея нет

а вот основной инсайт заключается в том, что с роупом на разных уровнях частот выстраиваются аттеншн мапы под разные паттерны - как под (1) позиционные, так и (2) семантические. при том роуп помогает выстраивать (1) лучше в сравнении с отсутствием ванильного поз энкодинга и присутствием только каузальной маски (да, при таком сетапе трансформер все равно выучивает позиционную информацию)

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

но их немного. а основная “масса аттеншна” складывается вокруг низких частот, где появляются семантические аттеншн головы (2) (интуиция: поворот векторов незначителен, что позволяет сосредоточиться на смысле). и этим эвиденсом авторы, кстати, объясняют, почему в лламе 3 авторы сделали самую низкую частоту намного меньше с привычным гипером (1/10k → 1/500k)

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

👀LINK

inspired by this
👍5🔥22
Directional Message Passing for Molecular Graphs

rizzearch throwback

Сегодня узнаем, как можно улучшить молекулярные репрезентации с помощью модели DimeNet. Авторы из замечательного университета Мюнхена в 2020 сделали новый способ предсказания квантовых свойств молекул с помощью информации об углах в триплетах атомов. Давайте погрузимся в детали

Мы уже писали про фундаментальную модель для молекулярных репрезентаций - SchNet. Эта модель добивалась инвариантных латентов через использование попарных расстояний в message passing. Однако, потенциальная энергия зависит от сразу нескольких составляющих: зависимости от длины связи, от угла между связями, от показателя кручения связи и от неявных связей типо электростатических взаимодействий или сил Ван-дер-Ваальса. Авторы решают частично проблему, добавляя информацию об углах

🏹 Во-первых, эмбеддинги в DimeNet исходят из месседжа между двумя атомами, а не из их отдельных фичей. Это сделано, потому что такая параметризация позволяет получить эквивариатность к поворотам, т.е к группе SO(3). Это важно, так как, не смотря на то, что мы хотим иметь инвариатные предсказания энергии, обычный граф по радиусу не дает возможности отличить молекулы одинаковые по расстояниям внутри этого радиуса

💫 Для дополнительных индуктивных признаков, авторы не просто используют углы и расстояния, а представляют их через сферичесике функции Бесселя и сферические гармоники. Апдейт месседжей делается по набору входящих месседжей от соседей. Стоит также учитывать, что несмотря на более богатые геометрические признаки, сложность модели стала O(nk^2) вместо O(nk)

По экспериментам, модель обгоняет SchNet, MEGNet и другие топовые модели на тот момент. Набор экспов стандартный - регрессия (QM9) и молекулярная динамика (MD17)

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

👀 LINK
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
42
Transformers are SSMs: Generalized Models and Efficient Algorithms Through Structured State Space Duality

читала ли ты на ночь про связь между трансформерами и ссм, Дездемона?


мы уже писали про альтернативные трансформеру методы (здесь и здесь, здесь и здесь, и даже здесь). но не писали про мамбу

Три Дао и Альберт Гу решили продолжить развивать мамбу и выкатили мамбу-2, где SSM заменился на SSD (state space duality)

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

в общем стейт спейс модели сводятся к матрикс миксерам с semiseparable matrices (которые предоставляют сами по себе широкий выбор структуризации, ибо их прикол состоит в том, что они нижнетреугольные и что каждая подматрица в них лоуранговая). здесь они обогащают понятие каузальной маски, которая участвует в финальном аутпуте вместе с линейным аттеншном

при том в стейт спейс моделях, в матричной формулировке, эта каузальная маска L так же включает в себя относительное позиционное кодирование, которое зависит от инпута - тот самый селективный скан в мамбе, завязанный на матрице А. матрица же А отвечает за структурированную проекцию предыдущего хидден стейта на хидден в конкретном таймтсепе, обычно ее делали диагональной, но в ссд теперь она представляется identity * some_scalar (то есть ее можно представить просто в виде скаляра)

и такая потеря в вариативности повышает efficiency. но как быть с потерей качества? поскольку проведены аналогии с аттном, то и мы можем попробовать взять оттуда концепции и применить их на ссд, как те же разные головы аттеншна, вычисления по которым можно распараллелить ⇒ повышаем капасити модели (при том намного по сравнению с обычной мамбой, ибо в ее случае была одна голова с меньшей размерностью, чем это позволяет мамба-2). а так получается можно между ссд и аттеншн терминами провести следующий мэтч:

(A, C, B, X) → (L, Q, K, V), где Х - инпут

так же авторы обобщают концепцию мульти-хеда на multi-query/key/value attention. как оказывается, эффективный тип ssm можно по-другому назвать как multi-value attn

помимо этого архитектуру можно свести на привычный мульти-гпу сетап и иметь только один all-reduce блок, как и аттн. разве что нормировку надо заменять на групп норму и ставить количество групп = tensor parallelism degree (чтобы не замедлять вычисления) + блочное разбиение матриц и все такое

в папире становится жоско быстрее стандартной мамбы, да и даже флеш аттеншн перегоняет при сек лене ≥ 2k

есть неявное замечание, что авторы видимо четко осознали, что раз ссм можно свести только к линейному аттеншну, который может превосходить софтмакс аттеншн только на скейле моделек до ~= 7б, то и нет смысла превзойти ванильный аттн и есть резон только превосходить linear attention-like архитектуры по efficiency и перформансу (что в каком-то смысле очень даже уважаемо)

итого - табличное сравнение по памяти и скорости на последней картинке, мамба-2 старается привнести объединение бенефитов из двух миров аттеншна и ссм. мб займет свою нишу на модельках относительно небольшого скейла

👀LINK
3🔥1