SimBa: Simplicity Bias for Scaling Up Parameters in Deep Reinforcement Learning
тлдр: сонибои смогли поиграть с общепринятыми архитектурами в рл и вместо млпшки смогли вставить то, что они назвали симбой
но модификации оказались не простые, а с интуицией: задачей было получить архитектуру, которую можно скейлить более-менее без попной боли, а в рл такого не получается, с точки зрения авторов - из-за отсутствия simplicity bias (который мы упоминали здесь и здесь)
здесь они мерили симплисити биас через преобразование фурье, и пытали такое соображение - чем больше высоких частот, тем функция “сложнее” в моделировании для фурье, а чем больше низких частот, тем функция “легче”
в итоге для того, чтобы сделать функцию “проще”🥴 добавили нормализацию по бегающим статистикам (по каждому дименшну инпута, не путать с батчнормом), резидуалы и пост леернорму. можно сказать, что мало novelty, ибо такое уже давно делали в других областях, но в рл все может быть сильно нестабильнее и непонятнее (имхо) в некоторых моментах по сравнению с другими ответвлениями дл, потому и такие модификации делать не так легко
а в итоге такое норм применяется (правда какой код для бейзлайнов прогоняли не оч понятно) и для офф-полиси, и для он-полиси алгосов + помогает в ансупервайзд сетапе (который хорошо получается у Seohong Park, в последний раз мы его упоминали здесь), так еще и пластичность сохраняется
👀LINK
тлдр: сонибои смогли поиграть с общепринятыми архитектурами в рл и вместо млпшки смогли вставить то, что они назвали симбой
но модификации оказались не простые, а с интуицией: задачей было получить архитектуру, которую можно скейлить более-менее без попной боли, а в рл такого не получается, с точки зрения авторов - из-за отсутствия simplicity bias (который мы упоминали здесь и здесь)
здесь они мерили симплисити биас через преобразование фурье, и пытали такое соображение - чем больше высоких частот, тем функция “сложнее” в моделировании для фурье, а чем больше низких частот, тем функция “легче”
в итоге для того, чтобы сделать функцию “проще”🥴 добавили нормализацию по бегающим статистикам (по каждому дименшну инпута, не путать с батчнормом), резидуалы и пост леернорму. можно сказать, что мало novelty, ибо такое уже давно делали в других областях, но в рл все может быть сильно нестабильнее и непонятнее (имхо) в некоторых моментах по сравнению с другими ответвлениями дл, потому и такие модификации делать не так легко
а в итоге такое норм применяется (правда какой код для бейзлайнов прогоняли не оч понятно) и для офф-полиси, и для он-полиси алгосов + помогает в ансупервайзд сетапе (который хорошо получается у Seohong Park, в последний раз мы его упоминали здесь), так еще и пластичность сохраняется
👀LINK
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
rizzearch throwback
SchNet это GNN, которая моделирует связи между атомами, используя свертки с непрерывным фильтром. Это важно, так как в отличие от картинок, атомы могут иметь любую непрерывную позицию и ванильная дискретная обработка не подойдет
Для того, чтобы сгенерировать фильтр, используются попарные расстояния между атомами и радиально-базисную функцию (RBF). Здесь есть два важных инсайта
1️⃣ Попарные расстояние гарантируют инвариантность относительно поворотов. Это очень важно в задачах физики и химии, где скалярные свойства молекулы сохраняются вне зависимости от ее ориентации
2️⃣ RBF расширение позволяет изучить максимально разнообразные связи между атомами. Какой-то фильтр будет использовать атомы близкие к друг другу, а другой далекие - это диверсифицирует признаки. Это лучше всего понять, если взглянуть на выученные фильтры
Если же мы хотим работать с периодическими системами (кристаллами
Эксперименты делались на крутом (на то время) датасете с квантовыми характеристиками молекул QM9. Сейчас, конечно, это очень маленький датасет и современные модели могут на нем даже не сойтись. Как бонус визуализируют химические потенциалы, предсказанные нейронкой
👀 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
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
Если я чего-то не делаю, кто сделает за меня? И если не делаю прямо сейчас, то когда же? Но если я делаю это лишь ради себя — то кто же я?
Воля к смыслу
Виктор Франкл
исследование 2019 года, которое показывает, что у участников оного удовлетворенность жизнью и настроение были на пике тогда, когда они занимались вещами, которые, по их мнению, наполняли жизнь смыслом (meaningful). но так же верно было и обратное: чем меньше смысла, тем меньше вероятность счастья
(рофло)таблицу с 10 наиболее важными и значимыми делами прикладываем.
👀LINK
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
Сегодня посмотрим на один из способов использования трансформера для графов - Graphormer. Статья строит себя на идеи использовать структурные признаки графа в аттеншене. В GNN у нас есть разные структурные признаки, которые неявно появляются из-за механизма message passing. В трансформерах, которые моделируют fully-connected граф такого нет
Также из деталей имплементации авторы используют виртуальную вершину VNode, которая соединена со всеми вершинами и служит аналогом CLS токена. Кстати, такая штука в GNN может привести в размытию репрезнтаций, про которое мы позже расскажем. Как и во многих статьях про трансформеры для графов, в Graphormer показывают, что их модель более экспрессивна, чем 1-WL тест, которым ограничен классический message passing
Эксперименты проводились на задаче регрессии квантово-химических свойств в бенчмарке OGB-LSC (PCQM4M-LSC). Бьет разные варианты GNN и ванильный Graph Transformer, который юзает Лапласиан для структурный признаков + другие графовые датасеты
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
ин-контекст рл шагает дальше и идет в усложнение тасок, особенно для embodied агентов. а с усложнениями тасок усложняется обучение и требование по длине контекста трансформера (при том многократно)
и получилось у авторов завести такое с введением синк кв (при том сделали это наивно, заменяя первые токены в форварде на синк токены, мб лучшего способа и нет) + ввели понятие “partial updates”, когда полиси обновляется несколько раз за роллаут (периодически, с заранее выбранным гиперпараметром)
код построен на базе habitat и как будто бы много где довольно грязный
однако, тот факт что они смогли расширить контекст до 64к токенов - скорее всего правда и есть очень круто, а еще так же им получилось без оптимальных действий показать, что ин-контекст способности все равно появляются (но об этом уже был подробный эвиденс здесь)
почему-то решили не прогонять бейзлайны и вставили просто результаты из папиры про DPT, где конечно дпт все обыгрывает, что супер странно (почему бы не поднять бейзлайны самим, как и желательно?)
👀LINK
👍2
softmax is not enough (for sharp out-of-distribution)
именно так начинают конклюжн авторы своей статьи, где достаточно подробно показывают, что софтмаксу (который происходит в аттеншне) становится бо-бо при увеличении длины контекста
а именно при увеличении сек лена (до такой степени, которая превышает максимальную длину на трейне) значения начинают размываться и терять смысл при том самом аттенде токенов (кстати, похожую концепцию наблюдали и здесь), а это особенно критично, как подмечает дипмаинд, для ризонинг систем и любых других, где есть аналогия с sharp/hard decisions
теория, которую они приводят, достаточно простая и понятна + четко это явление видно на их игрушечном примере, где надо найти максимальный элемент у айтемов в последовательности → по аттеншн мапам надо чекать новый айтем, который находится справа. а при увеличении наблюдается и рассеивание внимания (или дисперсия, как они это красиво назвали)
помимо toy example такое же наблюдается и на гемме 2б на других задачках, где есть необходимость в жестком/остром аттенде информации по токенам ⇒ и авторы это связывают с необходимостью в создании адаптивной температуры (которую топорно пытались недавно сделать китайцы)
в целом интересная работа + предлагают интересное решение через полиномиал фит адаптивной температуры (решение кнш не скейлится, да и авторы сами про это говорят + уточняют, как они с этим сильно долбились на гемме, но все равно прикольно получилось)
👀LINK
подслушано здесь
“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