Исходный размер 1140x1600

Обучение генеративной нейросети на картинах руин Марко и Себастьяно Риччи

Идея

фрагменты архитектурного каприччо Марко и Себастьяно Риччи, XVIII век

фрагменты архитектурного каприччо Марко и Себастьяно Риччи, XVIII век

Целью данного проекта было обучить генеративную нейросеть Stable Diffusion XL создавать изображения в узнаваемом художественном стиле архитектурного каприччио. Идея проекта состояла не просто в генерации красивых городских пейзажей, а в том, чтобы добиться устойчивого воспроизведения именно стилистических признаков выбранного художественного направления: торжественной композиции, театральности пространства, декоративной насыщенности архитектурных элементов и ощущения классического города, находящегося сейчас в руинах.

фрагменты архитектурного каприччо Марко и Себастьяно Риччи, XVIII век

фрагменты архитектурного каприччо Марко и Себастьяно Риччи, XVIII век

Обучение нейросети

примеры сгенерерованных изображений без обучения

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

примеры сгенерерованных изображений с обучением

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

О датасете

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

Принцип работы кода

Для реализации проекта был подготовлен Jupyter Notebook, в котором последовательно организованы все этапы работы: подготовка датасета, автоматическая разметка изображений, запуск обучения LoRA-модели на базе Stable Diffusion XL, генерация итоговой серии изображений и их последующее сравнение с результатами базовой модели. Такая структура ноутбука делает весь процесс воспроизводимым и прозрачным: по коду можно проследить путь от исходных изображений до финальных генераций.

На первом этапе в ноутбуке задаются рабочие директории: папка с обучающими изображениями capriccio и папка для сохранения результатов outputs/capriccio_style_lora. Затем программа автоматически считывает все изображения форматов JPG, JPEG и PNG, переводит их в RGB и формирует список файлов, пригодных для дальнейшей обработки. Этот шаг нужен для стандартизации входных данных и для контроля того, что модель обучается только на корректно найденных изображениях.

Исходный размер 3348x1466

Следующий этап — подготовка текстовых описаний для обучающего набора. В ноутбуке используется модель BLIP (Salesforce/blip-image-captioning-base), которая автоматически генерирует подписи к каждому изображению. После этого к каждой подписи добавляется единый стилевой префикс: “in the style of CAPRICCIOX”. Полученные данные записываются в файл metadata.jsonl, где для каждого изображения указывается имя файла и связанный с ним текстовый prompt. Этот этап имеет принципиальное значение, потому что именно через такие пары “изображение + подпись” модель связывает новый токен CAPRICCIOX с визуальными особенностями датасета.

Само обучение запускается через accelerate и отдельный скрипт train_dreambooth_lora_sdxl.py. В качестве базовой модели используется stabilityai/stable-diffusion-xl-base-1.0, а также подключается исправленная VAE-модель madebyollin/sdxl-vae-fp16-fix, улучшающая работу с SDXL в половинной точности. Обучение проводится не с полным переобучением всей модели, а через LoRA-адаптацию, то есть обучаются сравнительно небольшие добавочные веса. Такой подход значительно экономит вычислительные ресурсы, ускоряет обучение и при этом хорошо подходит для стилистической специализации модели.

Исходный размер 3356x1638

В ноутбуке заданы конкретные параметры обучения: разрешение 512, train_batch_size=2, gradient_accumulation_steps=3, learning_rate=1e-4, max_train_steps=600, mixed_precision="fp16", use_8bit_adam, gradient_checkpointing, промежуточное сохранение чекпоинтов каждые 200 шагов и фиксированное значение seed=0. Эти настройки показывают, что обучение ориентировано на разумный баланс между скоростью, стабильностью и качеством. Использование fp16, 8-bit Adam и gradient checkpointing особенно важно при запуске на ограниченной по памяти GPU, так как снижает потребление видеопамяти и делает обучение более доступным.

