Cosmos World Foundation Model Platform for Physical AI
нвидиа в январе анонсировала Cosmos платформу для около фаундейшн-физикал-ворлд-модель суеты, сейчас у них дошли руки расписать, как они такое получили и что это в принципе из себя представляет
конкретно эта работа нацелена на фаундейшн ворлд модель (в последний раз мы писали про масштабные модели мира здесь), которая может генерить динамику реального мира тем или иным образом. получилось очень большое семейство авторегрессивных и диффузионных моделей
но на чем учить? хз, видимо другой опции как 10^8 + 10^7 клипов (для претрена и файнтюна соответственно) у авторов не было. а получили они их из 20 млн видосов разного качества (от 720р до 4к), сами же клипы получились долгим путем обработки
- scene segmentation
- фильтрация на движения, качество, отсутствие перекрывающего текста и тд
- аннотация при помощи VLM
- deduplication
по категориям - от вождения, человеческого движения и активности, nature dynamics до вида от первого лица, динамического движения камеры и тп. собрали все примерно сбалансированно
как в диффузии так и в decoder-only трансформерах для генерации видеокадров используют токенизаторы. ну и авторы в этом месте тоже выпускают свое семейство
- с дискретными токенами (на основе FSQ)
- и непрерывными (на основе ванильного автоэнкодера)
- при том везде в архитектурах есть вейвлет преобразование с темпоральными каузальными свертками и аттеншном
при том виды таких квантизаций, видимо, выбраны таким образом, чтобы не добавлять дополнительных слагаемых в финальный лосс при обучении моделей (ни кл терма например в случае VAE или коммитмент лосса в случае дефолтного VQ-VAE для непрерывного и дискретного случаев соответственно). а обучались эти токенизаторы на reconstruction loss + еще авторы добавили лоссы на optical flow & матрицу грама
для диффузии (помимо того что есть на картинках)
- непрерывные токены (хотя дискретные присутствуют и при обучении)
- не флоу матчинг, а диффьюжн скор (как из EDM) для DiT
- prompt upsampler
- mixed precision
- fsdp + context parallelism
декодер-онли трансформеры
- обучаемый softmax scaling factor
- z-loss как дополнительный терм чтобы логиты по магнитудам были не слишком большими
- tensor parallelism + sequence parallelism
- medusa на инференсе как вид спекулятивного декодинга
так же авторы еще пробовали файнтюнить
- под камера контрол, где надо генерить сцены в соответствии с дополнительным инпутом о положении камеры
- на роботику (кондишн на совершение действий)
- беспилотное вождение, где создают траекторию движения с 6 разными ракурсами (как будто камеры наклеены на настоящую тачку)
помимо метрик типа ошибки сэмпсона, LPIPS или 3д консистенси авторы еще решили прочекать как хорошо модели понимают физику (потому что вся вот эта космическая суета в принципе под эгидой Physical AI развивается) в сравнении и isaac sim в плане падения и движения предметов
пока авторы отмечают, что все так же присутствует проблема с физикой жидкости, гравитацией и светом в более широких сценариях (тут лучше ответить смогут кто непосредственно работает с видеогенерацией)
так же второй из трех подпроектов космоса основывается на этих моделях - Cosmos-Transfer1, где происходит sim2real генерация из разных модальностей (сегментация, карта глубины и edge maps) в видео реальности
👀 link, code
нвидиа в январе анонсировала Cosmos платформу для около фаундейшн-физикал-ворлд-модель суеты, сейчас у них дошли руки расписать, как они такое получили и что это в принципе из себя представляет
конкретно эта работа нацелена на фаундейшн ворлд модель (в последний раз мы писали про масштабные модели мира здесь), которая может генерить динамику реального мира тем или иным образом. получилось очень большое семейство авторегрессивных и диффузионных моделей
но на чем учить? хз, видимо другой опции как 10^8 + 10^7 клипов (для претрена и файнтюна соответственно) у авторов не было. а получили они их из 20 млн видосов разного качества (от 720р до 4к), сами же клипы получились долгим путем обработки
- scene segmentation
- фильтрация на движения, качество, отсутствие перекрывающего текста и тд
- аннотация при помощи VLM
- deduplication
по категориям - от вождения, человеческого движения и активности, nature dynamics до вида от первого лица, динамического движения камеры и тп. собрали все примерно сбалансированно
как в диффузии так и в decoder-only трансформерах для генерации видеокадров используют токенизаторы. ну и авторы в этом месте тоже выпускают свое семейство
- с дискретными токенами (на основе FSQ)
- и непрерывными (на основе ванильного автоэнкодера)
- при том везде в архитектурах есть вейвлет преобразование с темпоральными каузальными свертками и аттеншном
при том виды таких квантизаций, видимо, выбраны таким образом, чтобы не добавлять дополнительных слагаемых в финальный лосс при обучении моделей (ни кл терма например в случае VAE или коммитмент лосса в случае дефолтного VQ-VAE для непрерывного и дискретного случаев соответственно). а обучались эти токенизаторы на reconstruction loss + еще авторы добавили лоссы на optical flow & матрицу грама
для диффузии (помимо того что есть на картинках)
- непрерывные токены (хотя дискретные присутствуют и при обучении)
- не флоу матчинг, а диффьюжн скор (как из EDM) для DiT
- prompt upsampler
- mixed precision
- fsdp + context parallelism
декодер-онли трансформеры
- обучаемый softmax scaling factor
- z-loss как дополнительный терм чтобы логиты по магнитудам были не слишком большими
- tensor parallelism + sequence parallelism
- medusa на инференсе как вид спекулятивного декодинга
We train all of the WFM models reported in the paper using a cluster of 10,000 NVIDIA H100 GPUs in a time span of three months.
так же авторы еще пробовали файнтюнить
- под камера контрол, где надо генерить сцены в соответствии с дополнительным инпутом о положении камеры
- на роботику (кондишн на совершение действий)
- беспилотное вождение, где создают траекторию движения с 6 разными ракурсами (как будто камеры наклеены на настоящую тачку)
помимо метрик типа ошибки сэмпсона, LPIPS или 3д консистенси авторы еще решили прочекать как хорошо модели понимают физику (потому что вся вот эта космическая суета в принципе под эгидой Physical AI развивается) в сравнении и isaac sim в плане падения и движения предметов
пока авторы отмечают, что все так же присутствует проблема с физикой жидкости, гравитацией и светом в более широких сценариях (тут лучше ответить смогут кто непосредственно работает с видеогенерацией)
так же второй из трех подпроектов космоса основывается на этих моделях - Cosmos-Transfer1, где происходит sim2real генерация из разных модальностей (сегментация, карта глубины и edge maps) в видео реальности
👀 link, code
Multi-Fidelity Policy Gradient Algorithms
если вы углублялись в концепцию полиси градиентов (ппо или рейнфорс например), то сталкивались с вопросом разброса такого обжектива, о чем уже достаточно давно говорят
еще критичнее это становится в относительно дорогих симуляторах (или же вообще непосредственно в реальном мире) с данными “высокого разрешения/точности”: из-за дисперсии надо дольше учиться, дольше гонять симулятор подороже, который еще и больше чувствителен к предиктивным ошибкам
но что если у нас есть возможность получать обедненные данные в бОльшем количестве (иначе смысла нет), так называемых low-fidelity environments, может ли это как-то помочь снизить нам разброс в градиент апдейтах?
и вот авторы смогли примерно что-то такое сделать из такого предположения. полиси обучаются при помощи high- & low-fidelity энвах, при том для обновления на более точных данных используется поправка с контрольной переменной, где вычитается скоррелированное слагаемое из основного приближения полиси градиента. и поскольку обедненная энва предполагает и того же агента, и примерно ту же динамику среды, то корреляцию можно считать выполненной (при том чем выше коррреляция тем сильнее эффект снижения дисперсии что интуитивно понятно)
обучали в такой манере рейнфорс и ппо - по результатам выглядит все довольно вкусно
- в 10 раз меньше можно использовать семплов из более крутой энвы по сравнению с бейзлайнами
- обучение становится стабильнее (просто потому что данных можно побольше нафигачить хоть и качества похуже)
- однако для скоррелированости нужно, чтобы у действий для обоих сред было одинаковое вероятностное пространство, то есть семплить действия в соответствии с одинаковым сидом (для непрерывных действий этому помогает reparametrization trick, для дискретных - Gumbel-max)
однако есть как раз-таки нюанс с вот этим low-fidelity энвами
- в качестве экспериментов обедненные среды делали просто упрощенными версиями таргет сред
- для картпола (который определяется диффуром второго порядка) - линеаризовали динамику
- для муджоко - инвертнули ревард, сохраняли 70%-90% гравитации изначальной среды
и по идее да, это более лайтовые энвы, но например в случае муджоко симуляция получается не прям дешевой-дешевой (из govna конфетку не получить). если же в качестве low-fidelity брать что-то совсем игрушечное, то корреляция между средами (спекулирую) сильно полетит и результаты могут получаться даже хуже бейзлайнов имхо (присказка для future work)
👀LINK
если вы углублялись в концепцию полиси градиентов (ппо или рейнфорс например), то сталкивались с вопросом разброса такого обжектива, о чем уже достаточно давно говорят
еще критичнее это становится в относительно дорогих симуляторах (или же вообще непосредственно в реальном мире) с данными “высокого разрешения/точности”: из-за дисперсии надо дольше учиться, дольше гонять симулятор подороже, который еще и больше чувствителен к предиктивным ошибкам
но что если у нас есть возможность получать обедненные данные в бОльшем количестве (иначе смысла нет), так называемых low-fidelity environments, может ли это как-то помочь снизить нам разброс в градиент апдейтах?
и вот авторы смогли примерно что-то такое сделать из такого предположения. полиси обучаются при помощи high- & low-fidelity энвах, при том для обновления на более точных данных используется поправка с контрольной переменной, где вычитается скоррелированное слагаемое из основного приближения полиси градиента. и поскольку обедненная энва предполагает и того же агента, и примерно ту же динамику среды, то корреляцию можно считать выполненной (при том чем выше коррреляция тем сильнее эффект снижения дисперсии что интуитивно понятно)
обучали в такой манере рейнфорс и ппо - по результатам выглядит все довольно вкусно
- в 10 раз меньше можно использовать семплов из более крутой энвы по сравнению с бейзлайнами
- обучение становится стабильнее (просто потому что данных можно побольше нафигачить хоть и качества похуже)
- однако для скоррелированости нужно, чтобы у действий для обоих сред было одинаковое вероятностное пространство, то есть семплить действия в соответствии с одинаковым сидом (для непрерывных действий этому помогает reparametrization trick, для дискретных - Gumbel-max)
однако есть как раз-таки нюанс с вот этим low-fidelity энвами
- в качестве экспериментов обедненные среды делали просто упрощенными версиями таргет сред
- для картпола (который определяется диффуром второго порядка) - линеаризовали динамику
- для муджоко - инвертнули ревард, сохраняли 70%-90% гравитации изначальной среды
и по идее да, это более лайтовые энвы, но например в случае муджоко симуляция получается не прям дешевой-дешевой (из govna конфетку не получить). если же в качестве low-fidelity брать что-то совсем игрушечное, то корреляция между средами (спекулирую) сильно полетит и результаты могут получаться даже хуже бейзлайнов имхо (присказка для future work)
👀LINK
🔥2
Llamba: Scaling Distilled Recurrent Models for Efficient Language Processing
мы уже упоминали как картезиа дистиллирует трансформеры в ссм, правда прошлая статья вызывала некоторые вопросы с точки зрения реализации
на этот раз получилось у них еще круче - в лламе 3.1 заменили аттеншн блоки на mamba блоки и получилась лламба (1б 3б и 8б параметров)
обучали в стиле MOHAWK по разным стадиям, где в knowledge distillation манере постепенно фиттили блоки все бОльшего размера: от выхода аттеншна (ссм) до конечных логитов модели
теперь только на замену аттеншну пришел дискретный блок мамбы 2, а дискретный он потому, что получает матрицу А напрямую из инпута, без махинаций с параметров дельта (который теоретически и дискретизирует стейт спейс модели для непрерывного потока времени), потому что задача здесь заключается в дистилляции аттеншна, который умеет оперировать только над дискретными объектами (токенами). короче подогнали
ну и здесь еще есть отличие от классической мамбы 2 в том, что оригинал является multi-value, а здесь же опять из-за подгона сделали multi-head + в оверолл архитектуре получается меньше мамба 2 блоков → больше батч сайз и меньше оверхеда на лаунч кернелов
по результатам даже у 8б модели потребовалось 12б токенов чтобы выдавать сравнимый результат на дефолтных бенчмарках (намного меньше (0.1%) чем у других гибридных или около того методов, из интересного есть еще наверное lolcats от Christopher Re, которые сворачивают софтмакс аттеншн в линейный через свд разложения)
еще через MLX погоняли модели на айфоне и макбуке что прикольно
судя по всему этот стартап в ближайшее время будет показывать много интересного своими on-device подходами
👀 link, code
Аттеншн - та же добыча радия.
В грамм добыча - в год труды.
Изводишь единого токена ради
Тысячи тонн словесной руды.Маяковский (Поэзия - та же добыча радия)
мы уже упоминали как картезиа дистиллирует трансформеры в ссм, правда прошлая статья вызывала некоторые вопросы с точки зрения реализации
на этот раз получилось у них еще круче - в лламе 3.1 заменили аттеншн блоки на mamba блоки и получилась лламба (1б 3б и 8б параметров)
обучали в стиле MOHAWK по разным стадиям, где в knowledge distillation манере постепенно фиттили блоки все бОльшего размера: от выхода аттеншна (ссм) до конечных логитов модели
теперь только на замену аттеншну пришел дискретный блок мамбы 2, а дискретный он потому, что получает матрицу А напрямую из инпута, без махинаций с параметров дельта (который теоретически и дискретизирует стейт спейс модели для непрерывного потока времени), потому что задача здесь заключается в дистилляции аттеншна, который умеет оперировать только над дискретными объектами (токенами). короче подогнали
ну и здесь еще есть отличие от классической мамбы 2 в том, что оригинал является multi-value, а здесь же опять из-за подгона сделали multi-head + в оверолл архитектуре получается меньше мамба 2 блоков → больше батч сайз и меньше оверхеда на лаунч кернелов
по результатам даже у 8б модели потребовалось 12б токенов чтобы выдавать сравнимый результат на дефолтных бенчмарках (намного меньше (0.1%) чем у других гибридных или около того методов, из интересного есть еще наверное lolcats от Christopher Re, которые сворачивают софтмакс аттеншн в линейный через свд разложения)
еще через MLX погоняли модели на айфоне и макбуке что прикольно
судя по всему этот стартап в ближайшее время будет показывать много интересного своими on-device подходами
👀 link, code
👍5
N-Gram Induction Heads for In-Context RL: Improving Stability and Reducing Data Needs
появление inductive bias следует в том числе считать за счет н-грамм паттерна в аттеншн мапах, потому авторы в прошлом году уже проворачивали явную вставку н грамм слоя в sequence модели для задачи языка
раз с ними ин-контекст способности появляются быстрее и “эффективнее” (что бы то ни значило) → может ли такое появиться в (ин-контекст) рл сетапе
ну и вот авторы заимплементили
- н грамм слой с внедрением н грамм матчинга из кода вышеупомянутой статьи (где вообще blyat ниче непонятно)
- который нативно работает в дискретном пространстве для игрушечных сред как даркрум и key-to-door. при том как матчинг на уровне state токенов, так и state-action-reward токене
- если же брать pixel-based среду (в данном случае MiniWorld), то здесь не обойтись без какой-либо дискретизации. здесь авторы реализовали в виде VQ квантизации, предобученной заранее (видимо на все том же мини ворлде)
тогда получается, что для сходимости нужно в ~30 раз меньше данных (вау! что довольно критично для ин-контекст рл) с учетом добавления двух гиперпараметров, которые несильно добавляют сложностей в переборе. в принципе вся сила экспериментального превосходства метода заключается в понятии expected maximum performance, который показывает ожидаемый максимальный перформанс при ограниченном вычислительном бюджете, нежели просто черри пик
теперь к непонятным моментам (много собственных предположений и спекуляций)
- критичным в мета-рл и частности ин-контекст рл является вопрос количества эпизодов, за которое сходится к оптимальному перформансу агент. есть графики только по поводу бейзлайна → можно спекулировать, что н-граммы в этом моменте не лучше
- нету непрерывного домена + экспериментальные среды являются довольно простыми в сравнении с остальными (на что авторы и сами указали). видимо не скейлится. но почему?
- может не так просто далось обучение резнета (который упоминается в статье), к кому самому возникает вопрос: почему он? там есть много моментов, в том числе и батчнорм, которые считаются out-of-fashion либо же оптимизированы под частные случаи
- либо же какой-то сбой дает сама векторная квантизация: происходит ли в используемости кодбука какие траблы в плане утилизации или разреженности
👀 link, где код лебовски
появление inductive bias следует в том числе считать за счет н-грамм паттерна в аттеншн мапах, потому авторы в прошлом году уже проворачивали явную вставку н грамм слоя в sequence модели для задачи языка
раз с ними ин-контекст способности появляются быстрее и “эффективнее” (что бы то ни значило) → может ли такое появиться в (ин-контекст) рл сетапе
ну и вот авторы заимплементили
- н грамм слой с внедрением н грамм матчинга из кода вышеупомянутой статьи (где вообще blyat ниче непонятно)
- который нативно работает в дискретном пространстве для игрушечных сред как даркрум и key-to-door. при том как матчинг на уровне state токенов, так и state-action-reward токене
- если же брать pixel-based среду (в данном случае MiniWorld), то здесь не обойтись без какой-либо дискретизации. здесь авторы реализовали в виде VQ квантизации, предобученной заранее (видимо на все том же мини ворлде)
тогда получается, что для сходимости нужно в ~30 раз меньше данных (вау! что довольно критично для ин-контекст рл) с учетом добавления двух гиперпараметров, которые несильно добавляют сложностей в переборе. в принципе вся сила экспериментального превосходства метода заключается в понятии expected maximum performance, который показывает ожидаемый максимальный перформанс при ограниченном вычислительном бюджете, нежели просто черри пик
теперь к непонятным моментам (много собственных предположений и спекуляций)
- критичным в мета-рл и частности ин-контекст рл является вопрос количества эпизодов, за которое сходится к оптимальному перформансу агент. есть графики только по поводу бейзлайна → можно спекулировать, что н-граммы в этом моменте не лучше
- нету непрерывного домена + экспериментальные среды являются довольно простыми в сравнении с остальными (на что авторы и сами указали). видимо не скейлится. но почему?
- может не так просто далось обучение резнета (который упоминается в статье), к кому самому возникает вопрос: почему он? там есть много моментов, в том числе и батчнорм, которые считаются out-of-fashion либо же оптимизированы под частные случаи
- либо же какой-то сбой дает сама векторная квантизация: происходит ли в используемости кодбука какие траблы в плане утилизации или разреженности
👀 link, где код лебовски
👍2
An Evolved Universal Transformer Memory
часто sakana.ai делает что-то интересное
недавно в transformer-squared они уже занимались махинациями с адаптацией на тест тайме, в этой же статье (которая хронологически вышла раньше) они явно размышляют над концепцией внешней памяти
и если сейчас, когда речь идет про память которая помогает адаптироваться на инференсе, в голове всплывает что-то типа недавних титанов или ТТТ. но тут авторы формулируют кв кэш (про который мы писали в последний раз здесь) как форму внешней памяти, которую можно оптимизировать, что интересно
короче говоря, статья не про мемори а про компрессию кв кэша
и реализуют они это через единую модельку всех слоев трансформера, которая выдает для каждого токена скор, оставлять ли токен в кеше или нет
- для этого они вычисляют спектрограмму (STFT) от аттеншн мап + делают EMA с гиперпараметром относительно оси времени (чтобы сжать ее). эта эвристика исходит не из какого-то profound факта, а просто потому что такая предобработка лучше всего у них заработала (по сравнению с сырым аттеншном и прочим) + еще добавляют поз эмбеды на основании “старости” каждого токена в кв кеше
- и затем эти фичи идут на вход модели, где работает Backward Attention Memory - аттеншн с не нижне-, а верхнетреугольной каузальной маской, таким образом эта внешняя легкая моделька настроена “в противоположном плане” фиттить свой аттеншн по сравнению с трансформером, что в совокупности должно давать прирост + есть резидуал коннекшны
- периодически эта модель выдает скоры, какие токены откидывать из кэша. сама же она обучалась при помощи эволюционного алгоса CMA-ES, который безградиентно обучает эту модель на селекцию токенов
на ЛонгБенче по сравнению с бейз лламой результат получше, а кэш сильно так пониже (для конкретных чисел можете посмотреть картинки) + из интересного еще применили это для ВЛМ на зеро-шот трансфер для ЛЛаВы и РЛ для десижн трансформера (который встроен в хф и последний раз мы его упоминали здесь)
и вроде бы получается круто, что правда (немного) улучшается результат, да и в этом присутствует интерпретация отсеивания ненужных токенов. но если сравнивать на языковых задачах, то есть много моментов которые бейзлайны не превосходят да и кв кэш не так сильно по памяти снижают + на иголке в сене перформанс деградирует, а к вижн и рл моментам так же остаются открытыми вопросы проведения экспериментов и тюна моделек
еще момент требования всей аттеншп мапы сильно ставит палки в колеса использованию флеш аттеншна
в принципе работа получилась интересной еще одним примером как грамотно можно эволюционные алгоритмы юзать для ллм и это не будет выглядеть сильно странно + унификация моментов внешней памяти и кв кэша тоже хороша
👀LINK
часто sakana.ai делает что-то интересное
недавно в transformer-squared они уже занимались махинациями с адаптацией на тест тайме, в этой же статье (которая хронологически вышла раньше) они явно размышляют над концепцией внешней памяти
и если сейчас, когда речь идет про память которая помогает адаптироваться на инференсе, в голове всплывает что-то типа недавних титанов или ТТТ. но тут авторы формулируют кв кэш (про который мы писали в последний раз здесь) как форму внешней памяти, которую можно оптимизировать, что интересно
короче говоря, статья не про мемори а про компрессию кв кэша
и реализуют они это через единую модельку всех слоев трансформера, которая выдает для каждого токена скор, оставлять ли токен в кеше или нет
- для этого они вычисляют спектрограмму (STFT) от аттеншн мап + делают EMA с гиперпараметром относительно оси времени (чтобы сжать ее). эта эвристика исходит не из какого-то profound факта, а просто потому что такая предобработка лучше всего у них заработала (по сравнению с сырым аттеншном и прочим) + еще добавляют поз эмбеды на основании “старости” каждого токена в кв кеше
- и затем эти фичи идут на вход модели, где работает Backward Attention Memory - аттеншн с не нижне-, а верхнетреугольной каузальной маской, таким образом эта внешняя легкая моделька настроена “в противоположном плане” фиттить свой аттеншн по сравнению с трансформером, что в совокупности должно давать прирост + есть резидуал коннекшны
- периодически эта модель выдает скоры, какие токены откидывать из кэша. сама же она обучалась при помощи эволюционного алгоса CMA-ES, который безградиентно обучает эту модель на селекцию токенов
на ЛонгБенче по сравнению с бейз лламой результат получше, а кэш сильно так пониже (для конкретных чисел можете посмотреть картинки) + из интересного еще применили это для ВЛМ на зеро-шот трансфер для ЛЛаВы и РЛ для десижн трансформера (который встроен в хф и последний раз мы его упоминали здесь)
и вроде бы получается круто, что правда (немного) улучшается результат, да и в этом присутствует интерпретация отсеивания ненужных токенов. но если сравнивать на языковых задачах, то есть много моментов которые бейзлайны не превосходят да и кв кэш не так сильно по памяти снижают + на иголке в сене перформанс деградирует, а к вижн и рл моментам так же остаются открытыми вопросы проведения экспериментов и тюна моделек
еще момент требования всей аттеншп мапы сильно ставит палки в колеса использованию флеш аттеншна
в принципе работа получилась интересной еще одним примером как грамотно можно эволюционные алгоритмы юзать для ллм и это не будет выглядеть сильно странно + унификация моментов внешней памяти и кв кэша тоже хороша
👀LINK
❤5