НЕЙРОСЕТЬ ruDALL-E - Студенческий научный форум

XV Международная студенческая научная конференция Студенческий научный форум - 2023

НЕЙРОСЕТЬ ruDALL-E

Якушева Ю.Д. 1
1ФГБОУ ВО «Брянский государственный университет имени академика И.Г. Петровского»
 Комментарии
Текст работы размещён без изображений и формул.
Полная версия работы доступна во вкладке "Файлы работы" в формате PDF

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

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

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

Классификация. Для распознавания лиц, эмоций, типов объектов: например, квадратов, кругов, треугольников. Также для распознавания образов, то есть выбора конкретного объекта из предложенного множества: например, выбор квадрата среди треугольников;

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

Прогнозирования временных рядов. Для составления долгосрочных прогнозов на основе динамического временного ряда значений. Например, нейросети применяются для предсказания цен, физических явлений, объема потребления и других показателей. По сути, даже работу автопилота Tesla можно отнести к процессу прогнозирования временных рядов;

Кластеризация. Для изучения и сортировки большого объема неразмеченных данных в условиях, когда неизвестно количество классов на выходе, то есть для объединения данных по признакам. Например, кластеризация применяется для выявления классов картинок и сегментации клиентов;

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

Принцип работы нейронных сетей

Искусственные нейронные сети состоят из таких слоёв как, входной, скрытый и выходной. В каждом из них есть несколько узлов, которые соединены со всеми узлами в сети с помощью разных связей и имеют свой «вес», влияющий на силу передаваемого сигнала. Такая архитектура позволяет вести параллельную обработку данных и постоянно сравнивать их с результатами обработки на каждом из этапов.

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

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

Виды нейронных сетей

Есть десятки видов нейросетей, которые отличаются архитектурой, особенностями функционирования и сферами применения. При этом чаще других встречаются сети трех видов:

прямого распространения;

сверточные;

рекуррентные.

Нейронные сети прямого распространения

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

Сверточные нейронные сети

Сверточные нейронные сети — это такой особый вид нейросетей прямого распространения, и под прямым распространением понимается то, что переменные нейроны в этой сети разбиты на группы, называемые слоями. Состоят из слоев пяти типов:

входного;

свертывающего;

объединяющего;

подключенного;

выходного.

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

Рекуррентные нейронные сети

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

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

Архитектура DALL-E.

В основе архитектуры DALL-E стоит так называемый трансформер, он состоит из энкодера и декодера. Общая идея состоит в том, чтобы вычислить embedding по входным данным с помощью энкодера, а затем с учетом известного выхода правильным образом декодировать embedding. В трансформере энкодер и декодер состоят из ряда идентичных блоков. Основу архитектуры трансформера составляет механизм Self-attention. Он позволяет модели понять, какие фрагменты входных данных важны и насколько важен каждый фрагмент входных данных для других фрагментов.

Первым шагом при вычислении Self-attention является создание трёх векторов для каждого входного вектора энкодера. То есть для каждого элемента создаются векторы Query, Key и Value. Эти векторы получаются путем перемножения значения embedding и трех матриц, которые мы получаем в процессе обучения. Далее используется полученные векторы для формирования Self-attention-представления каждого embedding, что дает возможность оценить возможные связи в элементах входных данных, а также определить степень «полезности» каждого элемента.

Трансформер также характеризует наличие словаря. Каждый элемент словаря — это токен. В зависимости от модели размер словаря может меняться. Таким образом, входные данные сначала превращаются в последовательность токенов, которая далее конвертируется в embedding с помощью энкодера. Для текста используется свой токенизатор, для изображения сначала вычисляются low-level-фичи, а затем в скользящем окне вычисляются визуальные токены. Применение механизма Self-attention позволяет извлечь контекст из входной последовательности токенов в ходе обучения. Следует отметить, что для обучения трансформера требуются большие объёмы (желательно «чистых») данных.

Устройство ruDALL-E.

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

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

Трансформер учится сопоставлять токены текста (у ruDALL-E их 128) и 32×32=1024 токена изображения (токены конкатенируются построчно в последовательность). Для токенизации текстов использовался токенизатор YTTM.

Пайплайн генерации изображений

Генерация изображений представляет собой пайплайн из 3 частей:

генерация при помощи ruDALL-E;

ранжирование результатов с помощью ruCLIP;

увеличение качества и разрешения картинок с помощью SuperResolution.

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

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

Список использованных источников

ruDALE-E - [Электронный ресурс]. Режим доступа: https://rudalle.ru/kandinsky (Дата обращения: 02.12.2022).

Нейронные сети - [Электронный ресурс]. Режим доступа: https://sbercloud.ru/ru/services/neural-networks (Дата обращения: 02.12.2022).

ruDALL-E: генерируем изображения по текстовому описанию или Самый большой вычислительный проект в России - [Электронный ресурс]. Режим доступа: https://habr.com/ru/company/sberbank/blog/586926/ (Дата обращения: 02.12.2022).

Нейросеть - [Электронный ресурс]. Режим доступа: https://ru.wikipedia.org/wiki/Нейронная_сеть (Дата обращения: 02.12.2022).

Сверточные нейросети - [Электронный ресурс]. Режим доступа: https://postnauka.ru/video/66872 (Дата обращения: 02.12.2022).

Рекуррентные нейронные сети: типы, обучение, примеры и применение - [Электронный ресурс]. Режим доступа: https://neurohive.io/ru/osnovy-data-science/rekurrentnye-nejronnye-seti/ (Дата обращения: 02.12.2022).

Нейросети для генерации изображений по текстовому запросу -[Электронный ресурс]. Режим доступа: https://sbercloud.ru/ru/warp/news/ru-dale-kandinsky-xxl-novosti (Дата обращения: 02.12.2022).

Нейросеть «Сбера» ruDALL-E генерирует изображения по текстовым описаниям - [Электронный ресурс]. Режим доступа: https://3dnews.ru/1052812/neyroset-sbera-rudalle-generiruet-izobrageniya-po-tekstovim-opisaniyam (Дата обращения: 02.12.2022).

Нейронные сети: общие технологические характеристики - [Электронный ресурс]. Режим доступа: https://science-engineering.ru/ru/article/view?id=1236 (Дата обращения: 02.12.2022).

Просмотров работы: 58