Сегодня я расскажу о некоторых новых открытиях в моделях диффузии шумоподавления, в частности, о руководстве. Я предполагаю, что вы знакомы с моделями диффузии шумоподавления для синтеза изображений. Если нет, то на github¹ есть огромный справочный репозиторий, который указывает практически на все, что есть в этой области.

В моделях распространения «наведение» — это термин, используемый для описания условий процесса распространения, который подталкивает изображение в определенном направлении, часто к определенному целевому классу. Ранние попытки заключались в использовании градиента предварительно обученного классификатора для обработки результатов процесса диффузии на каждом временном шаге. Это руководство на основе классификатора дает существенное улучшение качества изображения по сравнению с неуправляемой диффузией, но оно сопряжено с некоторыми проблемами. Во-первых, классификатор должен иметь возможность обрабатывать зашумленные данные, чтобы давать достоверную информацию на каждом этапе обратной диффузии. Это означает, что определенный классификатор, отражающий зависящее от времени кондиционирование в моделях распространения, должен быть обучен, чтобы его можно было использовать для управления распространением. Это отягощает конвейер обучения по существу обучением двух моделей. Вторая проблема заключается в том, что использование градиента классификатора изображений полезно, но не чрезвычайно полезно; Градиенты классификаторов изображений часто имеют очень мало значения в отношении целевого изображения.

Из-за этих препятствий чрезвычайно популярным стал другой тип руководства: руководство без классификатора. Руководство без классификатора, по сути, обучает модель условной диффузии, но во время обучения случайным образом отбрасывает обусловливающую информацию. В результате получается модель, которую можно использовать как условно, так и безоговорочно, и которая существенно улучшает качество выборки. Это нашло широкое применение благодаря своей эффективности и простоте реализации и используется как в моделях OpenAI GLIDE², так и в моделях Stable Diffusion³ CompVis.

Я избегал математики, но Сандер Дилеман написал отличный пост⁴ на эту тему, если вы хотите более подробно ознакомиться с руководством.

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

Руководство по надежному классификатору

В последние надежные классификаторы были внесены некоторые изменения. Представьте себе противника в виде компьютерного алгоритма, который хочет обманом заставить классификатор изображений сделать неправильный прогноз. У него есть шанс сделать это, внеся изменения в изображение до того, как классификатор сделает свой прогноз. Эти изменения могут быть незаметны для человека, но оказывают существенное влияние на нейронную сеть, обрабатывающую изображение. Надежные классификаторы — это классификаторы, устойчивые к такого рода атакам, и существуют способы переобучить обычный классификатор в надежный классификатор. Более того, Ципрас и соавт. (2019)⁵ обнаружили, что эти надежные классификаторы демонстрируют градиенты, выровненные по восприятию, то есть их градиенты отображают характерные черты целевого изображения, которые воспринимаются человеком.

Круто, у нас есть классификаторы со значимыми градиентами, поэтому мы ожидаем, что они будут лучше работать для руководства классификатором. И они делают!

В статье «Улучшение синтеза изображений на основе диффузии с помощью надежного классификатора»⁶ Кавар и др. обучили основанный на времени надежный классификатор, добавив к обучающим изображениям как гауссовский шум, так и враждебный шум, а затем использовали этот классификатор для управления моделью распространения, созданной Дхаривалом и Николом (2021)⁷. Это продемонстрировало заметное улучшение FID по сравнению с «ванильным» классификатором в наборе данных ImageNet128.

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

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

Но это не единственное нововведение.

Самоуправляемые диффузионные модели

Видя недавние улучшения в области обучения с самоконтролем, Ху и др.⁸ исследовали использование алгоритмов с самоконтролем в качестве классификаторов в диффузионных моделях. Их процесс относительно прост:

  1. Используйте функцию извлечения признаков с самоконтролем, чтобы сопоставить обучающие данные с большим пространством признаков.
  2. Используйте функцию самостоятельной аннотации в этом большом пространстве признаков, чтобы сгенерировать управляющий сигнал для обработки диффузионной модели.

Конечно, доступно множество самостоятельных извлечений функций, поэтому Hu et al. проверил несколько из них на ImageNet32. Они протестировали две контролируемые магистрали и четыре неконтролируемые магистрали для извлечения признаков и передали каждую из них в 10-тысячный кластер k-средних в качестве функции самоаннотации.

В конце концов, DINO выиграл с лучшей оценкой FID и был использован для дальнейших экспериментов, хотя у MSN была лучшая оценка IS, что свидетельствует о лучшем разнообразии. Если разнообразие важнее точности, MSN будет лучшим выбором.

Их следующим шагом было решить, сколько кластеров использовать для функции самоаннотации. Чтобы сделать это эффективно, они запустили 20 эпох в ImageNet32 с различным количеством кластеров и сравнили результаты с неуправляемой диффузией и руководством без классификатора с использованием меток достоверности.

Как мы видим, после одного кластера самоуправляемая диффузия всегда превосходит неуправляемую диффузию. Что действительно интересно, так это то, что при 5000 кластерах самоуправляемая диффузия фактически превосходит руководство без классификатора с метками наземной истины. Это подтвердилось в их последних экспериментах с ImageNet32 и ImageNet64 со 100 эпохами и 5000 кластерами, и с небольшим отрывом:

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

Самоуправляемая диффузия превзошла руководство без классификатора наземной истины на 2,9 балла в ImageNet32 и на 4,7 балла в ImageNet64. И ему не нужны обучающие ярлыки. Обоснование того, почему это может быть, указывает на отсутствие точности в метках ImageNet: в конце концов, это просто общие имена для рассматриваемого изображения. Вполне разумно, что извлечение признаков, предназначенное для извлечения большого количества информации из изображения, могло бы предложить больше полезной информации для руководства, чем простое категориальное.

Однако одним из недостатков этого является то, что мы все еще застряли с большим количеством сложностей в конвейере обучения. Часть преимущества руководства без классификатора заключается в том, что его очень просто реализовать. Но в этом случае Hu et al. продемонстрировали, что если вы готовы принять эту сложность, вы можете добиться лучших результатов. Это также дает возможность управляемого распространения, когда обучающие метки отсутствуют, что очень важно. Маркировка огромных наборов данных становится очень дорогой и трудоемкой, а для некоторых задач помеченные наборы данных просто недоступны.

Заключение

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

Рекомендации

  1. https://github.com/heejkoo/Awesome-Diffusion-Models#introductory-posts
  2. Никол, А., Дхаривал, П., Рамеш, А., Шьям, П., Мишкин, П., МакГрю, Б., Суцкевер, И., и Чен, М.. (2021). GLIDE: на пути к созданию и редактированию фотореалистичных изображений с помощью текстовых моделей распространения.
  3. https://huggingface.co/CompVis/stable-diffusion
  4. Дилеман, С. (2022). Руководство: чит-код для диффузионных моделей.
  5. Ципрас Д., Сантуркар С., Энгстром Л., Тернер А. и Мадри А.. (2018). Надежность может противоречить точности.
  6. Кавар, Б., Ганц, Р., и Элад, М.. (2022). Улучшение синтеза изображений на основе диффузии с помощью надежного классификатора.
  7. Дхаривал, П., и Никол, А.. (2021). Диффузионные модели превзошли GAN по синтезу изображений.
  8. Ху, В., Чжан, Д., Асано, Ю., Бургаутс, Г., и Снук, К.. (2022). Самоуправляемые диффузионные модели.