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

Авторы:
@zzmtsvv
@maxnygma (AI4Science посты)
Download Telegram
Erasing Concepts from Diffusion Models

Часто в обучающую выборку попадают нежелательные данные, например nswf контент. Можем ли мы предотвратить попадание нежелательных концептов в генерации пользователей, заставив модель забыть данный концепт? Этим вопросом и задаются авторы данной статьи.

Подход:

1. создаем две копии модели: одну обучаемую, вторую замороженную.
2. замороженной моделью генерируем безусловный шум.
3. замороженной моделью генерируем условный шум.
4. “вычищаем” нежелательные концепты из безусловного промпта по следующей формуле:

εθ*(xt, t) − η[εθ*(xt, c, t) − εθ*(xt, t)] где,

εθ*(xt, t) - безусловный шум
θ*(xt, c, t) - условный шум
η - константа отвечающая за “силу” удаления концепта.

Ну то есть, по сути, просто вычитаем фичи условного шума из безусловного

5. генерируем условный шум обучаемой моделью
6. Среднеквадратичной функцией потерь сближаем “очищенный” шум из замороженной модели с условным шумом из обучаемой диффузии.

Влияние η на обучение

Авторы провели эксперименты по влиянию η на обучение и выявили что увеличение η уменьшает вероятность появления удаляемого концепта но заметно влияет на качество генераций модели.

Частичное размораживание модели

Авторы пробовали рамораживать self-attention, cross-attention и всю модель, в итоге оказалось что разморажение слоев cross-attention является оптимальным, как с точки зрения производительности, так и с точки зрения визуального качества полученного результата.

Выводы.

Концепт удаления сущностей из модели невероятно крут! Данная статья очень проста в реализации! В то же время использование подобных методов имеет ряд существенных недостатков, один из них - забывание/искажение остальных концептов, значительное снижение качества генераций, появление явных артефактов. Также довольно просто реализовать “подмену” концепта вместо удаления что является довольно полезной фичей.

👀 LINK

#diffusion #text2image #machine_unlearning
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥31👍1
Machine Unlearning for Image-to-Image Generative Models


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

Авторы расставляют по полочкам тему анлернинга в задаче имг2имг, предоставляя удобный и понятный пайплайн, который может вписаться в большое количество других областей

+ есть код, что оч приятно


👀LINK

#img2img #machineunlearning #generativemodels
1👀1
Meta-in-context learning in large language models (NeurIPS 2023)

Обозначают феномен meta-in-context обучения в LLM. Суть в том, что способность к in-context learning улучшается от самого же in-context learning. Чем больше мы даем задач и чем больше они схожи, тем лучше будет перфоманс на последующих задачах

Сам по себе феномен интересен, потому что возникает вопрос: а что еще влияет на возможность моделей к появляению in-context learning и какие еще свойство задач порождают изменения в динамике in-context learning?

👀LINK

#llm #incontextlearning
Please open Telegram to view this post
VIEW IN TELEGRAM
👍21
Scaling Rectified Flow Transformers for High-Resolution Image Synthesis

Статья от которой у админа вспотели ладони! Да, это Stable Diffusion 3! 🔥🔥🔥

Тех. репорт довольно емкий (61 эксперимент), поэтому просто обозначу нововведения:

- Rectified Flow в качестве определения диффузионного процесса.

Авторы сравнивают Rectified Flow, EDM, Cosine, (LDM-)Linear диффузионные процессы и в итоге останавливаются на (как можно догадаться из названия 😬) на Rectified Flow, который устанавливает отражение между шумом и изображением прямой траекторией.

- MM-DiT - новая архитектура мультимодального диффузионного трансформера.

Современные архитектуры диффузионных трансформеров такие как DiT доставляют информацию о тексте и шаге диффузии через слои cross-attention, однако данный способ, по мнению авторов, сохраняет только общую информацию о введеном тексте. Новая архитектура конкатенирует эмбеддинги из трех текстовых кодировщиков CLIP-G, GLIP-L, T5 с шумом из диффузии и обрабатывает двумя независимыми наборами весов так как текстовые и картиночные эмбеддинги отличаются довольно сильно. Таким образом мы обрабатываем обе модальности разным набором параметров в линейных слоях, слоях нормализации и модуляции, но при этом обрабатываем их совместным attention слоем.


both representations can work in their own space yet take the other one into account.


- QK-Normalization - для стабилизации обучения в BF16.

Значения в слоях внимания начинают бесконтрольно расти, поэтому для оптимизации обучения их нормируют используя RMSNorm. Что интересно, так то что данная техника может быть использована для уже обученных моделей, так как параметры быстро сходятся.

