Добавил:
Developer Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лабораторная работа №10 ИБД .docx
Скачиваний:
14
Добавлен:
04.06.2023
Размер:
1.77 Mб
Скачать

Министерство цифрового развития, связи и массовых коммуникаций Российской Федерации

Ордена Трудового Красного Знамени

федеральное государственное бюджетное образовательное учреждение высшего образования

«Московский технический университет связи и информатики»

(МТУСИ)

Кафедра Сетевых Информационных Технологий и Сервисов

Лабораторная работа № 10

по дисциплине: «Интеллектуальные базы данных»

по теме:

«Генерация изображений в заданной художественной стилистике посредством диффузионной модели нейронной сети»

Вариант №5

Выполнил: студент группы МБТС0000

Иванов Иван Иванович

Проверил:

Кандидат технических наук, доцент Фатхулин Тимур Джалиевич

Москва, 2024

1 Цель работы

Целью данной лабораторной работы является знакомство с принципом работы диффузионной модели генерации изображений.

2 Задание

  1. Ознакомиться с теоретическим материалом.

  2. С использованием образца программного кода сгенерировать изображения, используя определенные предметной областью текстовые фразы.

  3. Сделать выводы по проделанной работе.

  4. Оформить отчет по лабораторной работе.

3 Краткая теория

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

В модели скрытой диффузии присутствует три основных компонента, которые будут рассмотрены подробнее далее:

  1. кодировщик текста, в данном случае CLIP;

  2. автокодировщик, в данном случае вариационный автокодировщик, также называемый VAE;

  3. сверточная нейронная сеть U-Net.

Модель стабильной диффузии принимает текстовый ввод и "сид" (от англ. seed – “семя”, уникальное число, которое необходимо генератору случайных чисел). Затем текстовый ввод передается через модель CLIP для создания текстового "эмбеддинга" (от англ. embedding – встраивание, представление текста в виде матрицы чисел), а "сид" используется для генерации гауссовского шума, который становится первым представлением скрытого изображения. Схема процесса диффузии представлена на рисунке 1.

Рисунок 1 – Процесс диффузии

Затем U-Net итеративно удаляет шум из случайных представлений скрытого изображения, обуславливая встраивание текста. Выход U-Net представляет собой прогнозируемый остаточный шум, который затем используется для вычисления обусловленных скрытых значений с помощью алгоритма планировщика. Этот процесс шумоподавления и преобразования текста повторяется N раз, чтобы получить лучшее представление скрытого изображения. После завершения этого процесса представление скрытого изображения декодируется декодером VAE для получения окончательного выходного изображения.

Кодировщик текста CLIP

Основы. Что входит и выходит из компонента?

Нейронная сеть CLIP (Contrastive Language–Image Pre-training) принимает текст в качестве входных данных и генерирует эмбеддинги текста, которые находятся близко в скрытом пространстве, как это может быть, если попытаться закодировать изображение с помощью CLIP. Схема работы CLIP представлена на рисунке 2.

Рисунок 2 – схема работы кодировщика текста CLIP

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

Стабильная диффузия использует кодировщик, обученный CLIP, только для преобразования текста в эмбеддинги. Это становится одним из входов в U-net. Иными словами, CLIP использует кодировщик изображений и кодировщик текста для создания эмбеддингов, которые похожи в скрытом пространстве. Это сходство более точно определяется как «Контрастивная цель» (рисунок 3).

Рисунок 3 – Процесс предварительного обучения кодировщика изображений и кодировщика текста посредством CLIP для предсказания, какие изображения были связаны с какими текстами в наборе данных

VAE - Variational Auto Encoder

Основы. Что входит и выходит из компонента?

Автокодировщик, представляющий собой нейронную сеть, которая пытается восстанавливать объекты, подаваемые на вход сети, состоит из двух частей [1]:

1. Кодировщик - принимает изображение в качестве входных данных и преобразует его в низкоразмерное скрытое представление.

2. Декодер - берет скрытое представление и преобразует его обратно в изображение.

На рисунке 4 представлен принцип работы VAE.

Рисунок 4 – принцип работы VAE

Кодировщик действует как компрессор, который сжимает изображение до более низких размеров, а декодер воссоздает исходное изображение из сжатой версии. Следует учитывать, что сжатие и распаковка происходят не без потерь

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

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

U-Net

Основы. Что входит и выходит из компонента?

Модель сверточной нейронной сети U-Net [1] принимает два входа:

1. Скрытый шум или латентный шум — это латентный сигнал, создаваемый кодировщиком VAE (в случае предоставления исходного изображения) с добавленным шумом, или он может принимать чистый ввод шума, если мы хотим создать случайное новое изображение на основе исключительно текстового описания;

2. Эмбеддинги текста — результат работы CLIP.

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

Рисунок 5 - принцип работы U-Net