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

Авторы:
@zzmtsvv
@maxnygma (AI4Science посты)
Download Telegram
Common Diffusion Noise Schedules and Sample Steps are Flawed

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

Почему? Сигнал, который может остаться на шаге T на самом деле очень мощный, и это ведет к несоответствию forward-backward процессов и генерациям примерно одной яркости. Например, Stable Diffusion не сгенерит вам полностью черный квадрат из-за этой проблемы

Решение простое - рескейлим noise schedule и дополнительно инпут в guidance, чтобы иметь нулевой конечный signal-to-noise ratio

👀 LINK

#Diffusion #DiffusionSampling
🔥4👍2
Improving Image Generation with Better Captions (DALL-E 3)

Авторы адресует проблему плохого понимания текста моделью плохой разметке тренировочного датасета и предполагают что синтетические описания собранные image-captioner-ом могут исправить данную проблему. Они провели несколько экспериментов, обучив модель на исходных промптах, коротких из captioner-a, длинных из captioner-a. В ходе экспериментов подтвердилось, что использование синтетических промптов благотворно влияет на качество выходной модели. Почему?

Важные детали часто упускаемые из описаний к изображениям в интернете:

- детали типо: дорожных знаков на улице, описания различных объектов
- позиции объектов и их число
- размеры объектов, цвета, какие-то общие признаки
- текст на изображении

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


Провели эксперимент по сравнению качества моделей, обученных на синтетике:

1. A text-to-image model trained only on ground truth captions.
2. A text-to-image model trained on 95% short synthetic captions.
3. A text-to-image model trained on 95% denoscriptive synthetic captions.

Эксперимент показал что обучение на синтетических данных помогло увеличить CLIP score.
Также доказано предположение о том что re-captioner модель будет выполнять роль “усреднителя”, дисперсия выходных данных уменьшилась.

Caption blending ratios

Авторы экспериментировали с отношением синтетических данных в тренировочном наборе, 65%, 80%, 90% и 95%. 65% исключены из графика так как модель показала слишком низкий результат относительно своих конкурентов.

👀 LINK

#Diffusion #text2image
👍6
t^3-Variational Autoencoder: Learning Heavy-tailed Data with Student's t and Power Divergence


Реальные данные часто сопровождаются тяжелыми выбросами или имеют в своем поведении что-то похожее на распределения с тяжелыми хвостами (если не знаете, что это, можете почитать «Черного Лебедя» Нассима Талеба), а это, в свою очередь, тяжело моделируется любимым нормальным распределением. To overcome this issue, придумали ВАЕ, который способен вылавливать эти тяжелые хвосты

Ждем чистой имплементации

👀LINK

#optimization #ae #vae #bayesian #representationlearning
4
The Era of 1-bit LLMs: All Large Language Models are in 1.58 Bits

MS учат LLM с параметрами в один бит. Но не совсем. Биты тут тернарные, - ребята сделали каждый параметр в модели принимающим значения из множества {-1, 0, 1}.

Исследование интересно следующим:
Во-первых, модели из статьи, эквивалентные по количеству параметров LLAMA в FP16, выдают сравнимую перплексию и метрики на downstream задачах, при этом потребление VRAM-ы и Latency значительно ниже.

Во-вторых, квантование до 1 бита (пусть и тернарного) позволит гораздо более эффективно выполнять некоторые операции на специализированном железе. В общем, наблюдаем за Groq и другими стартапами, которые делают LPU.

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

👀LINK

#nlp #llm #weight_quantization
🔥6
Gradual Domain Adaptation via Gradient Flow

Предположим, есть методы плавной доменной адаптации, а как можно их улучшить? Может, при помощи flow? Так и есть, а именно при помощи Gradient flow, где динамически генерируются промежуточные домены, на которых постепенно файнтюнится классификатор и тем самым адаптируется к изначальным, которые и были даны в датасете


👀LINK


#domainadaptation #flow #gradientflow #wasserstein
Bridging Associative Memory and Probabilistic Modeling (ICML 2024 submit)

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

1) Самое интересное. Модели ассоциативной памяти (рнн, трансформеры и тд) и energy-based models (EBMs) обе работают с функцией энергии. В первых динамика состояния связана с минимизацией энергии, а во вторых мы моделируем плотность данных с помощью распределения Гиббса, где фигурирует энергия. Так вот, associative memory models способны легко менять ландшафт функций энергии для новых данных. Авторы предлагают EBM, которая использует энергию условную от данных. Это ведет к наблюдению нового феномена in-context обучения функций энергии, подобного in-context обучению в NLP