- Синтетические описания: 50% описаний было переразмечено CogVLM
Авторы считают что знания VLM могут статьи бутылочным горлышком при обучении модели. Это довольно интересный вывод, потому что в статье DALLE-3 разница между 95% и 60% переразмеченных описаний была настолько большой, что 60% просто исключили из графика. Интересно почему авторы не использовали LLaVA? 🧐

- Resolution-dependent shifting of timestep schedules - разная плотность шагов в расписании шума.
Увеличение плотности шагов (уменьшение дистанции между шагами) в середине сэмплирования оказывает благотворный эффект на обучение, так как на этих шагав предсказание траектории является наиболее сложным, собственно поэтому мы даем модели больше пространства для маневра.

- 3 текстовых кодировщика: CLIP-G, GLIP-L, T5.
О них писал выше, но интересен тот факт, что авторы пробовали занулять эмбеддинги Т5 и подавать только “дешевые” эмбеддинги клипа, результаты показали что просадка в качестве оказалась довольно низкой, и это может сильно удешевить процесс инференса))))

- DDPO в качестве последнего этапа обучения

После предтрена на разрешении 256х256 авторы начинают постепенно повышать разрешение и добавлять изображения с разным соотношением сторон. Финальным этапом стала оптимизация модели под человеческие предпочтения через DDPO - Denoising Diffusion Policy Optimization.

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

👀 LINK

#rectified_flow #text2image #flow_matching
Please open Telegram to view this post
VIEW IN TELEGRAM
👍31🔥1
Softmax Bottleneck Makes Language Models Unable to Represent Multi-mode Word Distributions (ACL 2022 Main Conference Long Paper)

Есть некоторые проблемы в NLP (и в целом в DL), которым почему-то уделяют не так много внимания.

Одна из них - softmax bottleneck. Именно этот хрюндель препятствует выходному распределению по следующим токенам быть более diverse, следовательно препятствует LM генерировать более diverse текста при использовании сэмплирующего механизма генерации. В целом, эта проблема исходит из того, что в LM-ках мы линейно переводим один hidden state в logit'ы по словарю. Под diverse я здесь не подразумеваю синонимы - им по кайфу, они друг с другом линейно зависимы.

В статье ребята предлагают:
1) несколько занятных теорем, доказывающих, что
а) всегда существует некоторое мультимодальное распределение следующих токенов, если несколько эмбедов токенов линейно зависимы
б) softmax bottleneck может не решиться окончательно, даже если мы сделаем огромный hidden size
2) предлагают новый метод Multi-Facet Softmax для борьбы с softmax bottleneck: смесь Mixture of Softmax, формирования нескольких hidden state'ов, партицирования эмбедов словаря.
3) некоторую геометрическую интуицию к проблеме
4) внятные результаты экспериментов

👀LINK

#lm #llm #linearity #softmax_bottleneck
👍21🔥1
Goodhart's Law in Reinforcement Learning


Обучение с подкреплением приобрело свою популярность в том числе и из-за того, что порой мы не можем сформулировать грамотно задачи под фреймворк супервайзд или ансупервайзд лернинга, но зато можем запрогать reward signal, который и попытаемся максимизировать. Как оказывается, и с этим сигналом (особенно сделанным эвристично на основе бородатых предположений, которые не полностью покрывают сложность задачи реального мира) может быть проблема, называемая принципом Гудхарта (Википедия рекомендует не путать с законом Годвина).

Авторы предлагают простое решение через своеобразный early stopping

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

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


👀LINK


#rl #proxyreward #optimization #mdp
1
This media is not supported in your browser
VIEW IN TELEGRAM
Survival Instinct in Offline Reinforcement Learning

Вдогонку про размышления об эффекте награды на алгоритмы рл

Как оказывается, в оффлайн рл тоже не все так просто (область, где агент не может взаимодействовать со средой, а должен чему-то научиться на основе фиксированного «оффлайн» датасета, который может составить эксперт или другой неоптимальный алгоритм). Отличается оптимизация оффлайн рл от классического рл тем, что мы пытаемся в предсказаниях не отходить от того, что присутствует в датасете (потому что если предсказания будут слишком далеко, то есть out-of-distribution, то мы не сможем сказать, насколько они хороши или плохи).

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

(!) Явление это носит название survival instinct. Довольно интуитивно понятно и даже легко переносится на людей: зачем нам размышлять о том какая именно ценность у действий, пример которых нам показывают, если мы можем просто стараться повторять их как можно лучше и не париться (эффект наименьшего сопротивления). Работает эта тактика правда в случае, если показательные примеры недеструктивны (имеют positive bias)

