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

Авторы:
@zzmtsvv
@maxnygma (AI4Science посты)
Download Telegram
SchNet – A Deep Learning Architecture for Molecules and Materials

rizzearch throwback

👌 Сегодня база и статья для олдов. Одна из первых GNN для молекул и материалов. Давайте разберемся как она работает

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

Для того, чтобы сгенерировать фильтр, используются попарные расстояния между атомами и радиально-базисную функцию (RBF). Здесь есть два важных инсайта
1️⃣ Попарные расстояние гарантируют инвариантность относительно поворотов. Это очень важно в задачах физики и химии, где скалярные свойства молекулы сохраняются вне зависимости от ее ориентации
2️⃣ RBF расширение позволяет изучить максимально разнообразные связи между атомами. Какой-то фильтр будет использовать атомы близкие к друг другу, а другой далекие - это диверсифицирует признаки. Это лучше всего понять, если взглянуть на выученные фильтры

Если же мы хотим работать с периодическими системами (кристаллами 💎💎💎), то нам нужно учитывать periodic boundary conditions. Делается это, через cutoff радиус - базовый метод как построить граф кристаллической решетки. Однако у этого метода есть огромные проблемы, про которые мы расскажем в будущем ⭕️

Эксперименты делались на крутом (на то время) датасете с квантовыми характеристиками молекул QM9. Сейчас, конечно, это очень маленький датасет и современные модели могут на нем даже не сойтись. Как бонус визуализируют химические потенциалы, предсказанные нейронкой

👁 Как вы поняли, в @rizzearch теперь будут статьи про ML + физика/химия, поэтому зовите своих друзей - будет интересно

👀 LINK
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
4🔥4👍2
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