Contextual Position Encoding: Learning to Count What's Important
все, думаю, пользовались разными позиционными кодировщиками - абсолютными, относительными, обучаемыми, кто-то даже сильно знаком с RoPE, а кто-то с алиби. цель всех этих вариантов была добавить релевантную информацию относительно позиции токена.
а для чего? ну, далее механизму внимания было легче проводить всякие риуталы с токеном *в контексте с другими токенами.* так а почему бы не попробовать сразу сделать поз энкодинг с опорой на контекст?
авторы предложили именно такое (СoPE), объединили детали из относительного и обучаемых энкодингов - позиции кодируются как сумма сигмоид между дот продактом запросов и ключей (queries & values). таким образом получается опора на предыдущий контекст исключительно, так еще и через сигмоиду определяем степень влияния этого контекста
к тому же такой позиционный скаляр может принимать и дробные значения. поэтому составляют обучаемый эмбеддинг для каждой целочисленной позиции (вплоть до максимальной длины трансформера), а под получившуюся позицию (которая может быть дробной) интерполируют соседние эмбеддинги под целочисленные позиции (да, немного душновато, зато круто как по мне!)
с CoPE ллмки начинают лучше считать объекты (даже если считать на инференсе приходится оод значения по сравнению с трейном) и в выборочном копировании, да и не отстает в классичном языковом моделировании
смущает только Figure 3 (и далее в рассуждениях я могу ошибаться) -как я пон, они говорят, что может CoPE обобщаться на более длинный контекст, что отчасти так, у него меньше перплексия, но ввиду грамотной интерполяции (а не экстраполяции) дробных позиций - если мы удлиняем контекст с 512 до 1024 например на евале, то все равно будем видеть токены от 0 до 512, пушто на трейне мы их и не видели. то есть этот метод действительно выглядит лучше, но кмк по другим причинам (если вы нашли ошибку в моем рассуждении - напишите, мне интересно почитать)
энивей, это новый крутой метод делать поз энкодинг - авторы имхо достаточно показали преимущество над RoPE и абсолютным и относительным позиционным кодированием + код есть (и комплексити побольше, но несильно), осталось посмотреть, что происходит на больших моделях вместе с этим
👀LINK
все, думаю, пользовались разными позиционными кодировщиками - абсолютными, относительными, обучаемыми, кто-то даже сильно знаком с RoPE, а кто-то с алиби. цель всех этих вариантов была добавить релевантную информацию относительно позиции токена.
а для чего? ну, далее механизму внимания было легче проводить всякие риуталы с токеном *в контексте с другими токенами.* так а почему бы не попробовать сразу сделать поз энкодинг с опорой на контекст?
авторы предложили именно такое (СoPE), объединили детали из относительного и обучаемых энкодингов - позиции кодируются как сумма сигмоид между дот продактом запросов и ключей (queries & values). таким образом получается опора на предыдущий контекст исключительно, так еще и через сигмоиду определяем степень влияния этого контекста
к тому же такой позиционный скаляр может принимать и дробные значения. поэтому составляют обучаемый эмбеддинг для каждой целочисленной позиции (вплоть до максимальной длины трансформера), а под получившуюся позицию (которая может быть дробной) интерполируют соседние эмбеддинги под целочисленные позиции (да, немного душновато, зато круто как по мне!)
с CoPE ллмки начинают лучше считать объекты (даже если считать на инференсе приходится оод значения по сравнению с трейном) и в выборочном копировании, да и не отстает в классичном языковом моделировании
смущает только Figure 3 (и далее в рассуждениях я могу ошибаться) -
энивей, это новый крутой метод делать поз энкодинг - авторы имхо достаточно показали преимущество над RoPE и абсолютным и относительным позиционным кодированием + код есть (и комплексити побольше, но несильно), осталось посмотреть, что происходит на больших моделях вместе с этим
👀LINK
🔥7👍4❤2🤔1
Retentive Network: A Successor to Transformer for Large Language Models
тоже уже база, но хочу про нее рассказать
стейт спейс модели показали возможность параллелизации обучения при константной стоимости инференса и меньшим количеством памяти, вот и авторы из майкрософта и Tsinghua не отстают, сделали RetNet (кстати мы его уже упоминали здесь)
по канонам джордана белфорта, продают абсолютно уникальную идею, которая делает “невозможный треугольник” возможным (сомнительно ну окэй) 😎 😎 😎 😎
ну а идея на самом деле неплохая - оставляют трансформерные понятия Q K V (на матрицы комплексных эйгенвекторов или чего-то там можно забить потому что они все равно уходят при перемножении), обрабатывают их как в линейном аттеншне с наложением каузальной маски, которая в себя включает еще и позиционное кодирование которое работает backwards с гипером гамма
еще расширяют эту идею на MSR (Multi-Scale Retention, a.k.a Multi-Head Attention) и подают разным головам разные гаммы ⇒ головы теперь не только по-разному могут производить ретеншн (аттеншн) в плане обработки контекста, но еще и по-разному обрабатывать временную составляющую
все это спокойно параллелится на трейне как и обычный трансформер, а на инференсе легко можно перейти в рекурсивную форму. также авторы добавили имплементацию в chunkwise форме как трейдофф между реккурентностью и параллельностью
да и ко всему есть код, что приятно
но есть непонятка в табличке - у RWKV пишут, что нет параллелизации во время трейна, когда она есть + забавно выглядит как они галочками расставили перформанс но это оки
👀LINK
тоже уже база, но хочу про нее рассказать
стейт спейс модели показали возможность параллелизации обучения при константной стоимости инференса и меньшим количеством памяти, вот и авторы из майкрософта и Tsinghua не отстают, сделали RetNet (кстати мы его уже упоминали здесь)
по канонам джордана белфорта, продают абсолютно уникальную идею, которая делает “невозможный треугольник” возможным (сомнительно ну окэй) 😎 😎 😎 😎
ну а идея на самом деле неплохая - оставляют трансформерные понятия Q K V (на матрицы комплексных эйгенвекторов или чего-то там можно забить потому что они все равно уходят при перемножении), обрабатывают их как в линейном аттеншне с наложением каузальной маски, которая в себя включает еще и позиционное кодирование которое работает backwards с гипером гамма
еще расширяют эту идею на MSR (Multi-Scale Retention, a.k.a Multi-Head Attention) и подают разным головам разные гаммы ⇒ головы теперь не только по-разному могут производить ретеншн (аттеншн) в плане обработки контекста, но еще и по-разному обрабатывать временную составляющую
все это спокойно параллелится на трейне как и обычный трансформер, а на инференсе легко можно перейти в рекурсивную форму. также авторы добавили имплементацию в chunkwise форме как трейдофф между реккурентностью и параллельностью
да и ко всему есть код, что приятно
но есть непонятка в табличке - у RWKV пишут, что нет параллелизации во время трейна, когда она есть + забавно выглядит как они галочками расставили перформанс но это оки
👀LINK
🔥3👀2❤1👍1🤩1
CPPO: Continual Learning for Reinforcement Learning with Human Feedback
вот научили ревард модельку для ллм - окей, пристрастилась к желаниям человечков, но ведь желания со временем меняются. и как к такому адаптироваться?
авторы ответили на этот вопрос скрещением PPO с Continual Learning. из последнего взяли кл дивергенцию, которая показывает отличие в генерациях между нынешними и предыдущими весами, при том дивергенция берется для тех семплов, у которых высокая вероятность генерации промпта в общем и высокие реварды (контролируется гипером),а из рлхф взяли максимизацию реварда конечно. но это теория
на практике дивергенцию считают как мсе между потокенными лог вероятностями (что интересно) - назвали Knowledge Retention Loss. и его добавили к привычному лоссу ппо
но не менее важный факт - а какие веса ставить для этих слагаемых, чтобы все обучалось так, как мы и хотим? и тут вообще шок - авторы предлагают веса, которые зависят от инпутов, и при том составили эти веса (эвристично) на основе соотношения между ревард скором и вероятностью генерации
но так же они и пробовали обучать эти веса для каждого батча 🤯
что в итоге? метод, который применим к любой таске и модели, действительно присутствует континуал лернинг так еще и ппо стабилизируется даже на обычных задачах, которые не подразумевают смену тасок (что в принципе ожидаемо поскольку добавили такой нетривиальный стабилизирующий терм)
далеко не факт, что идея будет долго жить, потому что имхо много где перемудрили, но она очень жесткая
👀LINK
да, и такие папиры бывают с таким графическим оформлением
вот научили ревард модельку для ллм - окей, пристрастилась к желаниям человечков, но ведь желания со временем меняются. и как к такому адаптироваться?
авторы ответили на этот вопрос скрещением PPO с Continual Learning. из последнего взяли кл дивергенцию, которая показывает отличие в генерациях между нынешними и предыдущими весами, при том дивергенция берется для тех семплов, у которых высокая вероятность генерации промпта в общем и высокие реварды (контролируется гипером),а из рлхф взяли максимизацию реварда конечно. но это теория
на практике дивергенцию считают как мсе между потокенными лог вероятностями (что интересно) - назвали Knowledge Retention Loss. и его добавили к привычному лоссу ппо
но не менее важный факт - а какие веса ставить для этих слагаемых, чтобы все обучалось так, как мы и хотим? и тут вообще шок - авторы предлагают веса, которые зависят от инпутов, и при том составили эти веса (эвристично) на основе соотношения между ревард скором и вероятностью генерации
но так же они и пробовали обучать эти веса для каждого батча 🤯
что в итоге? метод, который применим к любой таске и модели, действительно присутствует континуал лернинг так еще и ппо стабилизируется даже на обычных задачах, которые не подразумевают смену тасок (что в принципе ожидаемо поскольку добавили такой нетривиальный стабилизирующий терм)
далеко не факт, что идея будет долго жить, потому что имхо много где перемудрили, но она очень жесткая
👀LINK
да, и такие папиры бывают с таким графическим оформлением
🤯3🕊1🥴1
Is Value Learning Really the Main Bottleneck in Offline RL?
есть устоявшееся мнение, что основная проблема оффлайн рл заключается в неспособности нормально натренировать критика - и уравнение беллмана в многомерном пространстве толком не сделаешь, и происходят постоянно всякие проблемы с оод семплами
но точно ли это главная проблема - нет ли чего посерьезнее? а оказыается есть, и это именно обучение актора
как показывают авторы из беркли, дело по большей части в обучении актора на лоссе, завязанном с критиком + генерализации на тесте
то есть вот рецепт примерно усредненный - обучать критика на максимально разнообразных данных + по полной обучать актора на аутпутах критика
еще предлагают решать эту проблему через дообучение на евале посредством оценки критика и дивергенции, чтобы на онлайне политика сильно от оффлайн версии не отходила, что называется test-time training. ну или менее муторный вариант OPEX - обновлять на евале параметры в сторону максимизации значений критика
кстати косвенно с результатами из этой папиры результаты сходятся
👀LINK
есть устоявшееся мнение, что основная проблема оффлайн рл заключается в неспособности нормально натренировать критика - и уравнение беллмана в многомерном пространстве толком не сделаешь, и происходят постоянно всякие проблемы с оод семплами
но точно ли это главная проблема - нет ли чего посерьезнее? а оказыается есть, и это именно обучение актора
как показывают авторы из беркли, дело по большей части в обучении актора на лоссе, завязанном с критиком + генерализации на тесте
то есть вот рецепт примерно усредненный - обучать критика на максимально разнообразных данных + по полной обучать актора на аутпутах критика
еще предлагают решать эту проблему через дообучение на евале посредством оценки критика и дивергенции, чтобы на онлайне политика сильно от оффлайн версии не отходила, что называется test-time training. ну или менее муторный вариант OPEX - обновлять на евале параметры в сторону максимизации значений критика
кстати косвенно с результатами из этой папиры результаты сходятся
👀LINK
🔥3👌1
Unsupervised Learning by Predicting Noise
🕔RIZZEARCH THROWBACK 🕔
Noise as Targets (NaT). Делают self-supervised learning путем генерации случайных таргетов. Один из первых методов
Из нашего unsupervised датасета, мы экстрактим признаки с помощью обычной сверточной сетки и нормализуем. Далее мы делаем “таргеты из шума” с помощью семплирования векторов на сфере. Такой подход напоминаем k-means на сфере, однако отличие в предотрващении коллапса репрезентаций у NaT
Как же нам подбирать оптимальные пары “картинка-таргет вектор”? Это assignment problem и для нее существует Венгерский алгоритм из середины 20-ого века. Однако как с многими алгоритмами ситуация не очень хорошая - асимптотика O(n^3). Поэтому авторы запускают его в стохастическом режиме по батчам
👀 LINK
🕔RIZZEARCH THROWBACK 🕔
Noise as Targets (NaT). Делают self-supervised learning путем генерации случайных таргетов. Один из первых методов
Из нашего unsupervised датасета, мы экстрактим признаки с помощью обычной сверточной сетки и нормализуем. Далее мы делаем “таргеты из шума” с помощью семплирования векторов на сфере. Такой подход напоминаем k-means на сфере, однако отличие в предотрващении коллапса репрезентаций у NaT
Как же нам подбирать оптимальные пары “картинка-таргет вектор”? Это assignment problem и для нее существует Венгерский алгоритм из середины 20-ого века. Однако как с многими алгоритмами ситуация не очень хорошая - асимптотика O(n^3). Поэтому авторы запускают его в стохастическом режиме по батчам
👀 LINK
🔥4
🕔RIZZEARCH THROWBACK 🕔
Теперь иногда в риззерче мы будет писать про статьи до 2021 года включительно. Это некая классика - то, что было проверено временем и повлияло на создание новых методов. Такие посты будут отмечены соответствующей надписью
Теперь иногда в риззерче мы будет писать про статьи до 2021 года включительно. Это некая классика - то, что было проверено временем и повлияло на создание новых методов. Такие посты будут отмечены соответствующей надписью
👍14
Generalization in Diffusion Models Arises from Geometry-Adaptive Harmonic Representations (OUTSTANDING PAPER AWARD 🥇)
Вы когда-нибудь задумывались каким образом обобщаются диффузионные модели? Или почему мы можем наблюдать меморизацию тренировочных данных у таких моделей как Stable Diffusion? Статья? Получившая outstanding paper award на ICLR 2024🔥 статья, отвечает на эти вопросы
В диффузионных моделях есть проблема меморизации - это когда при семплировании модель буквально воспроизводит тренировочные семплы или же комбинирует детали из нескольких. Меморизация тесно пересекается с обобщением. Чем больше датасет, тем больше ошибка на тренировке и меньше на тесте. Модель постепенно переходит от меморизации к обобщению и выучивает истинную score функцию. Однако, так ли это?🤔
Авторы делят тренировочные картинки на два непересекающихся набора и показывают, что при достаточно большом количестве картинок сетки на разных наборах выучивают примерно одинаковые score функцию - признак обобщения
Далее логичный вопрос - какие inductive biases позволяют диффузиям избегать проклятия размерности и обобщаться? Авторы исследуют декомпозицию Якобиана денойзера через собственные значения и приходят к выводу, что денойзер постепенно уменьшает влияние вариаций в датасете. Собственные значения обычно маленькие, что говорит, о инвариантности генераций относительно преобразований в зашумленной картинке и низкоранговой структуре Якобиана. Также, исследуя базисы на собственных векторах, мы можем судить о важности разреженных репрезентаций картинок, которые связаны с качеством генераций
Если посмотреть на собственные значения и ветктора относительно зашумленных картинок, мы получим четкую картинку - денойзер быстро достигает спарсификации и показывает колебательные собственные вектора 🔀. Базисы этих векторов адаптируются под конкретные контуры и участки картинок. Такие базисы назвали geometry-adaptive harmonic bases (GAHBs) и они от части отвечают за обобщение диффузионных моделей
👀 LINK
Вы когда-нибудь задумывались каким образом обобщаются диффузионные модели? Или почему мы можем наблюдать меморизацию тренировочных данных у таких моделей как Stable Diffusion? Статья? Получившая outstanding paper award на ICLR 2024
В диффузионных моделях есть проблема меморизации - это когда при семплировании модель буквально воспроизводит тренировочные семплы или же комбинирует детали из нескольких. Меморизация тесно пересекается с обобщением. Чем больше датасет, тем больше ошибка на тренировке и меньше на тесте. Модель постепенно переходит от меморизации к обобщению и выучивает истинную score функцию. Однако, так ли это?
Авторы делят тренировочные картинки на два непересекающихся набора и показывают, что при достаточно большом количестве картинок сетки на разных наборах выучивают примерно одинаковые score функцию - признак обобщения
Далее логичный вопрос - какие inductive biases позволяют диффузиям избегать проклятия размерности и обобщаться? Авторы исследуют декомпозицию Якобиана денойзера через собственные значения и приходят к выводу, что денойзер постепенно уменьшает влияние вариаций в датасете. Собственные значения обычно маленькие, что говорит, о инвариантности генераций относительно преобразований в зашумленной картинке и низкоранговой структуре Якобиана. Также, исследуя базисы на собственных векторах, мы можем судить о важности разреженных репрезентаций картинок, которые связаны с качеством генераций
Если посмотреть на собственные значения и ветктора относительно зашумленных картинок, мы получим четкую картинку - денойзер быстро достигает спарсификации и показывает колебательные собственные вектора 🔀. Базисы этих векторов адаптируются под конкретные контуры и участки картинок. Такие базисы назвали geometry-adaptive harmonic bases (GAHBs) и они от части отвечают за обобщение диффузионных моделей
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7❤4🔥3👎1
Neural Redshift: Random Networks are not Random Functions
оказывается, если рандомно инитить нейронки, то аутпуты будут вовсе не рандомными. а рассматривали степень нерандомности через уровень сложности аутпута
эту сложность определяли через
- частотность (по фурье)
- полиномиальную декомпозицию
- сжимаемость (LZW compressibility, не знаю как лучше по-русски)
и что же было обнаружено? - самый главный вывод состоит в том, что simplicity bias не совсем заслуга обучения модели. оно не убирает этот биас, но и не является его причиной, а появляется это смещение из-за часто используемых деталей в моделях, как релу, леернорм или резидуал коннекшны.
эффективность нейронных сетей — это не свойство обученных параметров, а скорее результат адекватного выбора между деталями архитектуры (например, ReLU) и свойствами реальных данных (например, эвиденс о преобладании паттернов низкой частотности).
в частности еще можно сказать, что релу и леернорма во многом влияют на симплисити биас, что в принципе в литературе не упоминалось. а отмечались только численно стабильное превосходство методов, отсутствие затухающих градиентов и всякое такое + трансформеры по своей архитектуре имеют тенденцию к последовательностям, которые компрессятся лучше всего (пища для размышлений)
есть много красивых графиков, от которых у меня аж вдохновление появляется заниматься ресерчем (как например Figure 4)
👀LINK
оказывается, если рандомно инитить нейронки, то аутпуты будут вовсе не рандомными. а рассматривали степень нерандомности через уровень сложности аутпута
эту сложность определяли через
- частотность (по фурье)
- полиномиальную декомпозицию
- сжимаемость (LZW compressibility, не знаю как лучше по-русски)
и что же было обнаружено? - самый главный вывод состоит в том, что simplicity bias не совсем заслуга обучения модели. оно не убирает этот биас, но и не является его причиной, а появляется это смещение из-за часто используемых деталей в моделях, как релу, леернорм или резидуал коннекшны.
эффективность нейронных сетей — это не свойство обученных параметров, а скорее результат адекватного выбора между деталями архитектуры (например, ReLU) и свойствами реальных данных (например, эвиденс о преобладании паттернов низкой частотности).
в частности еще можно сказать, что релу и леернорма во многом влияют на симплисити биас, что в принципе в литературе не упоминалось. а отмечались только численно стабильное превосходство методов, отсутствие затухающих градиентов и всякое такое + трансформеры по своей архитектуре имеют тенденцию к последовательностям, которые компрессятся лучше всего (пища для размышлений)
есть много красивых графиков, от которых у меня аж вдохновление появляется заниматься ресерчем (как например Figure 4)
👀LINK
🔥7👏3👍1