Статья ставит под вопрос чуть ли не целую область, а как все-таки сделать алгоритм, который будет пытаться искать паттерны в наградах, а не только в примерах, которые он видит (т.е. как приблизить к reinforcement learning’у и отойти от фактического supervised learning)


👀LINK

#rl #offlinerl #distribution #positivebias #behaviorcloning
2
ASDL: A Unified Interface for Gradient Preconditioning in PyTorch (NeurIPS 2022 Workshop)

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

Статейка про полезную библиотеку asdfghjkl, которая позволяет удобно делать preconditioning на градиент (Pg = C^-1g) для оптимизации высших порядков, ну или же просто выгодно считать матрицы, связанны с кривизной и ковариацией градиентов, такие как Гессиан, матрица Гаусса-Ньютона и матрица Фишера. Еще у них в целом кайфовое интро в тему higher-order methods и то, какие есть варианты, включая разные матрицы кривизны, их представления (тут можно их считать и по слоям и по семплам) и солверы, которые как раз используются для расчета preconditining

Админ сам юзал либу для Байесовских методов, которая юзает asdfghjkl и она реально удобная, слова риззерчера даем

👀 LINK

#gradientpreconditioning #optimization #curvature #sharpness
👍2
DoRA: Weight-Decomposed Low-Rank Adaptation

Простая (и одновременно гениальная) модификация ЛоРЫ, которая разделяет претрейн веса на magnitude & direction для улучшения генерализации (по сравнению с полным файнтюнингом) и стабильности при обучении, при этом нету никаких доп вычислений на инференсе

👀LINK

#lora #decomposition #finetuning #stability
4👍1
Visual Instruction Inversion: Image Editing via Visual Prompting (NeurIPS 2023)

Новый улучшенный способ image editing с помощью диффузий

Решают проблему того, что в image editing зачастую промпт не может хорошо описать редактирование, которое мы хотим применить. Метод состоит из 2 компонентов:

1) Берут модель, использующую картинку со стилем в качестве conditioning, тут это InstructPix2Pix и тюнят в ней только токен инструкции преобразования в эмбеддинге промпта

2) Добавляют лосс, регулирующий направления преобразования и его промпта в латентном пространстве. Тут это просто косинусовое расстояние между промптом стиля и разницей между CLIP эмбеддингами картинок “до” и ”после”

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

Метод работает по качеству сравнимо с InstructPix2Pix и SDEdit

👀 LINK

#diffusion #imageediting #visualprompting
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥6👍1
Cliff Diving: Exploring Reward Surfaces in Reinforcement Learning Environments

Очень Крутая визуальная статья, которая показывает, как всего лишь на одной 3д картинке можно посмотреть на «обобщенную внутреннюю реакцию» модели на награду. Подтверждает некоторые common wisdom, например, что клиппинг в PPO реально не дает агенту сделать слишком большой шаг и разойтись - теперь это видно по графику во время оптимизации

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

👀
LINK

#rl #visualization
🔥2
Explaining RL Decisions with Trajectories

Довольно простой и работающий пайплайн, как выявить значимость траекторий принятий решений при обучении алгоритма: appropriate encoding + clustering, затем обучаем много-много политик, в каждой исключая по определенному кластеру, разница в перформансе указывает на значимость соответствующих кластеров траекторий

Можно ли применить не только к рл? Конечно, замените в тексте выше «траекторию» на «последовательность», «политику» на «модель» и получите простой метод интерпретации чего-то там для séquence data


👀LINK

#rl #decisionmaking #sequence #interpretability #representationlearning
👍2
Understanding, Predicting and Better Resolving Q-Value Divergence in Offline-RL

Момент, когда специфичная теория на стыке областей работает. Применяют теорию диффуров для linear iteration dynamics + neural tangent kernel, чтобы получить метрику под названием Self-Excite Eigenvalue Measure (SEEM), которая показывает в начале обучения, разойдется ли метод оффлайн рл или нет. Если воспроизводить код - (вроде) работает + дает повод логгировать хоть что-то во время обучения, не относящееся к евалу ( с этим в рл туго, потому что зачастую тот же самый лосс практически никогда не говорит о том, какой результат будет на тесте )

Теперь и думай, как это соотносится со статьей про инстинкт выживания


👀
LINK


#r #offlinerl #differentialequations #neuraltangentkernel #stability
🤔2
Generative Models as Distributions of Functions (AISTATS 2022)