После завершения обучения ноутбук загружает базовый SDXL-пайплайн и подключает к нему обученные LoRA-веса из папки outputs/capriccio_style_lora. Затем запускается этап генерации итоговых изображений. Для этого в коде задан список промптов, каждый из которых описывает вариант архитектурного сюжета в стиле CAPRICCIOX: воображаемый город, дворцовая площадь, руины храма, монументальный двор, гавань, аркады и другие композиции. Для каждого промпта генерируется несколько вариантов изображения с разными seed, что позволяет оценить устойчивость модели и разнообразие результатов. Генерация выполняется в разрешении 1024×1024, с параметрами num_inference_steps=35 и guidance_scale=7.5, что соответствует качественному режиму вывода для SDXL.

Исходный размер 3348x1162

Дополнительно в ноутбуке реализованы инструменты для анализа результатов. Во-первых, выводятся серии изображений по каждому промпту. Во-вторых, создаются contact sheets — листы, на которых собраны несколько вариантов одной сцены для удобного визуального сравнения. В-третьих, выполняется сопоставление результатов обученной модели с изображениями, полученными от базовой SDXL без LoRA. Это особенно важно для отчёта, так как позволяет доказать, что дообучение действительно изменило визуальный характер генерации и привело к формированию нового стилевого поведения модели.

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

Подпись к иллюстрации для этого пункта можно сделать такой: Рис. [10]. Фрагменты ноутбука с основными этапами проекта: подготовка датасета, автоматическая генерация подписей, запуск обучения LoRA и генерация итоговых изображений.

Исходный размер 3350x988
Исходный размер 3356x1830

Примеры работ

0

сгенерированные изображения

На основе промптов получена серия из 12 изображений:

«a grand imaginary city with ruins, arches, towers and monumental staircases» — Воображаемый монументальный город с руинами, арками, башнями и широкими лестницами, создающий образ величественного архитектурного пространства.

«an ornate city square with statues, arches and palace facades» — Декоративная городская площадь со статуями, арками и дворцовыми фасадами, передающая атмосферу парадной классической архитектуры.

«majestic ruins of a classical temple with broken columns and dramatic sky» — Величественные руины античного храма с разрушенными колоннами и выразительным небом, подчёркивающие драматизм и историческую глубину сцены.

«a vast palace courtyard with colonnades, sculptures and decorative stone stairs» — Обширный дворцовый двор с колоннадами, скульптурами и декоративными каменными лестницами, напоминающий торжественное пространство старинного архитектурного ансамбля.

«a panoramic fantasy cityscape with domes, towers and layered architecture» — Панорамный фантазийный городской пейзаж с куполами, башнями и многоярусной архитектурой, создающий ощущение сложного и насыщенного пространства.

«monumental arcades and vaulted passages in an imaginary classical city» — Монументальные аркады и сводчатые проходы в воображаемом классическом городе, формирующие выразительный ритм архитектурных форм.

0

сгенерированные изображения

«a fantasy Venetian square with bridges, palaces and monumental ruins» — Фантазийная площадь в венецианском духе с мостами, дворцами и величественными руинами, сочетающая черты городской парадности и романтизированной древности.

«an architectural fantasy with theatrical perspective, terraces, arches and distant towers» — Архитектурная фантазия с театрально построенной перспективой, террасами, арками и удалёнными башнями, создающая эффект сценического пространства.

«an imaginary harbor with monumental classical buildings, arches and stone embankments» — Воображаемая гавань с монументальными классическими зданиями, арками и каменными набережными, объединяющая морской мотив с античной архитектурой.

«romantic ruins with statues, columns and a decorative architectural background» — Романтические руины со статуями, колоннами и декоративным архитектурным фоном, передающие живописность и утончённость исторического пейзажа.

«a monumental composition of staircases, colonnades and ruined facades» — Монументальная композиция из лестниц, колоннад и разрушенных фасадов, в которой архитектурные элементы становятся главным выразительным средством изображения.

«an imagined classical landscape with ruins, arches and distant palatial structures» — Воображаемый классический пейзаж с руинами, арками и удалёнными дворцовыми постройками, создающий образ идеализированного античного мира.

0

сгенерированные изображения

Анализ генераций

Обучение генеративной нейросети на картинах руин Марко и Себастьяно Риччи
Проект создан 24.03.2026
Мы используем файлы cookies для улучшения работы сайта НИУ ВШЭ и большего удобства его использования. Более подробную...
Показать больше