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

Авторы:
@zzmtsvv
@maxnygma (AI4Science посты)
Download Telegram
Jack of All Trades, Master of Some, a Multi-Purpose Transformer Agent

ребятам из хаггинг фейс надоело, что так мало подвижек в рле в сторону foundation models, и они решили это исправить

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

итак, что же умеет авторский мульти таск трансформер, так называемый Jack of All Trades (JAT)?

- image captioning
- (funny) language modelling
- играть хорошо в атари
- нормально перформить в муджоко
- а так же BabyAI & MetaWorld
- так же моделька может декодить картинки, но авторы не обучали ее на это

не менее (а может и даже более) важен датасет, который они выложили - модальности в виде картинок реальных, текста и многих видов обсервейшнов из рл сред для разных тасок ⇒ с такой экипировкой и to the moon недалеко 🚀

👀LINK
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4😱4
Leave No Context Behind: Efficient Infinite Context Transformers with Infini-attention

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

что же придумали авторы из гугла - давайте будем хранить в качестве памяти скользящее среднее (по сегментам) дот продакта между V и f(K), где f это какая-то нонлинеарити. затем такую память скармливаем с запросами (queries, Q) из нынешнего сегмента ⇒ получаем “аттеншн мапы” , которые потом суммируем взвешенного с обычным механизмом внимания ⇒ вот нам и бесконечный контекст, не так ли?

напоминает то, что придумали в TransformerXL, однако там история берется только по предыдущему сегменту, а не по всем, как тут. да и по сути компрессив мемори из инфини-аттеншна есть не что иное, как associative memory (которое мы упоминали здесь и здесь)

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

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

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

но если весь мой скепсис напрасен и это действительно работает - так только лучше 🙏

👀LINK

да, без лекций с индусами никуда
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👏3👍1
Looped Transformers are Better at Learning Learning Algorithms

in-context learning (ICL)—the ability to infer a conditional or unconditional distribution over natural language strings simply by performing next-token prediction following a sequence of examples from the distribution of interest.


Повторили определение авторов отсюда (оно мне нравится)

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

есть такого рода данные, которые подвержены итеративной структуре, например, learning algorithms, с которыми легко изучать и получать ICL

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

авторы решили посмотреть, а что может Looped Transformer, в котором есть итеративность (что кстати может ускорить модель из-за ее гораздно меньшего размера) ⇒ и у него получается лучше фиттиться на данных, в которых есть тенденция обучения (learning learning algorithms hehe)

who knows, может это найдет свой сильный отголосок в рл и смежных путях

👀LINK
👍52🤔2
SequenceMatch: Imitation Learning for Autoregressive Sequence Modelling with Backtracking

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

если переформулировать вопрос генерации текстовых последовательностей как марковский процесс принятия решений (MDP, выглядит уже как тренд, потому что появлялось и здесь), то можно использовать наработки из imitation learning’a, которые минимизируют другие дивергенции, не KL, штрафующие оод выходы модели более жестко

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

Furthermore, авторы ввели новый токен, который значит backspace - если модель поняла, что надо откатиться, то она может это сделать ⇒ для этого надо было подправить процесс генерации и маскирования + это не вызывает проблем с KV кешем, просто роллимся назад если что

по результатам обгоняет стандартный сетап с Maxiumum Likelihood Estimation (который соответствует КЛ дивергенции) на генерации текста и арифметике, но с небольшим оверхедом из-за возможности бекапаться

👀LINK
👍41
Model Tells You What to Discard: Adaptive KV Cache Compression for LLMs

We think, многие пользовались KV кешем (особенно при использовании флеш аттна)

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

И авторы призадумались и увидели, что не все стоит хранить в кеше (идея синонимична с этим творением)

а потому они предложили 5 видов компрессии кеширования

- хранить в кеше, относящееся к специальным токенам (<s>, [INST] etc.)
- пунктуация - . , ?
- long-range контекст
- самые частые токены в последовательностях (называется Heavy Hitter, к чему есть вопросы)
- комбинация из вышеперечисленного

и вот как раз вопрос по поводу Heavy Hitter - если хранить только самые частые токены, то как решать задачи типа needle in a haystack, где иголка будет представлять из себя редкий токен? какой вообще резон такое делать, кроме как по памяти сэкономить, если это жоско портит потенциал модели (я действительно не смекаю)

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

потенциал крутой - интересно, как такое скомбинировать квантизацией/дистилляцией и с другими видами аттеншна типа grouped-query, чтобы повысить эффективность еще поболе да и применимость в том числе

👀LINK
👍4
Is Value Functions Estimation with Classification Plug-and-play for Offline Reinforcement Learning?

недавно вышла статья от дипмаинд, которая меняет парадигму обучения Q функций в рл - вместо того, чтобы регрессией ее фиттить под уравнение Беллмана, лучший результат получается, если аутпут критика разделить на бины и обучать его посредством классификации

а авторы этой статьи решили проверить, а насколько это верно в оффлайн сеттинге на д4рл - для оффлайн алгоритмов внедрить такую классификацию? (проверяли ReBRAC IQL LB-SAC ) а обучать при помощи HL гаусса

что получилось?

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

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

Явного ответа нет, присутствует ли улучшение - в этом и ресерч, панацея редко когда придумывается

один из примеров того, как следует писать текст, проводить эксперименты и репортить результаты из них + предоставлять воспроизводимый и понятный код

👀LINK
🔥31
Think before you speak: Training Language Models With Pause Tokens

yet another simple idea, которая может иметь шансы на успех

а кто вам сказал, что ллм не надо хотя бы на йоту призадуматься и подумать о том, что она генерирует? звучит как какое-то ущемление 🥴

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

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

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

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

показывают улучшение на QA и ризонинг сетапах

жаль, что кода нет, а по мне выглядит очень прикольно

👀LINK
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🤔6👍2🤯2