А вы когда-нибудь задумывались о представлении картинок не с помощью решетки пикселей, а с помощью функций?

Авторы этой статьи задумались и предложили моделировать картинки именно таким способом. Достигается это с помощью неявного представления функции преобразования координат в RGB значения. В такие представления добавляют random Fourier feature encoding, чтобы выучивать сигнал разной частоты. Нейронка состоит из генератора hypernetwork, веса которой и представляют функцию преобразования, и дискриминатора PointConv, который расценивает выход нашей функции как набор точек с мерой дистанции, т.е это point cloud. Модель учится как GAN с minimax игрой

А спросите, нафиг это нужно? Тема в том, что тут размер сети скейлится линейно от размера данных + мы можем юзать одну сеть для разных модельностей типо картинок, вокселей или даже данных на сфере

Забавная идейка в общем, что сказать 🤑

👀 LINK

#generative #hypernetwork #functionrepresentation
1
Large Language Models as General Pattern Machines


Really profound paper, который еще больше раскрывает способности инконтекста ллмок. Обученная выполнять языковые задачи, ллм способна принимать на вход закодированные состояния среды и производить адекватные низкоуровневые действия, то есть решать задачу планирования, не говоря уже о том, что в целом решает задачки Abstraction and Reasoning, поданные в виде ascii art

Conclusion: «LLMs can serve as general sequence modelers, driven by in-context learning.»

👀
LINK

#nlp #llm #patternrecognition #incontextlearning
2🔥2
The Difficulty of Passive Learning in Deep Reinforcement Learning


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

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

Гугловские ребята еще давно нашли в этом слабость на глубинном уровне, связанном с понятием пассивного обучения из эксперимента 20-ого века, где котенок не понимает последствия своих действий, потому что он напрямую и не влияет на ситуацию (логично) 🐱🐱

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


👀LINK


#rl #passivelearning
Please open Telegram to view this post
VIEW IN TELEGRAM
1🔥1
Training Diffusion Models with Reinforcement Learning

Беркли и MIT показывают, что процесс денойзинга в диффузиях можно переформулировать в Марковский Процесс принятия решений (MDP), а значит и использовать функцию награды. А еще лучше использовать ее там, где промптом или определенным лоссом нужды извне так просто не выразишь (эстетичность, компрессибилити, соответствие промпту, подсчет объектов и так далее)

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

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

👀LINK

#rl #diffusion #text2img #promptalignment #mdp
🔥31
Layer-wise linear mode connectivity

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

Позволяет выйти в поверхности функции потерь на место с отсутствием linear barrier => parameters averaging снижает лосс, что далеко нетривиально для невыпуклых лоссов глубоких сетей


👀LINK


#representationlearning #parametersaveraging #losssurface
🔥2
Data Distributional Properties Drive Emergent In-Context Learning in Transformers (NeurIPS 2022)

Интересная статейка с нипса 22 года про причины in-context learning (ICL). Тут авторы приводят несколько наблюдений

1) Есть свойства данных, которые коррелируют с возможностью модели в ICL. Это "burstiness" (насколько классы в последовательности собираются в кластера), число и частота классов, различность в значениях одного класса и внутреклассовые вариации семплов. Эти выводы можно использовать для анализа различных ICL сетапов

2) In-context learning зачастую идет в трейд-офф с in-weights learning (IWL), а свойства в данных для двух сетапов разнятся

3) Трансформеры более способны в ICL, чем рннки, что в целом не сюрприз

4) Существуют сетапы, где модель все может показать и ICL и IWL, например, если данные семплируются из распределения Ципфа, которое несет важную информацию о распредлении частотности слова в языке

👀LINK

#nlp #incontextlearning #inweightslearning
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3🤔1
Foundation Policies with Hilbert Representations


фаундейшн модели остаются открытым вопросом в области рл, поскольку зачастую эти методы требуют большого разнообразия и высокой экспертности данных для того, чтобы хоть что-то завелось. Беркли, а именно Seohong Park, решают эту проблему через латентное представление в Гильбертовом пространстве (звучит умно, а на самом деле в этом пространстве просто достаточно, чтобы inner product соответствовал метрике), которое сохраняет временные зависимости между состояниями в пространственных между эмбеддингами.

Политика же обучается после этого с формулированием подобного же intrinsic reward'a

Что это дает? возможность решать много разных goal-conditioned и zero-shot rl задач, обгоняя алгоритмы, которые затюнены специально под каждую конкретную таску


👀LINK


#rl #zeroshot #goalconditioning #hilbert #offlinerl
👀2