Реферат по теме выпускной работы
Содержание
3. Исследование на базе изображений рукописных цифр
Введение
Генеративные нейронные сети представляют собой одно из наиболее перспективных направлений современного машинного обучения. Их ключевая особенность заключается в способности создавать новые данные, которые по своим характеристикам максимально приближены к реальным. Одним из наиболее известных подходов является генеративно-состязательная сеть (Generative Adversarial Network, GAN), предложенная Иэном Гудфеллоу и коллегами в 2014 году [1]. С момента появления GAN стали фундаментом для множества исследований, так как они открыли возможность моделировать сложные распределения данных без явного задания вероятностных функций.
Применение GAN охватывает широкий спектр задач: генерация изображений высокой четкости, восстановление поврежденных данных, синтез медицинских снимков, создание художественных картин и музыки. В зарубежных исследованиях отмечается высокая эффективность GAN в обучении моделей без учителя, а также в создании синтетических данных для задач, где реальных примеров недостаточно [2]. В отечественных публикациях также активно обсуждаются возможности применения GAN для синтеза изображений и повышения устойчивости нейронных сетей [3], [4].
Однако использование GAN связано с рядом трудностей. Во-первых, необходимо тщательно подбирать архитектуру генератора и дискриминатора, так как от этого напрямую зависит качество синтезируемых данных. Во-вторых, процесс обучения часто нестабилен: генератор может «застревать» в локальных решениях, а дискриминатор переобучаться. В-третьих, обучение требует значительных вычислительных ресурсов, особенно при работе с изображениями высокого разрешения. Всё это подтверждает необходимость более глубокого анализа архитектуры и изучения особенностей процесса обучения GAN.
Целью данной работы является исследование архитектуры и процесса обучения типовой GAN-модели на примере датасета MNIST. Такой выбор обусловлен тем, что MNIST является стандартным тестовым набором данных, позволяющим наглядно продемонстрировать возможности генеративных моделей при относительно небольших вычислительных затратах. Проведённое исследование позволяет оценить функциональные характеристики GAN и наметить перспективы её применения для генерации изображений по текстовому описанию и в других практических задачах.
Дополнительно стоит отметить, что в данной работе используется архитектура на основе многослойного персептрона (MLP). Такой выбор объясняется стремлением к простоте и прозрачности анализа: MLP-структура позволяет ясно проследить, как линейные слои и функции активации преобразуют входной шум в изображение. Несмотря на то что сверточные архитектуры (например, DCGAN) демонстрируют более высокое качество при работе с изображениями, именно MLP-GAN удобен для учебных целей, так как он минимизирует количество параметров и делает процесс обучения более интерпретируемым. Это особенно важно при исследовании базовых принципов работы генеративных моделей.
Исторически MLP-GAN стал одной из первых реализаций GAN, позволивших показать, что даже простая архитектура способна генерировать изображения, приближенные к реальным. Такой подход дал возможность исследователям сосредоточиться на анализе динамики обучения, проблемах устойчивости и взаимодействии генератора и дискриминатора. В дальнейшем именно эти наблюдения стали основой для развития более сложных архитектур, которые используют сверточные слои, нормализацию и дополнительные регуляризаторы.
Таким образом, введение в тему GAN требует не только описания их базовой идеи, но и понимания роли конкретных архитектурных решений. Рассмотрение MLP-GAN на примере MNIST позволяет не только продемонстрировать возможности генеративных моделей, но и выявить их ограничения, связанные с качеством изображений и устойчивостью обучения. Это создаёт основу для дальнейшего анализа и сравнения с более современными архитектурами, а также для обсуждения перспектив применения GAN в различных областях науки и практики.
1. Архитектура GAN
В соответствии с целью исследования рассмотрим архитектуру генеративно-состязательной сети. GAN состоит из двух основных компонентов — генератора и дискриминатора, которые обучаются в противостоянии друг другу. Генератор получает на вход случайный латентный вектор и преобразует его в изображение, стремясь «обмануть» дискриминатор. Дискриминатор, в свою очередь, принимает на вход как реальные изображения из обучающего набора, так и синтетические изображения от генератора, и пытается классифицировать их как «настоящие» или «сгенерированные». Такое взаимодействие формирует динамическую игру, где обе модели постепенно совершенствуют свои способности.
В данной реализации GAN использована архитектура на основе многослойного персептрона (MLP) на рисунке 1. Генератор состоит из последовательности полносвязных слоёв, которые постепенно увеличивают размерность входного случайного вектора и формируют изображение размером 28x28 пикселей. На промежуточных этапах применяются функции активации ReLU, обеспечивающие нелинейность и способность модели обучать сложные зависимости. Завершающий слой использует функцию Tanh, нормализующую значения пикселей в диапазоне [-1;1], что соответствует стандарту обработки изображений. Таким образом, генератор выполняет роль преобразователя случайного шума в синтетическое изображение, близкое к реальным данным, и закладывает основу для состязательного процесса обучения [5].
Дискриминатор также построен на полносвязных слоях. На вход он получает изображение, которое сначала разворачивается в вектор признаков, а затем проходит через несколько слоёв с активацией LeakyReLU. Такая активация позволяет избежать проблемы «мертвых нейронов» и обеспечивает более стабильное обучение. Для повышения устойчивости модели применяется Dropout, уменьшающий вероятность переобучения за счёт случайного отключения части нейронов. Завершающий слой использует функцию Sigmoid, формируя вероятность принадлежности изображения к классу «реальное» или «сгенерированное». Благодаря такой архитектуре дискриминатор выступает в роли «эксперта», который стремится отличить настоящие изображения из набора MNIST от синтетических примеров, созданных генератором [6], [7].
Генератор выполняет роль модели, которая из случайного входного вектора формирует изображение, максимально похожее на реальные данные. На вход он получает набор чисел, распределённых случайным образом, и постепенно преобразует их через последовательность слоёв. Каждый слой увеличивает размерность и добавляет новые признаки, а функции активации позволяют создавать сложные нелинейные зависимости. В процессе обучения генератор адаптируется так, чтобы его выходные изображения было трудно отличить от настоящих. Завершающий слой Tanh нормализует значения пикселей и формирует итоговое изображение. Таким образом, генератор из случайного шума создаёт картину, стремясь сделать её настолько реалистичной, чтобы дискриминатор не смог распознать подделку [8].
Дискриминатор в архитектуре GAN выполняет роль «критика», который оценивает изображения и принимает решение, являются ли они реальными или сгенерированными. На вход он получает либо изображение из обучающего набора, либо результат работы генератора. Первым шагом данные преобразуются в удобный для обработки формат: двумерное изображение разворачивается в одномерный вектор признаков. Далее информация проходит через несколько полносвязных слоёв, где применяются функции активации LeakyReLU. Такая активация предотвращает затухание градиента и обеспечивает более стабильное обучение, особенно при работе с глубокими сетями. Для повышения устойчивости модели и снижения риска переобучения используется слой Dropout, который случайным образом отключает часть нейронов во время обучения. Завершающий слой дискриминатора применяет функцию активации Sigmoid, формируя выходное значение в диапазоне от 0 до 1. Это значение интерпретируется как вероятность того, что изображение является настоящим. Таким образом, дискриминатор выступает в роли «эксперта», который постоянно адаптируется к улучшениям генератора, поддерживая баланс в состязательном обучении.
На рисунке 2 показано взаимодействие генератора и дискриминатора в процессе обучения GAN. Генератор преобразует случайный вектор в изображение, которое затем поступает на вход дискриминатору. Дискриминатор анализирует изображение и выдаёт вероятность его принадлежности к классу «реальное». Такая схема позволяет наглядно проследить взаимодействие двух моделей и понять, каким образом формируется состязательный процесс обучения.
2. Обучение GAN
Для обучения использовалась база изображений рукописных цифр MNIST, которая является стандартным тестовым набором данных в задачах машинного обучения. Каждое изображение предварительно нормализовалось в диапазон [-1;1], что необходимо для корректной работы функции активации Tanh в генераторе и обеспечивает согласованность значений пикселей с выходным диапазоном модели. Генератор формировал изображения из случайных латентных векторов, а дискриминатор оценивал их наряду с реальными данными из обучающего набора. Таким образом, обучение представляло собой процесс состязания: генератор стремился создавать изображения, максимально похожие на настоящие, а дискриминатор — отличать их от реальных, формируя динамическое равновесие между двумя моделями.
Обучение проводилось на протяжении 149 эпох, что позволило проследить постепенное улучшение качества синтезируемых изображений. Для оптимизации параметров использовался алгоритм Adam, который хорошо зарекомендовал себя при работе с нейронными сетями благодаря адаптивной настройке шага обучения и учёту моментов градиента. В качестве функции потерь применялась бинарная кросс-энтропия (BCELoss), позволяющая корректно оценивать вероятность принадлежности изображения к классу «реальное» или «сгенерированное» [4]. На каждом шаге обучения дискриминатор обновлял свои веса, чтобы лучше различать изображения, а генератор — чтобы создавать более правдоподобные примеры, постепенно усложняя структуру выходных данных [9].
Особое внимание уделялось балансу между генератором и дискриминатором. Если дискриминатор обучается слишком быстро, генератор не успевает адаптироваться, и его изображения становятся легко различимыми, что приводит к застою в обучении. Если же генератор начинает доминировать, дискриминатор теряет способность отличать реальные данные от синтетических, и процесс обучения теряет смысл. Поэтому обучение требует постоянного контроля и анализа функций потерь обеих сетей. На практике это выражается в мониторинге графиков потерь, которые позволяют выявить моменты дисбаланса и скорректировать параметры обучения, такие как скорость обучения или частота обновления весов [7].
Кроме того, в процессе обучения учитывались типичные проблемы GAN, такие как «mode collapse», когда генератор начинает воспроизводить ограниченное множество образцов, теряя разнообразие. Для снижения риска переобучения дискриминатора применялись регуляризационные методы, включая Dropout, а также настройка гиперпараметров оптимизатора. Таким образом, обучение GAN представляет собой не только технический процесс обновления весов, но и исследование устойчивости модели, требующее внимательного анализа динамики её работы [8].
На рисунке 3 представлена схема процесса обучения GAN, где показано взаимодействие генератора и дискриминатора на каждом шаге. Генератор преобразует случайный шум в изображение, которое поступает на вход дискриминатору. Дискриминатор анализирует как реальные, так и синтетические изображения, формируя оценку их достоверности. Ошибки дискриминатора используются для корректировки генератора, что позволяет ему постепенно улучшать качество создаваемых изображений. Такая схема наглядно демонстрирует состязательный характер обучения и взаимное влияние двух моделей.
3. Исследование на базе изображений рукописных цифр
Оценка работы предложенной архитектуры GAN выполнена на базе изображений рукописных цифр. На ранних этапах обучения генератор создавал размытые изображения, которые лишь отдалённо напоминали цифры. Однако по мере увеличения числа эпох качество синтетических изображений значительно улучшалось. К финальной стадии обучения изображения стали практически неотличимы от настоящих, что подтверждает эффективность выбранной архитектуры и процесса обучения [10-17].
Анализ графиков функции потерь показал постепенное достижение баланса между генератором и дискриминатором. На начальных этапах дискриминатор уверенно различал реальные и синтетические изображения, однако со временем генератор научился создавать более правдоподобные примеры. В результате значения функции потерь обеих сетей стабилизировались, что свидетельствует о достижении равновесия в процессе обучения.
На рисунке 4 представлен график изменения функции потерь генератора и дискриминатора в ходе обучения.
На рисунке 5 показаны примеры изображений, сгенерированных генератором на различных этапах обучения. На 10-й эпохе изображения ещё были размытыми и плохо различимыми, тогда как на 149-й эпохе они стали чёткими и практически неотличимыми от настоящих.
Заключение
Даже простая архитектура GAN способна успешно обучаться на базе изображений рукописных цифр и формировать изображения, близкие к реальным. Работа показала эффективность выбранного подхода и подтвердила перспективы применения GAN для генерации изображений. В ходе исследования было выявлено, что генератор постепенно учится создавать изображения, которые становятся всё более реалистичными, а дискриминатор адаптируется к этим изменениям, сохраняя способность различать настоящие и синтетические данные.
Таким образом, проведённый эксперимент подтвердил возможность использования GAN для решения задач генерации изображений даже при относительно простой архитектуре. Перспективы дальнейших исследований связаны с усложнением архитектуры генератора и дискриминатора, применением свёрточных слоёв и расширением области применения GAN на другие типы данных, включая текстовые описания и изображения высокой размерности [18-25].
Литература
- Goodfellow I., Pouget-Abadie J., Mirza M., Xu B., Warde-Farley D., Ozair S., Courville A., Bengio Y. Generative Adversarial Nets // Advances in Neural Information Processing Systems. – 2014. – P. 2672–2680. – Режим доступа: https://papers.nips.cc/paper/5423-generative-adversarial-nets.pdf (дата обращения: 12.11.2025)
- Барщевский Е.Г. Генеративно-состязательные нейронные сети // Восточно-европейский научный журнал. – 2024. – №01(98). – С. 45–52. – Режим доступа: https://cyberleninka.ru/article/n/generativno-sostyazatelnye-neyronnye-seti (дата обращения: 16.11.2025)
- Ильинская Е.В., Голышева Е.Н., Медведев А.А., Масалитин Н.С. Применение генеративно-состязальных нейросетей для генерации изображений // Научный результат. Информационные технологии. – 2024. – Т.9, №1. – С. 73–78. – DOI: 10.18413/2518-1092-2024-9-1-0-8. – Режим доступа: https://cyberleninka.ru/article/n/primenenie-generativno-sostyazatelnyh-neyrosetey-dlya-generatsii-izobrazheniy (дата обращения: 17.11.2025)
- Малышев И.О., Смирнов А.А. Обзор современных генеративных нейросетей: отечественная и зарубежная практика // International Journal of Humanities and Natural Sciences. – 2024. – Vol. 1–2(88). – С. 168–171. – DOI: 10.24412/2500-1000-2024-1-2-168-171. – Режим доступа: https://cyberleninka.ru/article/n/obzor-sovremennyh-generativnyh-neyrosetey-otechestvennaya-i-zarubezhnaya-praktika (дата обращения: 18.11.2025)
- Radford A., Metz L., Chintala S. Unsupervised Representation Learning with Deep Convolutional Generative Adversarial Networks. – 2015. - Режим доступа: https://arxiv.org/abs/1511.06434 (дата обращения: 20.11.2025)
- Arjovsky M., Chintala S., Bottou L. Wasserstein GAN. – 2017. – Режим доступа: https://arxiv.org/abs/1701.07875 (дата обращения: 22.11.2025)
- Salimans T., Goodfellow I., Zaremba W., Cheung V., Radford A., Chen X. Improved Techniques for Training GANs // Advances in Neural Information Processing Systems. – 2016. – P. 2234–2242. – Режим доступа: https://papers.nips.cc/paper/6125-improved-techniques-for-training-gans.pdf (дата обращения: 23.11.2025)
- Mescheder L., Geiger A., Nowozin S. Which Training Methods for GANs do actually Converge? – 2018. – Режим доступа: https://arxiv.org/abs/1801.04406 (дата обращения: 24.11.2025)
- Lucic M., Kurach K., Michalski M., Gelly S., Bousquet O. Are GANs Created Equal? A Large-Scale Study. – 2017. – Режим доступа: https://arxiv.org/abs/1711.10337 (дата обращения: 24.11.2025)
- Karras T., Laine S., Aila T. A Style-Based Generator Architecture for Generative Adversarial Networks. – 2018. – Режим доступа: https://arxiv.org/abs/1812.04948 (дата обращения: 24.11.2025)
- Karras T., Laine S., Aittala M., Hellsten J., Lehtinen J., Aila T. Analyzing and Improving the Image Quality of StyleGAN. – 2019. – Режим доступа: https://arxiv.org/abs/1912.04958 (дата обращения: 25.11.2025)
- Brock A., Donahue J., Simonyan K. Large Scale GAN Training for High Fidelity Natural Image Synthesis. – 2018. – Режим доступа: https://arxiv.org/abs/1809.11096 (дата обращения: 26.11.2025)
- Zhu J.Y., Park T., Isola P., Efros A.A. Unpaired Image-to-Image Translation using Cycle-Consistent Adversarial Networks. – 2017. – Режим доступа: https://arxiv.org/abs/1703.10593 (дата обращения: 27.11.2025)
- Isola P., Zhu J.Y., Zhou T., Efros A.A. Image-to-Image Translation with Conditional Adversarial Networks. – 2016. – Режим доступа: https://arxiv.org/abs/1611.07004 (дата обращения: 01.12.2025)
- Ledig C., Theis L., Huszar F., Caballero J., Cunningham A., Acosta A., Aitken A., Tejani A., Totz J., Wang Z., Shi W. Photo-Realistic Single Image Super-Resolution Using a Generative Adversarial Network. – 2016. – Режим доступа: https://arxiv.org/abs/1609.04802 (дата обращения: 01.12.2025)
- Yu J., Lin Z., Yang J., Shen X., Lu X., Huang T.S. Generative Image Inpainting with Contextual Attention. – 2018. – Режим доступа: https://arxiv.org/abs/1801.07892 (дата обращения: 02.12.2025)
- Park T., Liu M.Y., Wang T.C., Zhu J.Y. Semantic Image Synthesis with Spatially-Adaptive Normalization. – 2019. – Режим доступа: https://arxiv.org/abs/1903.07291 (дата обращения: 03.12.2025)
- Узких Г.Ю. Применение генеративно-состязательных сетей (GAN) в обработке изображений // Международный научный журнал «Вестник науки». – 2024. – Т.4, №8(77). – С. 112–118. – Режим доступа: https://cyberleninka.ru/article/n/primenenie-generativno-sostyazatelnyh-setey-gan-v-obrabotke-izobrazheniy (дата обращения: 04.12.2025)
- Аббасов И.Б., Дешмух Р.Р. Применение искусственного интеллекта для медицинской визуализации // Международный научно-исследовательский журнал. – 2021. – №12-1(114). – С. 85–90. - Режим доступа: https://cyberleninka.ru/article/n/primenenie-iskusstvennogo-intellekta-dlya-meditsinskoy-vizualizatsii (дата обращения: 05.12.2025)
- Лаптев В.В., Данилов В.В., Гергет О.М. Исследование генеративно-состязательных сетей для синтеза новых медицинских данных // Автоматизация и моделирование в проектировании и управлении. – 2020. – №2(8). – С. 45–52. – Режим доступа: https://cyberleninka.ru/article/n/issledovanie-generativno-sostyazatelnyh-setey-dlya-sinteza-novyh-meditsinskih-dannyh (дата обращения: 05.12.2025)
- Mirza M., Osindero S. Conditional Generative Adversarial Nets. – 2014. – Режим доступа: https://arxiv.org/abs/1411.1784 (дата обращения: 05.12.2025)
- Chen X., Duan Y., Houthooft R., Schulman J., Sutskever I., Abbeel P. InfoGAN: Interpretable Representation Learning by Information Maximizing Generative Adversarial Nets. – 2016. – Режим доступа: https://arxiv.org/abs/1606.03657 (дата обращения: 05.12.2025)
- Donahue J., Krahenbuhl P., Darrell T. Adversarial Feature Learning. – 2016. – Режим доступа: https://arxiv.org/abs/1605.09782 (дата обращения: 06.12.2025)
- Odena A., Olah C., Shlens J. Conditional Image Synthesis with Auxiliary Classifier GANs. – 2016. – Режим доступа: https://arxiv.org/abs/1610.09585 (дата обращения: 06.12.2025)
- AyratGil. Эволюция GAN: карта идей — от контроля и метрик к масштабу и латентной геометрии // Habr. – 2024. – Режим доступа: https://habr.com/ru/articles/936130/ (дата обращения: 07.12.2025). – Текст : электронный.
