Image Super-Resolution via Iterative Refinement
IEEE TPAMI 2022
Ранее мы обсуждали применение диффузионных моделей для image2image задач:
— FDM - удаляем артефакты, контролируя MDF и NPS;
— DDRM - удаляем артефакты в случае, если знаем семейство PSF;
— Palette - стабильный бейзлайн для inpainting, outpainting, colorization, JPEG uncompression.
В этой работе предлагается модель SR3. Мотивация применения DDPM для задачи в следующем:
1. Регрессионным SR моделям трудно работать с большими upscaling factors (> x2), потому что в single-image постановке нет избыточной информации, а значит требуется её генерировать. Следовательно, нужно применять лучшие генеративные модели.
2. DDPM лучше чем GAN выучивают мелкие моды => потенциально меньше проблем с обучение и обобщаемостью.
Прямой процесс мало чем отличается от принятого для генерации: модель зашумляется по линейному расписанию с сохранением дисперсии. Зная расписание заранее можно получать шумное изображение
Авторы используют архитектуру U-Net с residual блоками из BigGAN, в которых skip connections рескейлят на
Модель показывает SOTA экспериментах для 8х, 4х и каскадной 8х (64×64 → 256×256 → 1024×1024) генерации по метрике fool rate: респонденты путают реальную и сгенерированную картинку в около 50% случаев. С практической точки зрения авторы рекомендуют делать 8х генерацию каскадным типом. Код только неофициальный.
IEEE TPAMI 2022
Ранее мы обсуждали применение диффузионных моделей для image2image задач:
— FDM - удаляем артефакты, контролируя MDF и NPS;
— DDRM - удаляем артефакты в случае, если знаем семейство PSF;
— Palette - стабильный бейзлайн для inpainting, outpainting, colorization, JPEG uncompression.
В этой работе предлагается модель SR3. Мотивация применения DDPM для задачи в следующем:
1. Регрессионным SR моделям трудно работать с большими upscaling factors (> x2), потому что в single-image постановке нет избыточной информации, а значит требуется её генерировать. Следовательно, нужно применять лучшие генеративные модели.
2. DDPM лучше чем GAN выучивают мелкие моды => потенциально меньше проблем с обучение и обобщаемостью.
Прямой процесс мало чем отличается от принятого для генерации: модель зашумляется по линейному расписанию с сохранением дисперсии. Зная расписание заранее можно получать шумное изображение
y_t для шага t за константное время и сразу учиться предсказывать y_(t-1) c L1/L2 лоссом. На практике же, во время обратного процесса предсказывается аддитивный шум шага t. Также к расшумляемому изображению y_t конкатенируется исходная low-res картинка x, что позволяет направить генерацию именно в сторону восстановления исходного изображения, а не генерации какого-то произвольного.Авторы используют архитектуру U-Net с residual блоками из BigGAN, в которых skip connections рескейлят на
1/sqrt(2). Внутри U-Net x конкатенируют с промежуточными признаками в апсемплингах. Для этого x интерполируют бикубиком. По заявлениям авторов, более сложные методы обуславливания не дают особой разницы в результатах и поэтому они используют простую конкатенацию.Модель показывает SOTA экспериментах для 8х, 4х и каскадной 8х (64×64 → 256×256 → 1024×1024) генерации по метрике fool rate: респонденты путают реальную и сгенерированную картинку в около 50% случаев. С практической точки зрения авторы рекомендуют делать 8х генерацию каскадным типом. Код только неофициальный.
Denoising Diffusion Probabilistic Models for Robust Image Super-Resolution in the Wild
Модель SR3 показала SOTA результаты на основных бенчмарках для больших upscaling factors, но на практике оказалась чувствительной к доменному сдвигу. Для таких случаев есть подзадача Blind SR - модель учат обобщаться на более широкое распределение данных чем один конкретный препроцессинг на одном конкретном датасете. Основная проблема с которой приходится бороться — разница частотных характеристик между low-res (LR) картинками, полученными даускейлингом high-rez (HR) картинок и реальными LR картинками.
Для решения этой проблемы авторы не стали проявлять чудеса изобретательности и просто адаптировали подход Real-SRGAN, суть которого в добавлении большого числа аугментаций во время обучения модели. Подход назвали SR3+.
Во время обучения для каждого изображения генерится случайная комбинация следующих аугментаций: Blur, Resize, JPEG. Помимо этого используется Noise Conditioning — замена аддитивного шума. Суть Noise Conditioning в том чтобы, по аналогии с основным обучением модели, зашумлять LR изображение, использующееся в качестве условия генерации. Для этого семплируется шаг
Подход Noise Conditioning позволяет контролировать баланс между точностью и вариативностью результатов SR модели. Выбирая
В качестве архитектуры по-прежнему используется U-Net. При этом, в отличие от SR3, авторы отказываются от attention слоев, поскольку они мешают обобщаться на разные разрешения. Также авторы экспериментируют с архитектурой Efficient U-Net и показывают, что, даже уменьшив с ее помощью число параметров до 40М, можно получить качество в терминах FID/SSIM/PSNR сопоставимое с Real-SRGAN. Кода нет.
Модель SR3 показала SOTA результаты на основных бенчмарках для больших upscaling factors, но на практике оказалась чувствительной к доменному сдвигу. Для таких случаев есть подзадача Blind SR - модель учат обобщаться на более широкое распределение данных чем один конкретный препроцессинг на одном конкретном датасете. Основная проблема с которой приходится бороться — разница частотных характеристик между low-res (LR) картинками, полученными даускейлингом high-rez (HR) картинок и реальными LR картинками.
Для решения этой проблемы авторы не стали проявлять чудеса изобретательности и просто адаптировали подход Real-SRGAN, суть которого в добавлении большого числа аугментаций во время обучения модели. Подход назвали SR3+.
Во время обучения для каждого изображения генерится случайная комбинация следующих аугментаций: Blur, Resize, JPEG. Помимо этого используется Noise Conditioning — замена аддитивного шума. Суть Noise Conditioning в том чтобы, по аналогии с основным обучением модели, зашумлять LR изображение, использующееся в качестве условия генерации. Для этого семплируется шаг
0 < t < 0.5 исходя из заранее выбранного расписания (бОльшие значения слишком сильно “убивают” детали). Далее накладывается шум соотвествующий шагу t. Подход Noise Conditioning позволяет контролировать баланс между точностью и вариативностью результатов SR модели. Выбирая
t = 0 во время инференса можно получить максимально точное восстановление. Используя бОльшие значения t можно заставить модель галлюцинировать, что в некоторых случаях может быть полезно.В качестве архитектуры по-прежнему используется U-Net. При этом, в отличие от SR3, авторы отказываются от attention слоев, поскольку они мешают обобщаться на разные разрешения. Также авторы экспериментируют с архитектурой Efficient U-Net и показывают, что, даже уменьшив с ее помощью число параметров до 40М, можно получить качество в терминах FID/SSIM/PSNR сопоставимое с Real-SRGAN. Кода нет.
Training Compute-Optimal Large Language Models
Зоопарк large language models (LLM) растёт не по дням, а по часам. Самая крупная из них, MT-NLG, уже перевалила за полтриллиона (503В) параметров. Вместе с этим, возникает резонный вопрос об оптимальности использования настолько большого числа параметров.
Данная статья - эмпирическое исследование на тему поиска оптимального соотношения количества параметров модели и использованных за время обучения токенов при данном вычислительном бюджете с целью получения наилучшей модели. Здесь вычислительный бюджет выражается в количестве операций с плавающей точкой (FLOPs), а качество модели - в значении ее функции потерь во время обучения.
Для проведения экспериментов авторы выбрали следующие стратегии:
1. Фиксируем размер модели (от 70М до 10В), варьируем количество токенов. Для каждого количества параметров тренируем 4 модели, выбираем лучшую по тренировочному лоссу. Эта модели - точка в матрице размер модели/число токенов.
2. Варьируем размер модели и вычислительный бюджет (#FLOPs). Этот эксперимент позволяет понять оптимальное количество компьюта для данного размера модели.
3. Фитим степенную функцию на замерах из п. 1 и 2.
Результаты экспериментов по трём стратегиям независимо показывают один результат - число параметров модели должно увеличиваться пропорционально числу токенов. Ранее считалось, размер модели должен расти быстрее. Это значит, что все существующие модели, в т.ч. Gopher и GPT-3 избыточны по числу параметров.
Авторы предлагают свою модель Chinchilla, имеющую Gopher-like архитектуру (70В), но обученную на достаточном количестве токенов. При одинаковом вычислительном бюджете, авторам удается получить модель, значительно превосходящую предшественника по всем языковым бенчмаркам. При этом, Chinchilla легче и быстрее. Кода/весов, понятное дело, нету.
Зоопарк large language models (LLM) растёт не по дням, а по часам. Самая крупная из них, MT-NLG, уже перевалила за полтриллиона (503В) параметров. Вместе с этим, возникает резонный вопрос об оптимальности использования настолько большого числа параметров.
Данная статья - эмпирическое исследование на тему поиска оптимального соотношения количества параметров модели и использованных за время обучения токенов при данном вычислительном бюджете с целью получения наилучшей модели. Здесь вычислительный бюджет выражается в количестве операций с плавающей точкой (FLOPs), а качество модели - в значении ее функции потерь во время обучения.
Для проведения экспериментов авторы выбрали следующие стратегии:
1. Фиксируем размер модели (от 70М до 10В), варьируем количество токенов. Для каждого количества параметров тренируем 4 модели, выбираем лучшую по тренировочному лоссу. Эта модели - точка в матрице размер модели/число токенов.
2. Варьируем размер модели и вычислительный бюджет (#FLOPs). Этот эксперимент позволяет понять оптимальное количество компьюта для данного размера модели.
3. Фитим степенную функцию на замерах из п. 1 и 2.
Результаты экспериментов по трём стратегиям независимо показывают один результат - число параметров модели должно увеличиваться пропорционально числу токенов. Ранее считалось, размер модели должен расти быстрее. Это значит, что все существующие модели, в т.ч. Gopher и GPT-3 избыточны по числу параметров.
Авторы предлагают свою модель Chinchilla, имеющую Gopher-like архитектуру (70В), но обученную на достаточном количестве токенов. При одинаковом вычислительном бюджете, авторам удается получить модель, значительно превосходящую предшественника по всем языковым бенчмаркам. При этом, Chinchilla легче и быстрее. Кода/весов, понятное дело, нету.
❤1
It’s all about where you start: Text-to-image generation with seed selection
Даже у топовых диффузионок по-прежнему остаются проблемные моды. Например, многие модели продолжают генерировать неправильное количество пальцев и искаженные лица на задних планах. Проблему решают промт инжинирингом (раз, два), использованием сегментационных масок, гайденсом по картам внимания и текстовой инверсией.
Авторы разбирают возможные причины плохих генераций и выдвигают гипотезу: для редких мод модель видела не достаточно пар текст-шум во время обучения. Это приводит к тому что во время использования высока вероятность случайно выбрать такой шум, который плохо соотнесётся с текстом, а это приведет к некачественной генерации.
В качестве проверки авторы парсят тексты LAION2B, выделяют существительные и считают их частоту. Затем, для каждого класса из ImageNet с помощью SD v1 генерят по 100 картинок и классифицируют их SOTA классификатором. Показывают, что чем менее представлен класс в тренировочном распределении, тем чаще ошибается классификатор на результатах генерации.
Для решения проблемы авторы предлагают подход SeedSelect. Суть заключается в том чтобы:
— Выбрать 3-5 картинок того же класса из обучающего датасета;
— Посчитать центроид их эмбедов;
— Оптимизировать эмбед шума так чтобы он был как можно ближе к центроиду.
На практике используется два типа эмбедов: CLIP img (Semantic consistency) и VAE (Appearance consistency). В качестве лосса используется взвешенная сумма евклидовых расстояний. Исходно на каждый тюнинг шума требуется 1-5 мин, но, используя пару трюков, авторы уменьшают это время до нескольких секунд.
Эксперименты по few-shot learning и long-tail learning показывают SOTA результаты. А ещё руки нормально генерятся🤔
Ablation показывает, что всё не схлопывается в одну картинку и что 5 примеров, в целом, ОК.
В качестве ограничений авторы отмечают проблемы с возможностью эмитировать стили. Также, если концепт супер редкий, то даже этот подход не помогает. Кода нет и не обещают.
Даже у топовых диффузионок по-прежнему остаются проблемные моды. Например, многие модели продолжают генерировать неправильное количество пальцев и искаженные лица на задних планах. Проблему решают промт инжинирингом (раз, два), использованием сегментационных масок, гайденсом по картам внимания и текстовой инверсией.
Авторы разбирают возможные причины плохих генераций и выдвигают гипотезу: для редких мод модель видела не достаточно пар текст-шум во время обучения. Это приводит к тому что во время использования высока вероятность случайно выбрать такой шум, который плохо соотнесётся с текстом, а это приведет к некачественной генерации.
В качестве проверки авторы парсят тексты LAION2B, выделяют существительные и считают их частоту. Затем, для каждого класса из ImageNet с помощью SD v1 генерят по 100 картинок и классифицируют их SOTA классификатором. Показывают, что чем менее представлен класс в тренировочном распределении, тем чаще ошибается классификатор на результатах генерации.
Для решения проблемы авторы предлагают подход SeedSelect. Суть заключается в том чтобы:
— Выбрать 3-5 картинок того же класса из обучающего датасета;
— Посчитать центроид их эмбедов;
— Оптимизировать эмбед шума так чтобы он был как можно ближе к центроиду.
На практике используется два типа эмбедов: CLIP img (Semantic consistency) и VAE (Appearance consistency). В качестве лосса используется взвешенная сумма евклидовых расстояний. Исходно на каждый тюнинг шума требуется 1-5 мин, но, используя пару трюков, авторы уменьшают это время до нескольких секунд.
Эксперименты по few-shot learning и long-tail learning показывают SOTA результаты. А ещё руки нормально генерятся
Ablation показывает, что всё не схлопывается в одну картинку и что 5 примеров, в целом, ОК.
В качестве ограничений авторы отмечают проблемы с возможностью эмитировать стили. Также, если концепт супер редкий, то даже этот подход не помогает. Кода нет и не обещают.
Please open Telegram to view this post
VIEW IN TELEGRAM
DataComp: In search of the next generation of multimodal datasets
Последние прорывы в мультимодальном ML (CLIP, DALL-E, GPT, SD) связаны с использованием больших датасетов с парами картинка-текст. Несмотря на их невероятную пользу, о них до сих пор мало что известно. Большинство работ посвящено архитектурам или построению процесса обучения, в то время как данные воспринимаются как монолитная, неизменная сущность.
Авторы статьи предлагают новый бенчмарк, переворачивая традиционную парадигму ML исследований. Вместо того чтобы фиксировать датасеты и экспериментировать с моделями и методами обучения, предлагается зафиксировать код, модели и вычислительный бюджет и поработать над качеством данных с целью улучшения итоговых метрик качества.
В качестве основного пула предлагается 12.8 миллиардов пар (12.8B), соскрапленых из интернета. Далее, авторы предлагают два трека:
— Data filtering - поиск наилучшего (для обучения моделей) сабсета исходного датасета;
— Bring Your Own Data - то же самое, но можно еще и свои данные докидывать.
Также авторы предлагают изучать scaling trends - законы масштабирования мультимодальных моделей (аналог scaling laws для LLM). Для этого предлагается пул из 38 задач, а сами показывают результаты более 300 базовых экспериментов, служащих отправной точкой для дальнейших исследований.
Помимо 12.8B релизят 1B сабсет, полученный чисткой основного пула. Авторы рассматривают как бейзлайн следующие фильтры:
— Удаление не английских слов;
— Удаление слишком коротких подписей;
— Фильтрация на основании картиночных эмбедов;
— Фильтрация по порогу CLIP score.
Даже такие базовые фильтры позволяют обучить CLIP ViT-L/14 до zero-shot на ImageNet ~79%, что превосходит CLIP ViT-g/14 обученный на LAION2B с 3х компьютом😎 .
Тем кто работает с большими мультимодальными моделями имеет смысл ознакомиться детальнее. Больше информации на оф сайте и в репозитории.
Последние прорывы в мультимодальном ML (CLIP, DALL-E, GPT, SD) связаны с использованием больших датасетов с парами картинка-текст. Несмотря на их невероятную пользу, о них до сих пор мало что известно. Большинство работ посвящено архитектурам или построению процесса обучения, в то время как данные воспринимаются как монолитная, неизменная сущность.
Авторы статьи предлагают новый бенчмарк, переворачивая традиционную парадигму ML исследований. Вместо того чтобы фиксировать датасеты и экспериментировать с моделями и методами обучения, предлагается зафиксировать код, модели и вычислительный бюджет и поработать над качеством данных с целью улучшения итоговых метрик качества.
В качестве основного пула предлагается 12.8 миллиардов пар (12.8B), соскрапленых из интернета. Далее, авторы предлагают два трека:
— Data filtering - поиск наилучшего (для обучения моделей) сабсета исходного датасета;
— Bring Your Own Data - то же самое, но можно еще и свои данные докидывать.
Также авторы предлагают изучать scaling trends - законы масштабирования мультимодальных моделей (аналог scaling laws для LLM). Для этого предлагается пул из 38 задач, а сами показывают результаты более 300 базовых экспериментов, служащих отправной точкой для дальнейших исследований.
Помимо 12.8B релизят 1B сабсет, полученный чисткой основного пула. Авторы рассматривают как бейзлайн следующие фильтры:
— Удаление не английских слов;
— Удаление слишком коротких подписей;
— Фильтрация на основании картиночных эмбедов;
— Фильтрация по порогу CLIP score.
Даже такие базовые фильтры позволяют обучить CLIP ViT-L/14 до zero-shot на ImageNet ~79%, что превосходит CLIP ViT-g/14 обученный на LAION2B с 3х компьютом
Тем кто работает с большими мультимодальными моделями имеет смысл ознакомиться детальнее. Больше информации на оф сайте и в репозитории.
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥2👍1
Towards Artistic Image Aesthetics Assessment: a Large-scale Dataset and a New Method
Мы уже разбирали задачу оценки эстетичности изображения и нового датасета TAD66k, призванного продвинуть данную область. Несмотря на больший чем у предшественников размер, этот датасет имеет существенный недостаток - он практически не включает в себя изображения произведений искусства. Другие датасеты в области (AVA, AADB, FLICKR-AES) имеют ту же проблему.
Данная работа адресует проблему, предлагая:
— Датасет Boldbrush Artistic Image Dataset (BAID), состоящий из 60к изображений произведений искусства и более чем 360к меток к ним;
— Модель Style-specific Art Assessment Network (SAAN), в виде бейзлайна на BAID.
Важной особенностью сбора датасета является уход от традиционно использующихся mean opinion scores (MOS). Вместо этого, авторы взяли картинки с сайта Booldbrush. На сайте проводятся регулярные соревнования, в которых победитель определяется количеством пользовательских лайков. Авторы BAID решили конвертировать количество лайков в оценку качества из предположения: больше лайков - выше эстетичность. Понятно, что конвертировать количество в качество можно очень по-разному, поэтому им пришлось разметить 100 картинок MOS для валидации адекватности их скоринговой функции.
SAAN состоит из 3-х веток, две из которых - предобученные на ImageNet1k экстракторы признаков (VGG16, ResNet), которые далее не обучаются. Признаки из этих двух сеток комбинируются с помощью AdaIN слоя и далее выступают как единая сущность. Третья ветка - еще один ResNet50, обученный в self-supervised манере на предсказание типа и силы аугментаций. Признаки из этой ветки складываются с выходами AdaIN слоя, после чего учится MLP регрессор непосредственно на предсказание качества.
Эксперименты показывают, что:
— Таким образом можно получить инкрементальное улучшение по сравнению с TANet;
— Общее качество моделей на задачах оценки эстетичности очень не велико - SRCC ~ 0.47 для BAID.
Датасет качать тут, а модель не завезли.
Мы уже разбирали задачу оценки эстетичности изображения и нового датасета TAD66k, призванного продвинуть данную область. Несмотря на больший чем у предшественников размер, этот датасет имеет существенный недостаток - он практически не включает в себя изображения произведений искусства. Другие датасеты в области (AVA, AADB, FLICKR-AES) имеют ту же проблему.
Данная работа адресует проблему, предлагая:
— Датасет Boldbrush Artistic Image Dataset (BAID), состоящий из 60к изображений произведений искусства и более чем 360к меток к ним;
— Модель Style-specific Art Assessment Network (SAAN), в виде бейзлайна на BAID.
Важной особенностью сбора датасета является уход от традиционно использующихся mean opinion scores (MOS). Вместо этого, авторы взяли картинки с сайта Booldbrush. На сайте проводятся регулярные соревнования, в которых победитель определяется количеством пользовательских лайков. Авторы BAID решили конвертировать количество лайков в оценку качества из предположения: больше лайков - выше эстетичность. Понятно, что конвертировать количество в качество можно очень по-разному, поэтому им пришлось разметить 100 картинок MOS для валидации адекватности их скоринговой функции.
SAAN состоит из 3-х веток, две из которых - предобученные на ImageNet1k экстракторы признаков (VGG16, ResNet), которые далее не обучаются. Признаки из этих двух сеток комбинируются с помощью AdaIN слоя и далее выступают как единая сущность. Третья ветка - еще один ResNet50, обученный в self-supervised манере на предсказание типа и силы аугментаций. Признаки из этой ветки складываются с выходами AdaIN слоя, после чего учится MLP регрессор непосредственно на предсказание качества.
Эксперименты показывают, что:
— Таким образом можно получить инкрементальное улучшение по сравнению с TANet;
— Общее качество моделей на задачах оценки эстетичности очень не велико - SRCC ~ 0.47 для BAID.
Датасет качать тут, а модель не завезли.
👍2
Pick-a-Pic: An Open Dataset of User Preferences for Text-to-Image Generation
На сегодняшний день существует зоопарк мультимодальных (text+image) моделей: Stable Diffusion (SD) разных версий, DALL-E, Midjourney, Шедеврум, Кандинский и многие другие. Как определить какая лучшая? Как понять, что yet another генерация превзошла предшественников?
Сейчас для этого обычно используют комбинацию FID и CLIP score. Первая метрика отвечает за качество, вторая - за релевантность картинки тексту запроса. Проблема в том, что обе эти метрики не идеальны, а опыт пользователей, которые генерируют и оценивают картинки, как будто, никак не учитывается.
Авторы статьи предлагают метрику оценки удовлетворенности пользователя результатом генерации - PickScore. Первым шагом создания метрики стал сбор датасета:
— Создаём веб интерфейс с возможностью генерации картинки по тексту;
— После генерации пользователь выбирает лучшую картинку или объявляет ничью;
— Таким образом собираем ~1M ответов о 500k+ примерах генераций SD по 35к+ промтам, периодически баня ботов и пользователей с нежелательной активностью.
Имея такой внушительный пул данных, авторы дообучают CLIP-H на задачу предсказания предпочтения пользователей используя метод из работы InstructGPT - предсказание KL дивергенции между реальными предпочтениями пользователей и софтмакс-нормализованными предсказаниями для каждого исхода. Во избежание переобучения на небольшой набор промтов, добавляется нормализация на частоту их появления в датасете.
На выходе получается CLIP-like функция, значение которой лучше коррелирует с предпочтениями пользователей. При этом, как показано на Fig.5, PickScore склонен выбирать более эстетичные примеры, иногда в ущерб текстовой релевантности.
В статье есть интересное наблюдение про FID: метрика сильно антикоррелирована с человеческим ранжированием качества генеративных моделей на MS-COCO.
Авторы выложили код и датасет, а также предлагают ознакомиться с их веб приложением для генерации и разметки.
На сегодняшний день существует зоопарк мультимодальных (text+image) моделей: Stable Diffusion (SD) разных версий, DALL-E, Midjourney, Шедеврум, Кандинский и многие другие. Как определить какая лучшая? Как понять, что yet another генерация превзошла предшественников?
Сейчас для этого обычно используют комбинацию FID и CLIP score. Первая метрика отвечает за качество, вторая - за релевантность картинки тексту запроса. Проблема в том, что обе эти метрики не идеальны, а опыт пользователей, которые генерируют и оценивают картинки, как будто, никак не учитывается.
Авторы статьи предлагают метрику оценки удовлетворенности пользователя результатом генерации - PickScore. Первым шагом создания метрики стал сбор датасета:
— Создаём веб интерфейс с возможностью генерации картинки по тексту;
— После генерации пользователь выбирает лучшую картинку или объявляет ничью;
— Таким образом собираем ~1M ответов о 500k+ примерах генераций SD по 35к+ промтам, периодически баня ботов и пользователей с нежелательной активностью.
Имея такой внушительный пул данных, авторы дообучают CLIP-H на задачу предсказания предпочтения пользователей используя метод из работы InstructGPT - предсказание KL дивергенции между реальными предпочтениями пользователей и софтмакс-нормализованными предсказаниями для каждого исхода. Во избежание переобучения на небольшой набор промтов, добавляется нормализация на частоту их появления в датасете.
На выходе получается CLIP-like функция, значение которой лучше коррелирует с предпочтениями пользователей. При этом, как показано на Fig.5, PickScore склонен выбирать более эстетичные примеры, иногда в ущерб текстовой релевантности.
В статье есть интересное наблюдение про FID: метрика сильно антикоррелирована с человеческим ранжированием качества генеративных моделей на MS-COCO.
Авторы выложили код и датасет, а также предлагают ознакомиться с их веб приложением для генерации и разметки.
Understanding Aesthetics with Language: A Photo Critique Dataset for Aesthetic Assessment
Задача оценки эстетического качества изображения сложна своей неоднозначностью. Из-за этого, любая разметка по определению субьективно. Решают эту проблему путём сбора большого количества меток для каждого изображения. Например, в датасете TAD66k на каждую картинку собрано более 1200 меток, которые далее агрегируются в единый скор (MOS).
Авторы этой статьи критикуют такой подход за его низкую интерпретируемость. При этом, они замечают, что большинство сайтов с возможностью оценки эстетичности изображений (Flickr, Photo.net, Instagram) поддерживают функциональность добавления комментариев. Они имеют больше информации чем MOS, но игнорируются составителями датасетов.
Здесь предлагается Reddit Photo Critique Dataset (RPCD) - набор из 74к фото с 220к комментариев, собранный из тематического сообщества на Reddit. Переводить тексты в оценку эстетичности предлагается с помощью sentiment analysis исходя из следующего предположения: чем более эмоционально окрашен комментарий (не важно в положительную или отрицательную сторону), тем более эстетично изображение. Делается оценка с помощью TwitterRoBERTa. Предполагается что домены достаточно близки (и там и там соц. сеть), из-за чего можно использовать модель без дообучения.
Авторы проверяют насколько полученные оценки коррелируют с MOS получают SRCC ~ 0.64, что считают достаточно хорошей аппроксимацией с учетом отсутствия необходимости специально собирать разметку. Также подмечается, что такой подход позволяет использовать image aesthetic captioning для генерации синтетики с последующим переводом в скоры для получения неограниченной эстетической разметки.
Если взять ViT и либо полностью дообучить на RPCD, либо заморозить и обучить линейный слой поверх, можно побить NIMA - старенькую, но часто упомянаемую метркику оценки эстетичности. Код и модели выложены.
Задача оценки эстетического качества изображения сложна своей неоднозначностью. Из-за этого, любая разметка по определению субьективно. Решают эту проблему путём сбора большого количества меток для каждого изображения. Например, в датасете TAD66k на каждую картинку собрано более 1200 меток, которые далее агрегируются в единый скор (MOS).
Авторы этой статьи критикуют такой подход за его низкую интерпретируемость. При этом, они замечают, что большинство сайтов с возможностью оценки эстетичности изображений (Flickr, Photo.net, Instagram) поддерживают функциональность добавления комментариев. Они имеют больше информации чем MOS, но игнорируются составителями датасетов.
Здесь предлагается Reddit Photo Critique Dataset (RPCD) - набор из 74к фото с 220к комментариев, собранный из тематического сообщества на Reddit. Переводить тексты в оценку эстетичности предлагается с помощью sentiment analysis исходя из следующего предположения: чем более эмоционально окрашен комментарий (не важно в положительную или отрицательную сторону), тем более эстетично изображение. Делается оценка с помощью TwitterRoBERTa. Предполагается что домены достаточно близки (и там и там соц. сеть), из-за чего можно использовать модель без дообучения.
Авторы проверяют насколько полученные оценки коррелируют с MOS получают SRCC ~ 0.64, что считают достаточно хорошей аппроксимацией с учетом отсутствия необходимости специально собирать разметку. Также подмечается, что такой подход позволяет использовать image aesthetic captioning для генерации синтетики с последующим переводом в скоры для получения неограниченной эстетической разметки.
Если взять ViT и либо полностью дообучить на RPCD, либо заморозить и обучить линейный слой поверх, можно побить NIMA - старенькую, но часто упомянаемую метркику оценки эстетичности. Код и модели выложены.
👍3
Intriguing properties of synthetic images:
from generative adversarial networks to diffusion models
Генеративные сети достигли уровня, когда люди не всегда способны отличить реальную картинку от сгенерированной. Несколько работ (ECCV’22, Arxiv March 23) предлагают способы детектирования искусственного контента с помощью специальных моделей.
Авторы этой работы сместили фокус на общий анализ того чем отличаются настоящие изображения от не настоящих. Для этого они используют набор датасетов
— ImageNet, FFHQ, LAION для настоящих;
— Генерации DiT, StyleGAN, GLIDE в качестве примеров синтетических;
В качестве метода предлагается визуальный анализ статистик изображений: усредненных автокорреляций и power spectra.
Статья состоит из набора простых вариаций использования этих статистик в комбинации с различными пре- и пост-процессингами. Самые интересные, на мой взгляд, следующие:
— Синтетические изображения содержат регулярные паттерны, отличные от тех что содержатся в естественных датасетах (например, вызванных JPEG компрессией);
— Это касается не только генерации из шума, но и генеративного super resolution;
— Сильный пост-просцессинг (особенно компрессия) может маскировать характерные паттерны синтетических картинок;
— Если в исходные датасеты содержат артефакты (например, компрессию), то модели выучат их;
— Анализ радиальных и угловых спектров показывает, что генеративные модели склонны выдавать менее вариативные изображения, особенно в области средних частот;
Авторы делают вывод о том что для обнаружения сгенерированных изображений не обязательно использоваться изощренные методы. Простой статистический анализ показывает, что искусственные изображения имеют явные отличительные особенности, на основе которых могут быть созданы новые методы детекции. Кода нет.
from generative adversarial networks to diffusion models
Генеративные сети достигли уровня, когда люди не всегда способны отличить реальную картинку от сгенерированной. Несколько работ (ECCV’22, Arxiv March 23) предлагают способы детектирования искусственного контента с помощью специальных моделей.
Авторы этой работы сместили фокус на общий анализ того чем отличаются настоящие изображения от не настоящих. Для этого они используют набор датасетов
— ImageNet, FFHQ, LAION для настоящих;
— Генерации DiT, StyleGAN, GLIDE в качестве примеров синтетических;
В качестве метода предлагается визуальный анализ статистик изображений: усредненных автокорреляций и power spectra.
Статья состоит из набора простых вариаций использования этих статистик в комбинации с различными пре- и пост-процессингами. Самые интересные, на мой взгляд, следующие:
— Синтетические изображения содержат регулярные паттерны, отличные от тех что содержатся в естественных датасетах (например, вызванных JPEG компрессией);
— Это касается не только генерации из шума, но и генеративного super resolution;
— Сильный пост-просцессинг (особенно компрессия) может маскировать характерные паттерны синтетических картинок;
— Если в исходные датасеты содержат артефакты (например, компрессию), то модели выучат их;
— Анализ радиальных и угловых спектров показывает, что генеративные модели склонны выдавать менее вариативные изображения, особенно в области средних частот;
Авторы делают вывод о том что для обнаружения сгенерированных изображений не обязательно использоваться изощренные методы. Простой статистический анализ показывает, что искусственные изображения имеют явные отличительные особенности, на основе которых могут быть созданы новые методы детекции. Кода нет.
👍4
Implicit Diffusion Models for Continuous Super-Resolution
Последние диффузионные модели показывают SOTA результаты как на in-domain super resolution (SR) (SR3), так и in-the-wild SR (SR3+). В то же время, они по-прежнему страдают от важного ограничения - фиксированного апскейлинг фактора, что не практично.
Авторы этой работы предлагают решение, основанное на использовании implicit neural representations (INR). INR - представление дискретного объекта (изображения) в виде непрерывной функции. Важное свойство INR, использующееся в этой статье - их инвариантность к разрешению изображения в широких пределах.
INR ранее уже применялись для задачи SR. Работа LIIF показала хорошие результаты, однако имела недостаток в виде проблем с восстановлением высокочастотных деталей. Данная работа ставит своей целью решение этой проблемы за счет использования свойств диффузионных моделей. Предложенный метод состоит из 3 компонент:
1. LR conditioning network. Два самых распространенных способа обуславливания:
— Канкатенация предсказания на шаге
— Комбинация эмбедингов условия с предсказания. Для этого
В этой работе используются оба подхода обуславливания на LR картинку.
2. Scaling factor modulation. Простая идея - добавить scaling factor
3. INR. Эта часть унаследована из работы LIIF и представляет собой MLP, обучающийся на координатах, с добавлением условий по схеме описанной выше.
Обучаясь в стандартном DDPM сетапе, модель получается SOTA даже в постановке с фиксированным разрешением, обходя SR3 на in-domain SR на FFHQ. Судя по картинкам в статье, цель работы с произвольными scaling factors достигается. Код есть.
Последние диффузионные модели показывают SOTA результаты как на in-domain super resolution (SR) (SR3), так и in-the-wild SR (SR3+). В то же время, они по-прежнему страдают от важного ограничения - фиксированного апскейлинг фактора, что не практично.
Авторы этой работы предлагают решение, основанное на использовании implicit neural representations (INR). INR - представление дискретного объекта (изображения) в виде непрерывной функции. Важное свойство INR, использующееся в этой статье - их инвариантность к разрешению изображения в широких пределах.
INR ранее уже применялись для задачи SR. Работа LIIF показала хорошие результаты, однако имела недостаток в виде проблем с восстановлением высокочастотных деталей. Данная работа ставит своей целью решение этой проблемы за счет использования свойств диффузионных моделей. Предложенный метод состоит из 3 компонент:
1. LR conditioning network. Два самых распространенных способа обуславливания:
— Канкатенация предсказания на шаге
t (y_t) с условием (в данном случае - апсемпленая бикубиком LR картинка);— Комбинация эмбедингов условия с предсказания. Для этого
y_t прогоняется через основную сеть, а условие - через дополнительную.В этой работе используются оба подхода обуславливания на LR картинку.
2. Scaling factor modulation. Простая идея - добавить scaling factor
s как еще одно условие. Вместо стандартной подачи s в cross-attention, авторы используют отдельный MLP для перевода s в вектор масштабов. Элементы этого вектора далее нормализуются, комбинируются с LR эмбедингами и подставляются в INR - на каждый слой свой элемент вектора. 3. INR. Эта часть унаследована из работы LIIF и представляет собой MLP, обучающийся на координатах, с добавлением условий по схеме описанной выше.
Обучаясь в стандартном DDPM сетапе, модель получается SOTA даже в постановке с фиксированным разрешением, обходя SR3 на in-domain SR на FFHQ. Судя по картинкам в статье, цель работы с произвольными scaling factors достигается. Код есть.
🔥6
Common Diffusion Noise Schedules and Sample Steps are Flawed
Диффузионные модели обучают генерировать изображения из шума. Во время обучения имеются только “чистые” изображения, поэтому их постепенно зашумляют до получения полного шума. Количество добавляемого шума на шаге диффузии
Авторы обнаружили, что требование перевода в шум на шаге
Для решения проблемы предлагаются правки:
— Для линейных расписаний предлагается явно задавать SNR равным 0 на шаге T, после чего линейно перемасштабировать количество добавляемого шума на всех шагах
— Для косинусных расписаний нужно поправить только значение на шаге
Другая проблема наблюдается с популярными семплерами. DDIM и PNDM настроены таким образом, что они не включают последний шаг семплирования. Из-за этого фактический уровень шума будет отличаться от подаваемого в качестве условия значения
Также в статье затрагивается проблема с classifier-free guidance, которая приводит к пересыщению изображений. Авторы предлагают свой метод перемасштабирования. В отличие от метода dynamic thresholding из Imagen, метод подходит и для латентной диффузии.
Добавив все изменения, авторы переобчают SD и получают желаемый результат - бОльшую чувствительность к промту, больший диапазон яркости в генерациях. Есть хороший ablation про влияние каждого изменения. Код в тексте.
Диффузионные модели обучают генерировать изображения из шума. Во время обучения имеются только “чистые” изображения, поэтому их постепенно зашумляют до получения полного шума. Количество добавляемого шума на шаге диффузии
t определяется выбранным расписанием. Ключевым требованием к расписанию является перевод изображения в чистый шум на последнем шаге T. Авторы обнаружили, что требование перевода в шум на шаге
T не выполняется на практике. В популярных расписаниях есть баг, оставляющий в шуме заметное количество низкочастотной информации (поканальное среднее). Это создаёт разрыв между тренировочным и тестовым распределениями и приводит к появлению в обученных моделях неявных ограничений. Например, моделям трудно генерировать очень тёмные или очень яркие изображения. Авторы утверждают, что баг встречается во многих популярных моделях. Для решения проблемы предлагаются правки:
— Для линейных расписаний предлагается явно задавать SNR равным 0 на шаге T, после чего линейно перемасштабировать количество добавляемого шума на всех шагах
t ∈ [2, . . . , T −1].— Для косинусных расписаний нужно поправить только значение на шаге
T.Другая проблема наблюдается с популярными семплерами. DDIM и PNDM настроены таким образом, что они не включают последний шаг семплирования. Из-за этого фактический уровень шума будет отличаться от подаваемого в качестве условия значения
t. Это усугубляет сдвиг распределений.Также в статье затрагивается проблема с classifier-free guidance, которая приводит к пересыщению изображений. Авторы предлагают свой метод перемасштабирования. В отличие от метода dynamic thresholding из Imagen, метод подходит и для латентной диффузии.
Добавив все изменения, авторы переобчают SD и получают желаемый результат - бОльшую чувствительность к промту, больший диапазон яркости в генерациях. Есть хороший ablation про влияние каждого изменения. Код в тексте.
❤2👍2
Getting ViT in Shape: Scaling Laws for Compute-Optimal Model Design
Scaling laws - законы изменения качества работы моделей при варьировании (гипер-)параметров модели/обучения. Они показывают, что при соблюдении вычислительной оптимальности (Chinchilla) можно добиться большего итогового качества, а также оценить потенциальный выигрыш от увеличения компьюта и/или датасета. В то же время, предыдущие работы уделяли мало внимания архитектурным вопросам, таким как соотношения ширины и глубины трансформеров.
Работа посвящена получению Shape Optimized ViT - SoViT. Основным инсайтом статьи является наблюдение, что небольшие ViT могут достигать качества больших при одинаковом вычислительном бюджете если оптимизировать их форму (отношение ширины и глубины). В частности, удаётся получить в 2.5 меньшую чем ViT-g/14 модель, имеющую очень близкие значения качества zero-shot и fine-tuning классификации.
Статья была бы не слишком интересной, если бы результат был получен полным перебором (~400 моделей). В данном случае, авторы обошлись 115 запусками за счет предложенной процедуры Star Sweep:
1. Начинаем с большой модели (star center) для которой нужно оптимальную меньшую, перебрав несколько параметров;
2. Выбираем один из параметров и семплируем его значения по экспоненциальной сетке так, чтобы все они были сильно (минимум в 2 раза) меньше;
3. Для самой маленькой выбранной модели перебираем все параметры по сетке для получения Парето-оптимальной стартовой точки;
4. Масштабируемся. Начиная со стартовой точки совместно увеличиваем комьют и значения параметров, масштабируя последние степенной функцией со параметром из п. 2.
На практике, оказывается, что:
1. MLP размерность должна масштабироваться быстрее чем глубина, а глубина быстрее чем ширина;
2. Число параметров ViT должно расти медленнее, чем компьют;
3. Оптимальные маленькие ViT могут достигать качества неоптимальных больших.
Одним из интересных инсайтов является то, что для маленьких ViT оптимальные параметры зависят от задачи. Ни кода, ни весов нет.
Scaling laws - законы изменения качества работы моделей при варьировании (гипер-)параметров модели/обучения. Они показывают, что при соблюдении вычислительной оптимальности (Chinchilla) можно добиться большего итогового качества, а также оценить потенциальный выигрыш от увеличения компьюта и/или датасета. В то же время, предыдущие работы уделяли мало внимания архитектурным вопросам, таким как соотношения ширины и глубины трансформеров.
Работа посвящена получению Shape Optimized ViT - SoViT. Основным инсайтом статьи является наблюдение, что небольшие ViT могут достигать качества больших при одинаковом вычислительном бюджете если оптимизировать их форму (отношение ширины и глубины). В частности, удаётся получить в 2.5 меньшую чем ViT-g/14 модель, имеющую очень близкие значения качества zero-shot и fine-tuning классификации.
Статья была бы не слишком интересной, если бы результат был получен полным перебором (~400 моделей). В данном случае, авторы обошлись 115 запусками за счет предложенной процедуры Star Sweep:
1. Начинаем с большой модели (star center) для которой нужно оптимальную меньшую, перебрав несколько параметров;
2. Выбираем один из параметров и семплируем его значения по экспоненциальной сетке так, чтобы все они были сильно (минимум в 2 раза) меньше;
3. Для самой маленькой выбранной модели перебираем все параметры по сетке для получения Парето-оптимальной стартовой точки;
4. Масштабируемся. Начиная со стартовой точки совместно увеличиваем комьют и значения параметров, масштабируя последние степенной функцией со параметром из п. 2.
На практике, оказывается, что:
1. MLP размерность должна масштабироваться быстрее чем глубина, а глубина быстрее чем ширина;
2. Число параметров ViT должно расти медленнее, чем компьют;
3. Оптимальные маленькие ViT могут достигать качества неоптимальных больших.
Одним из интересных инсайтов является то, что для маленьких ViT оптимальные параметры зависят от задачи. Ни кода, ни весов нет.
❤3
TIFA: Accurate and Interpretable Text-to-Image Faithfulness Evaluation with Question Answering
CLIPScore - одна из наиболее популярных метрик оценки релевантности текста и картинки. При этом, было показано, что она не чувствительна к ошибкам в подсчете числа объектов (Radford et. al, 2021), определении отношений между объектами (CREPE) и, в целом, не идеальна.
В этой статье авторы предлагают метрику оценки text-to-image релевантности TIFA. Метод работает следующим образом:
— Берём текст из пары текст-картинка и подаём его в генеративную языковую модель (GPT-3) с запросом сформулировать вопрос к тексту с несколько вариантов ответов. Только один ответ должен быть верным;
— Фильтруем вопросы с помощью Visual Question Answering (VQA) модели (UnifiedQA). Идея в том, чтобы выбирать только те вопросы, для которых GPT-3 и UnifiedQA соглашаются в ответах, а сами слова для ответов очень похожи.
— Берём картинку из той же пары и сгенерированный в п. 1 вопрос с вариантами ответа. Подаём их в еще одну VQA модель (mPLUG-large) ;
— Измеряем согласованность ответов двух QA моделей (текстовой и картиночной). Это и есть метрика.
Авторы соглашаются с тем, что метод чувствителен к качеству работы сразу нескольких компонентов (генеративная LLM, VQA модели) и, в целом, состоит из большого числа элементов. В результате, не очевидно, что он должен работать хорошо.
Для верификации качества подхода предлагается бенчмарк TIFA v1.0, состоящий из 4,081 текстов (COCO captions, DrawBench, PartiPrompt, PaintSkill) и 25,829 соответствующих им комбинаций вопросов-ответов. На части бенчмарка были сгенерированы 800 изображений с помощью популярных диффузионок (minDALL-E, VQ-Diffusion, Stable Diffusion v1.1, v1.5, and v2.1) и собраны аннотации текстовой релевантности по шкале 1-5, переведенные далее в MOS. Авторы показывают, что предложенная метрика показывает SRCC ~ 0.6, в то время как CLIPScore имеет SRCC ~ 0.33. Присутствует ablation на тему использования альтернативных VQA моделей. Код и датасет выложены.
CLIPScore - одна из наиболее популярных метрик оценки релевантности текста и картинки. При этом, было показано, что она не чувствительна к ошибкам в подсчете числа объектов (Radford et. al, 2021), определении отношений между объектами (CREPE) и, в целом, не идеальна.
В этой статье авторы предлагают метрику оценки text-to-image релевантности TIFA. Метод работает следующим образом:
— Берём текст из пары текст-картинка и подаём его в генеративную языковую модель (GPT-3) с запросом сформулировать вопрос к тексту с несколько вариантов ответов. Только один ответ должен быть верным;
— Фильтруем вопросы с помощью Visual Question Answering (VQA) модели (UnifiedQA). Идея в том, чтобы выбирать только те вопросы, для которых GPT-3 и UnifiedQA соглашаются в ответах, а сами слова для ответов очень похожи.
— Берём картинку из той же пары и сгенерированный в п. 1 вопрос с вариантами ответа. Подаём их в еще одну VQA модель (mPLUG-large) ;
— Измеряем согласованность ответов двух QA моделей (текстовой и картиночной). Это и есть метрика.
Авторы соглашаются с тем, что метод чувствителен к качеству работы сразу нескольких компонентов (генеративная LLM, VQA модели) и, в целом, состоит из большого числа элементов. В результате, не очевидно, что он должен работать хорошо.
Для верификации качества подхода предлагается бенчмарк TIFA v1.0, состоящий из 4,081 текстов (COCO captions, DrawBench, PartiPrompt, PaintSkill) и 25,829 соответствующих им комбинаций вопросов-ответов. На части бенчмарка были сгенерированы 800 изображений с помощью популярных диффузионок (minDALL-E, VQ-Diffusion, Stable Diffusion v1.1, v1.5, and v2.1) и собраны аннотации текстовой релевантности по шкале 1-5, переведенные далее в MOS. Авторы показывают, что предложенная метрика показывает SRCC ~ 0.6, в то время как CLIPScore имеет SRCC ~ 0.33. Присутствует ablation на тему использования альтернативных VQA моделей. Код и датасет выложены.
👍1
What You See is What You Read? Improving Text-Image Alignment Evaluation
Модели вроде CLIP, BLIP и COCA используются для оценки релевантности текста и изображения. Но как измерить их способность оценивать релевантность? Насколько каждый из методов согласуется с человеческими оценками? Сейчас для этого используются косвенные признаки: zero-shot/few-shot качество решения дискриминативных задач на общепринятых бенчмарках вроде ImageNet.
Недавно была предложена метрика и бенчмарк TIFA. Авторы TIFA предлагают для каждого текста из пары текст-картинка генерировать вопросы и ответы, а затем измерять согласованность верных ответов, полученных из текста и картинки.
В этой работе, авторы используют похожий подход с использованием VQA моделей и предлагают два метода:
1. VQ^2 - похоже на TIFA, только измеряется верность текстового ответа при данной картинке;
2. Visual NLI models (VNLI) - обучаем модель непосредственно предсказывать текстово-картиночную релевантность. Для этого берутся BLIP2 и PaLI-17B и файнтюнятся на задачу предсказания бинарного ответа (“yes”, “no”) на вопрос. Для этого используется датасет из 100к пар текст-картинка, размеченный ассессорами. Негативные и нейтральные (не релевантные) примеры генерятся автоматически.
Помимо метода, авторы также предлагают свой бенчмарк, состоящий из ~32k пар текст-картинка, взятых из нескольких датасетов. Пары размечены ассессорами на релевантность.
Предложенные метрики могут быть использованы для оценки качества работы text-to-image моделей. В статье есть несколько примеров того как VQ^2 и затюненная PaLI оказываются более чувствительными к огрехам генерации Stable Diffusion, чем CLIP RN50. Код и данные выложены.
Модели вроде CLIP, BLIP и COCA используются для оценки релевантности текста и изображения. Но как измерить их способность оценивать релевантность? Насколько каждый из методов согласуется с человеческими оценками? Сейчас для этого используются косвенные признаки: zero-shot/few-shot качество решения дискриминативных задач на общепринятых бенчмарках вроде ImageNet.
Недавно была предложена метрика и бенчмарк TIFA. Авторы TIFA предлагают для каждого текста из пары текст-картинка генерировать вопросы и ответы, а затем измерять согласованность верных ответов, полученных из текста и картинки.
В этой работе, авторы используют похожий подход с использованием VQA моделей и предлагают два метода:
1. VQ^2 - похоже на TIFA, только измеряется верность текстового ответа при данной картинке;
2. Visual NLI models (VNLI) - обучаем модель непосредственно предсказывать текстово-картиночную релевантность. Для этого берутся BLIP2 и PaLI-17B и файнтюнятся на задачу предсказания бинарного ответа (“yes”, “no”) на вопрос. Для этого используется датасет из 100к пар текст-картинка, размеченный ассессорами. Негативные и нейтральные (не релевантные) примеры генерятся автоматически.
Помимо метода, авторы также предлагают свой бенчмарк, состоящий из ~32k пар текст-картинка, взятых из нескольких датасетов. Пары размечены ассессорами на релевантность.
Предложенные метрики могут быть использованы для оценки качества работы text-to-image моделей. В статье есть несколько примеров того как VQ^2 и затюненная PaLI оказываются более чувствительными к огрехам генерации Stable Diffusion, чем CLIP RN50. Код и данные выложены.
❤1
Learning the Visualness of Text Using Large Vision-Language Models
Мы уже привыкли думать о парах текст-изображение в терминах текстовой релевантности: соотносится ли то что написано с тем что изображено? Авторы предлагают взглянуть на проблему под другим углом и ввести понятие text visualness. Один текст может описывать пейзаж, другой - юридические законы. Оба текста могут быть вполне когерентны, но иметь разную visualness: в первом случае читатель будет способен представить себе картину описанного, во втором - нет. Эксперимент с генерацией DALL-E и Imagen показывает, что у моделей тоже возникают трудности с не визуальными текстами.
Для решения задачи определения text visualness авторы предлагают Text Imageability Dataset (TImeD). Он состоит из двух частей.
— Первая содержит ~15к визуальных и ~32к не визуальных текстов полученных автоматическим парсингом PDF документов. Информация о text visualness косвенно извлекается из релевантности иллюстраций и предложений в тексте.
— Вторая содержит ~3.6k текстов. Она получена таким же образом, но дополнительно размечена ответами ассессоров на вопрос: “Do you agree
that the sentence below evokes an image or picture in your mind?”.
Предложенный датасет используется для дообучения CLIP на задачу определения text visualness. Во время дообучения, визуальные тексты сопоставляют с их изображениями, а не визуальные - со специальными NULL изображением (шум). Это позволяет модели выучить разницу между визуальными и не визуальными текстами, а также привязать не визуальные тексты к NULL картинке, которая может использоваться в случае отсутствия пары. CLIP последовательно дообучают на обеих частях TImeD для получения модели TIP-CLIP.
Эксперименты показывают, что карты внимания TIP-CLIP более сфокусированы на визуальные индикаторы в текстах, а отобранные моделью тексты приводят к более качественным генерациям t2i моделями. Страница проекта, код не обещают.
Мы уже привыкли думать о парах текст-изображение в терминах текстовой релевантности: соотносится ли то что написано с тем что изображено? Авторы предлагают взглянуть на проблему под другим углом и ввести понятие text visualness. Один текст может описывать пейзаж, другой - юридические законы. Оба текста могут быть вполне когерентны, но иметь разную visualness: в первом случае читатель будет способен представить себе картину описанного, во втором - нет. Эксперимент с генерацией DALL-E и Imagen показывает, что у моделей тоже возникают трудности с не визуальными текстами.
Для решения задачи определения text visualness авторы предлагают Text Imageability Dataset (TImeD). Он состоит из двух частей.
— Первая содержит ~15к визуальных и ~32к не визуальных текстов полученных автоматическим парсингом PDF документов. Информация о text visualness косвенно извлекается из релевантности иллюстраций и предложений в тексте.
— Вторая содержит ~3.6k текстов. Она получена таким же образом, но дополнительно размечена ответами ассессоров на вопрос: “Do you agree
that the sentence below evokes an image or picture in your mind?”.
Предложенный датасет используется для дообучения CLIP на задачу определения text visualness. Во время дообучения, визуальные тексты сопоставляют с их изображениями, а не визуальные - со специальными NULL изображением (шум). Это позволяет модели выучить разницу между визуальными и не визуальными текстами, а также привязать не визуальные тексты к NULL картинке, которая может использоваться в случае отсутствия пары. CLIP последовательно дообучают на обеих частях TImeD для получения модели TIP-CLIP.
Эксперименты показывают, что карты внимания TIP-CLIP более сфокусированы на визуальные индикаторы в текстах, а отобранные моделью тексты приводят к более качественным генерациям t2i моделями. Страница проекта, код не обещают.
An Inverse Scaling Law for CLIP Training
CLIP и Open-CLIP — foundation модели, послужившие причиной прорывов во многих областях, в том числе text-to-image генерации. Однако, для их обучения требуются не малые вычислительные ресурсы. Сравнительно небольшой OpenCLIP-B/16 обучали ~10k GPU часов на А100 для получения скромных 67.1% zero-shot на ImageNet1k.
Авторы статьи задались вопросами вычислительной оптимальности текущих пайплайнов обучения и предложили:
— Набор трюков для ускорения обучения моделей текстовой релевантности;
— Результаты scaling laws экспериментов, показывающие как соблюдать балланс между длинами последовательностей и ёмкостью моделей.
Про трюки:
— Для картинок используются комбинации ранее известных механизмов маскирование токенов (кропов): Random, Grid, Block + ресайзинг бикубик интерполяцией с антиалиасингом;
— Для текстов используется truncation (берем первые
Про scaling laws:
Перебирали оси: размер модели (S/16, B/16, L/16), длины последовательностей токенов и компьют. Главным неочевидным наблюдением является то чем бОльшие картиночные/текстовые энкодеры используются, тем менее они чувствительны к уменьшению длины используемой последовательности токенов. По этой причине авторы называют полученный закон Inverse.
Все замеры делаются на прокси задачах, в основном zero-shot классификация и retrieval. Правильно подобрав соотношение длины последовательности, размера модели и трюков с подготовкой данных, удается сократить итоговое количество затраченных на обучение GPU часов во много раз. Так, удается обучить L/16 до 69.3% на ImageNet1k за 4 дня на одной машине с 8хА100.
Помимо результатов авторы делятся своим фреймворком для эффективного обучения.
CLIP и Open-CLIP — foundation модели, послужившие причиной прорывов во многих областях, в том числе text-to-image генерации. Однако, для их обучения требуются не малые вычислительные ресурсы. Сравнительно небольшой OpenCLIP-B/16 обучали ~10k GPU часов на А100 для получения скромных 67.1% zero-shot на ImageNet1k.
Авторы статьи задались вопросами вычислительной оптимальности текущих пайплайнов обучения и предложили:
— Набор трюков для ускорения обучения моделей текстовой релевантности;
— Результаты scaling laws экспериментов, показывающие как соблюдать балланс между длинами последовательностей и ёмкостью моделей.
Про трюки:
— Для картинок используются комбинации ранее известных механизмов маскирование токенов (кропов): Random, Grid, Block + ресайзинг бикубик интерполяцией с антиалиасингом;
— Для текстов используется truncation (берем первые
N токенов, остальное выкидываем), random masking, block masking (выкидываем случайные блоки токенов) и syntax masking (с наименьшей вероятностью убираем существительные).Про scaling laws:
Перебирали оси: размер модели (S/16, B/16, L/16), длины последовательностей токенов и компьют. Главным неочевидным наблюдением является то чем бОльшие картиночные/текстовые энкодеры используются, тем менее они чувствительны к уменьшению длины используемой последовательности токенов. По этой причине авторы называют полученный закон Inverse.
Все замеры делаются на прокси задачах, в основном zero-shot классификация и retrieval. Правильно подобрав соотношение длины последовательности, размера модели и трюков с подготовкой данных, удается сократить итоговое количество затраченных на обучение GPU часов во много раз. Так, удается обучить L/16 до 69.3% на ImageNet1k за 4 дня на одной машине с 8хА100.
Помимо результатов авторы делятся своим фреймворком для эффективного обучения.
🔥1
DreamSim: Learning New Dimensions of
Human Visual Similarity using Synthetic Data
Есть такая задача - оценивать похожесть картинок. Основные, публично доступные сейчас методы - IQA метрики (LPIPS, DISTS, PieAPP) и модели текстовой релевантности (CLIP, DINO, MAE). Принцип работы первых основывается на анализе низкоуровневых признаков. Они задумывались для поиска артефактов, бОльшая часть которых сильно локализованы. Вторые анализируют картинки целиком и могут хорошо понимать близость концептов, но могут иметь проблемы с менее высокоуровневыми характеристиками: цвет, композиция, изменение мелких деталей.
Авторы поставили целью получить модель, способную работать на неком среднем уровне и хорошо согласовываться с человеческим пониманием похожести изображений.
Основной вклад - датсет NIGHTS, состоящих из триплетов: исходная картинка и две её вариации, полученные с помощью Stable Diffusion (SD). Авторы придумали интересный метод сбора разметки. Ассессоров просили выбрать наиболее похожую вариацию из двух предложенных. Начали со 100к триплетов, которые разметили по 1 разу. После этого, процедуру повторили, но оставили только те примеры, в которых ответы первого и второго раунда совпали. Так продолжали 10 раундов, в результате чего осталось ~20k триплетов с единодушными ответами, они и составили финальный датасет. Довольно интересный способ получить разметку с малой (нулевой) дисперсией в столь сложной и, казалось бы, субъективной задаче.
Новая модель представляет собой ансамбль нескольких тушек из CLIP/MAE/OpenCLIP, затюненных с помощью LoRA hinge лосс. Итоговая модель имеет точность порядка 0.96. Её эффективность также показали на задаче image retrieval и feature inversion, где “на глаз” заметны более качественные результаты.
Важно отметить, что в датасете нет лиц людей, а сама модель может иметь баес на SD. Код и данные выложены.
Human Visual Similarity using Synthetic Data
Есть такая задача - оценивать похожесть картинок. Основные, публично доступные сейчас методы - IQA метрики (LPIPS, DISTS, PieAPP) и модели текстовой релевантности (CLIP, DINO, MAE). Принцип работы первых основывается на анализе низкоуровневых признаков. Они задумывались для поиска артефактов, бОльшая часть которых сильно локализованы. Вторые анализируют картинки целиком и могут хорошо понимать близость концептов, но могут иметь проблемы с менее высокоуровневыми характеристиками: цвет, композиция, изменение мелких деталей.
Авторы поставили целью получить модель, способную работать на неком среднем уровне и хорошо согласовываться с человеческим пониманием похожести изображений.
Основной вклад - датсет NIGHTS, состоящих из триплетов: исходная картинка и две её вариации, полученные с помощью Stable Diffusion (SD). Авторы придумали интересный метод сбора разметки. Ассессоров просили выбрать наиболее похожую вариацию из двух предложенных. Начали со 100к триплетов, которые разметили по 1 разу. После этого, процедуру повторили, но оставили только те примеры, в которых ответы первого и второго раунда совпали. Так продолжали 10 раундов, в результате чего осталось ~20k триплетов с единодушными ответами, они и составили финальный датасет. Довольно интересный способ получить разметку с малой (нулевой) дисперсией в столь сложной и, казалось бы, субъективной задаче.
Новая модель представляет собой ансамбль нескольких тушек из CLIP/MAE/OpenCLIP, затюненных с помощью LoRA hinge лосс. Итоговая модель имеет точность порядка 0.96. Её эффективность также показали на задаче image retrieval и feature inversion, где “на глаз” заметны более качественные результаты.
Важно отметить, что в датасете нет лиц людей, а сама модель может иметь баес на SD. Код и данные выложены.
🔥2
Scaling Data-Constrained Language Models
Большие языковые модели (LLM) обучают на огромных корпусах текстовых данных. При этом, размеры датасетов позволяют проходить по текстам без повторений. Это значит, что обучение, формально, длится менее одной эпохи.
Все предыдущие scaling laws работы были выполнены именно в таком режиме. В то же время, оценки по Chinchilla-оптимальности показывают, что данные скоро кончатся, то есть для обучения самых больших моделей прийдется несколько раз проходиться по датасету. Возникает вопрос: как будут масштабироваться модели в режиме, когда количество данных станет ограничено?
Авторы проводят следующие эксперименты:
1. Фиксируют датасет, варьируют количество эпох и параметров в модели (используют GPT-2-подобную архитектуру);
2. Фиксируют вычислительный бюджет, варьируют размер датасета в терминах количества уникальных токенов (до 900В) и эпох обучения.
3. Оптимизируют scaling law - функцию масштабирования качества работы модели в зависимости от выбранных параметров. Функцию экстраполируют для получения предсказаний того как будет вести себя модель на бОльших масштабах данных/компьюта.
В статье очень много интересных наблюдений, вот некоторые из них:
— В текущем сетапе (“1 epoch training”) модели существенно недоиспользуют данные. Зафиксировав множество данных, лучший лосс (по нему оценивают качество) получается при использовании в 20-60 раз бОльших моделей и числа эпох, чем делается сейчас.
— При обучении с несколькими проходами по данным, на увеличение числа эпох следует тратить бОльшую часть имеющегося вычислительного бюджета чем на увеличение размера модели.
— Насыщение данные происходит достаточно медленно. Например, для некоторых зафиксированных модели/датасета и 4 эпох обучения, валидационный лосс всего на 0.5% больше, чем при обучении на тем же количество уникальных токенов.
— В среднем, обучение до 16 эпох даёт неплохие улучшения качества, после чего начинаются diminishing returns.
Код, модельки, датасеты выложены.
Большие языковые модели (LLM) обучают на огромных корпусах текстовых данных. При этом, размеры датасетов позволяют проходить по текстам без повторений. Это значит, что обучение, формально, длится менее одной эпохи.
Все предыдущие scaling laws работы были выполнены именно в таком режиме. В то же время, оценки по Chinchilla-оптимальности показывают, что данные скоро кончатся, то есть для обучения самых больших моделей прийдется несколько раз проходиться по датасету. Возникает вопрос: как будут масштабироваться модели в режиме, когда количество данных станет ограничено?
Авторы проводят следующие эксперименты:
1. Фиксируют датасет, варьируют количество эпох и параметров в модели (используют GPT-2-подобную архитектуру);
2. Фиксируют вычислительный бюджет, варьируют размер датасета в терминах количества уникальных токенов (до 900В) и эпох обучения.
3. Оптимизируют scaling law - функцию масштабирования качества работы модели в зависимости от выбранных параметров. Функцию экстраполируют для получения предсказаний того как будет вести себя модель на бОльших масштабах данных/компьюта.
В статье очень много интересных наблюдений, вот некоторые из них:
— В текущем сетапе (“1 epoch training”) модели существенно недоиспользуют данные. Зафиксировав множество данных, лучший лосс (по нему оценивают качество) получается при использовании в 20-60 раз бОльших моделей и числа эпох, чем делается сейчас.
— При обучении с несколькими проходами по данным, на увеличение числа эпох следует тратить бОльшую часть имеющегося вычислительного бюджета чем на увеличение размера модели.
— Насыщение данные происходит достаточно медленно. Например, для некоторых зафиксированных модели/датасета и 4 эпох обучения, валидационный лосс всего на 0.5% больше, чем при обучении на тем же количество уникальных токенов.
— В среднем, обучение до 16 эпох даёт неплохие улучшения качества, после чего начинаются diminishing returns.
Код, модельки, датасеты выложены.
👍2
When are ensembles really effective?
Ансамблирование - популярная техника улучшения качества решения задач, особенно в соревновательном ML. Deep ensembles продолжают использовать для комбинирования моделей и оценки uncertainty, а бустинги остаются наиболее популярным методом решения большого класса задач.
Не смотря на это, нет до конца выработанной теории на тему того когда все-таки использование ансамблей даёт прирост и всегда ли выгоднее использовать ансамбль вместо одной, тяжелой модельки.
Авторы атакуют проблему с двух сторон: теоретической и практической.
Теоретически доказывается, что:
1. Компетентный ансамбль никогда не ухудшит работы системы. Компетентный ансамбль значит, что каждая входящая в него модель работает лучше рандома.
2. Ансамбль тем эффективнее, чем менее оптимальные (в терминах доли от максимального качества) и рассогласованные модели входят в него.
Практические результаты подтверждают теорию, а также практикой показываются несколько довольно теоретических законов😂 . Например:
Будем называть модель интерполяционной, когда у нее нулевая ошибка на обучающей выборке и не интерполяционной в противном случае. Тогда, ансамбли интерполяционных моделей улучшают качество строго хуже, чем не интерполяционных. Иными словами, это означает, что переобучение плохо сказывается на эффективности ансамблирования.
Если вам кажется, что в сказанном ничего нового, то в этом есть доля правды. Действительно, подобные рассуждения гуляют по статьям и блогам уже давно. Статья же про наведение порядка и формальные доказательства того что давно считается conventional wisdom.
Все эксперименты на довольно простых бенчмарках вроде MNIST, CIFAR, IMDB. Модели тоже небольшие. К слову, вопрос про ансамбль vs большая моделька остался не адресованным. Кода нет.
Ансамблирование - популярная техника улучшения качества решения задач, особенно в соревновательном ML. Deep ensembles продолжают использовать для комбинирования моделей и оценки uncertainty, а бустинги остаются наиболее популярным методом решения большого класса задач.
Не смотря на это, нет до конца выработанной теории на тему того когда все-таки использование ансамблей даёт прирост и всегда ли выгоднее использовать ансамбль вместо одной, тяжелой модельки.
Авторы атакуют проблему с двух сторон: теоретической и практической.
Теоретически доказывается, что:
1. Компетентный ансамбль никогда не ухудшит работы системы. Компетентный ансамбль значит, что каждая входящая в него модель работает лучше рандома.
2. Ансамбль тем эффективнее, чем менее оптимальные (в терминах доли от максимального качества) и рассогласованные модели входят в него.
Практические результаты подтверждают теорию, а также практикой показываются несколько довольно теоретических законов
Будем называть модель интерполяционной, когда у нее нулевая ошибка на обучающей выборке и не интерполяционной в противном случае. Тогда, ансамбли интерполяционных моделей улучшают качество строго хуже, чем не интерполяционных. Иными словами, это означает, что переобучение плохо сказывается на эффективности ансамблирования.
Если вам кажется, что в сказанном ничего нового, то в этом есть доля правды. Действительно, подобные рассуждения гуляют по статьям и блогам уже давно. Статья же про наведение порядка и формальные доказательства того что давно считается conventional wisdom.
Все эксперименты на довольно простых бенчмарках вроде MNIST, CIFAR, IMDB. Модели тоже небольшие. К слову, вопрос про ансамбль vs большая моделька остался не адресованным. Кода нет.
Please open Telegram to view this post
VIEW IN TELEGRAM
Forget-Me-Not: Learning to Forget in Text-to-Image Diffusion Models
Концепт - абстрактное понятие, характеризующее объект или мысль, которая также может служить основанием для человеческого восприятия. В области компьютерного зрения под концептами могут пониматься материальные сущности: физически существующие объекты и отношения между ними, их позы и поведение, а так же стилизация изображений в целом. В ходе обучения модели запоминают концепты, в том числе и те, которые нам не хотелось бы видеть потом в генерациях.
Работа посвящена задаче удаления концептов из уже обученных генеративных моделей. Предлагается:
1. Просчитать текстовые эмбединги нежелательных концептов;
2. Просчитать карты внимания между входными признаками и текстовыми эмбедами из п.1;
3. Минимизировать значения карт внимания и обновить веса модели.
Бывает, что нежелательный концепт плохо формализуется словами или необходимые токены отсутствуют/плохо выучены текстовой моделью. В этом случае предлагается использовать текстовую инверсию. К сожалению, это все детали по методу, представленные в статье.
Для оценки качества предлагается бенчмарк ConceptBench и метрика Memorization Score (M-Score). Бенчмарк включает три категории (object, identity, style) разной уровни абстрактности и сложности. Деталей также не много. Из описания следует, что это бенчмарк включает в себя большое количество категорий, часть из которых имеет иерархическую структуру. Например, в категории instances, у класса Dog если подклассы Corgi и Husky.
Эффективность подхода замеряют с помощью текстовой инверсии: замеряют косинус угла между эмбедингами концепта, полученного по изображению до и после применения процедуры удаления концепта. Код обещают тут.
Концепт - абстрактное понятие, характеризующее объект или мысль, которая также может служить основанием для человеческого восприятия. В области компьютерного зрения под концептами могут пониматься материальные сущности: физически существующие объекты и отношения между ними, их позы и поведение, а так же стилизация изображений в целом. В ходе обучения модели запоминают концепты, в том числе и те, которые нам не хотелось бы видеть потом в генерациях.
Работа посвящена задаче удаления концептов из уже обученных генеративных моделей. Предлагается:
1. Просчитать текстовые эмбединги нежелательных концептов;
2. Просчитать карты внимания между входными признаками и текстовыми эмбедами из п.1;
3. Минимизировать значения карт внимания и обновить веса модели.
Бывает, что нежелательный концепт плохо формализуется словами или необходимые токены отсутствуют/плохо выучены текстовой моделью. В этом случае предлагается использовать текстовую инверсию. К сожалению, это все детали по методу, представленные в статье.
Для оценки качества предлагается бенчмарк ConceptBench и метрика Memorization Score (M-Score). Бенчмарк включает три категории (object, identity, style) разной уровни абстрактности и сложности. Деталей также не много. Из описания следует, что это бенчмарк включает в себя большое количество категорий, часть из которых имеет иерархическую структуру. Например, в категории instances, у класса Dog если подклассы Corgi и Husky.
Эффективность подхода замеряют с помощью текстовой инверсии: замеряют косинус угла между эмбедингами концепта, полученного по изображению до и после применения процедуры удаления концепта. Код обещают тут.
Emerging Properties in Self-Supervised Vision Transformers
Статья о модели DINO, ставшей уже классическим примером self-supervised learning (SSL) претрена общего назначения в области комп. зрения.
На момент публикации уже существовали LLM, основанные на трансформере и показывающие классные результаты за счет SSL, например BERT c его next sentence prediction и GPT с language modelling. А ViT все предобучали на классификацию. У авторов возник логичный вопрос: а можно ли придумать SSL схему для ViT такую что:
— Модель станет SOTA для zero-shot/few-shot решения широкого круга задач;
— У модели начнут появляться особые свойства, отличные от тех что наблюдаются у CNN при SSL.
Метод состоит из двух основных компонент.
1. Knowledge distillation.
— Две сети (student - s, и teacher - t) с идентичными архитектурами инициализируются одинаково
— Через обе пропускают одно и то же изображение аугментированное по-разному. Основная аугментация - кропы по стратегии из SwAV, которые бывают локальные (маленькие) и глобальные (большие). s видит оба типа, t - только локальные. Это заставляет s учить взаимосвязь между локальными и глобальными признаками.
— Лосс - кросс энтропия между предсказаниями классов s и t
— Градиент пускают только через s, t обновляется как EMA по весам s.
2. Трюки для предотвращения mode collapse (ситуации, когда модель научается генерить вектор, тривиально удовлетворяющий условию лосса):
— Contrastive loss (e.g., Instance Discrimination)
— Clustering constraints (e.g. SwAV)
— Predictor & batch norm (e.g., BYOL)
— Batch norm alternatives (e.g., Group norm)
Модель оценивают с помощью уже привычных сегодня процедур linear probing и kNN eval. Солидные на момент публикации 78.3% на ImageNet1k за счет всего лишь ViT-S/8 в kNN сеттинге показывают эффективность в случае, если вам нужен чисто картиночный претрен. Правда стоит сделать скидку на то что модель обучалась на ImageNet1k, хоть и не видела меток. Солидный ablation и высокая практическая ценность делает работу очень важной в области SSL. Код и модельки.
Статья о модели DINO, ставшей уже классическим примером self-supervised learning (SSL) претрена общего назначения в области комп. зрения.
На момент публикации уже существовали LLM, основанные на трансформере и показывающие классные результаты за счет SSL, например BERT c его next sentence prediction и GPT с language modelling. А ViT все предобучали на классификацию. У авторов возник логичный вопрос: а можно ли придумать SSL схему для ViT такую что:
— Модель станет SOTA для zero-shot/few-shot решения широкого круга задач;
— У модели начнут появляться особые свойства, отличные от тех что наблюдаются у CNN при SSL.
Метод состоит из двух основных компонент.
1. Knowledge distillation.
— Две сети (student - s, и teacher - t) с идентичными архитектурами инициализируются одинаково
— Через обе пропускают одно и то же изображение аугментированное по-разному. Основная аугментация - кропы по стратегии из SwAV, которые бывают локальные (маленькие) и глобальные (большие). s видит оба типа, t - только локальные. Это заставляет s учить взаимосвязь между локальными и глобальными признаками.
— Лосс - кросс энтропия между предсказаниями классов s и t
— Градиент пускают только через s, t обновляется как EMA по весам s.
2. Трюки для предотвращения mode collapse (ситуации, когда модель научается генерить вектор, тривиально удовлетворяющий условию лосса):
— Contrastive loss (e.g., Instance Discrimination)
— Clustering constraints (e.g. SwAV)
— Predictor & batch norm (e.g., BYOL)
— Batch norm alternatives (e.g., Group norm)
Модель оценивают с помощью уже привычных сегодня процедур linear probing и kNN eval. Солидные на момент публикации 78.3% на ImageNet1k за счет всего лишь ViT-S/8 в kNN сеттинге показывают эффективность в случае, если вам нужен чисто картиночный претрен. Правда стоит сделать скидку на то что модель обучалась на ImageNet1k, хоть и не видела меток. Солидный ablation и высокая практическая ценность делает работу очень важной в области SSL. Код и модельки.
👍3