2) Предлагают две новые модели с ассоциативной памятью, базирующиеся на ELBO и на стохастическом Китайском ресторанном процессе (CRP). Тут глубоко почитать не удалось

3) KDE связан с концептом памяти + дают теорию объясняющую нормализацию перед self-attention в трансформерах, используя пункт (2)

Интересно, можно ли будет сделать новые вероятностные методы, используя понимания связи associative memory и EBM-ок 🤔

👀 LINK

#associative_memory #EBM #clustering #transformers #RNN #in_context_learning
🔥3👍1
Lion Secretly Solves a Constrained Optimization: As Lyapunov Predicts (ICLR 2024 Spotlight)


Though Lion выглядит впечатляющим из-за своей простоты и быстроты, в деле оптимизации всегда важны теоретические выкладки. Авторы приводят их в виде анализа на уровне функций Ляпунова и показывают, какую задачу условной оптимизации решает Лион

Теперь этот оптимизатор можно в работе использовать еще увереннее


👀LINK

#optimization #lyapunov #hamiltonian #adam #adamw
🤔41
Matryoshka Diffusion Models (ICLR 2024)

Apple показали как можно генерировать картинки разного скейла с помощью одной диффузии. Без всяких каскадных штук. Метод называется "матрешкой" не просто так. Он совмещает в себе модифицированный U-net - Nested U-Net, где наряду с латентными переменными для даунскейлинга и апсемплинга используются картинки с предыдущего шага, а также тренировочный процесс, в котором мы подаем в диффузию картинки сразу нескольких размеров

Тренируется все это стандартным лоссом, взвешенным от размера картинки. Также авторы указывают, что multi-aspect training в GAN также работает и тут: полезно начинать обучение с маленького размера, постепенно его повышая

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

👀 LINK

#diffusion #unet
🔥3💩1
DrM: Mastering Visual Reinforcement Learning through Dormant Ratio Minimization (ICLR 2024 Spotlight)


Знаете проблему dead neurons? Не такая уж она и нечастая. Авторы обобщают эту идею до «спящих» (dormant) нейронов, когда активации настолько малы, что не превышают заранее заданный малюююююююсенький порог. Это довольно проблематично в рл, поскольку такой феномен не дает не только нормального обучения, но и агенту расследовать (explore) среду, в которую его погрузили

Есть ли решение, которое применимо не только к рл? Да!! Достаточно применить шум напрямую к весам (называемый в статье perturb factor, улавливаете аналогию с регуляризацией посредством добавления шума в веса?), который повысит стохастичность нейронов, но не даст им угаснуть вовсе, что стабилизирует картину к концу обучения

Что есть прикольного применительно к рл? Через понятие dormant ratio выводят формулы для коэффициента, связанного с исследованием среды (exploration noise standard deviation), что, по эмпирике, улучшает картину exploration-exploitation при засыпающих нейронах


👀LINK


#rl #relu #deadneuron #exploration #exploitation #regularization #perturbation #mdp
1🔥1
Memory in Plain Sight. A Survey of the Uncanny Resemblances between Diffusion Models and Associative Memories (NeurIPS 2023 Workshop)

Еще немного про ассоциативную память (AM). Диффузии - это модели с ассоциативной памятью. Т.к диффузия моделирует score функцию, то она является AM моделью, которая неявно учит функцию энергии через ее градиент. Обе модели реконструируют данные из какого-то испорченного сигнала, следуя градиенту энергии. Плюсом показывают, что probability flow ODE можно легко сформулировать, как AM модель с переменной, зависящий от времени с дисперсией шума. В общем, столько сходств на лицо 🥸

Есть еще интересный пункт. Рассуждают на тему точек-аттракторов в диффузиях. Нет гарантий, что они есть, но диффузии ограничены временем [0, T], это означает, что конечная точка является позицией, где мы можем достать воспоминания модели, а это схоже с AM, но где у нас есть гарантия на стабильность динамики. Поэтому все-таки аттракторы могут быть

👀 LINK

#diffusion #associative_memory #ode
2🔥1
Towards Robust Offline Reinforcement Learning under Diverse Data Corruption (ICLR 2024 Spotlight)


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

Реальные данные подвержены «повреждению» и «атакам» всех родов, этого только не хватало рл, а особенно оффлайн рл, где есть куча своих других проблем (оод, «нестационарность стационарности», субоптимальность и прочее)

Как авторы решают проблему data corruption? Нормализацией входных данных, добавлением хубер лосса и квантильности
И все это обосновано (!)

👀LINK


#rl #offlinerl #robustness #corruption #mdp
👍21
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