Идея проекта
Что если попросить нейросеть не просто «нарисовать что-то красивое», а освоить конкретный художественный язык? Именно это я проверила на одном из самых узнаваемых стилей в истории живописи — на манере Винсента Ван Гога. Цель проекта — обучить генеративную модель Stable Diffusion XL на датасете картин Ван Гога так, чтобы она не просто воспроизводила общее «впечатление», а усваивала конкретные пластические особенности: технику импасто, закрученную динамику мазка, интенсивные контрасты синего и жёлтого, вибрирующую световую среду.
«Пшеничное поле с воронами» Винсент ван Гог (1890)
Ван Гог выбран не случайно. Его стиль одновременно узнаваем и сложен: за внешней «наивностью» скрывается строгая система — определённый ритм мазков, особая работа с цветом, напряжённая фактура поверхности. Именно эта сложность делает его хорошим тестом для модели: если нейросеть воспроизводит не только «тёплые тона», но и структуру живописи — значит, обучение прошло успешно. В качестве метода обучения использовалась технология DreamBooth LoRA (Low-Rank Adaptation) — она позволяет тонко настроить большую предобученную модель на небольшом наборе данных, не переобучая её полностью. Это делает процесс доступным с точки зрения вычислительных ресурсов.
Датасет для обучения
Для обучения использован публичный датасет картин Ван Гога с Kaggle (van-gogh-paintings), содержащий более 200 работ в высоком разрешении. Все изображения были приведены к квадратному формату 512×512 пикселей — стандарт для обучения диффузионных моделей. Из-за ограниченной памяти GPU (Tesla T4, 15 ГБ) для обучения отобрано 50 изображений. В датасет намеренно включены работы разных жанров и периодов: пейзажи, натюрморты, портреты, ночные сцены. Такое разнообразие помогает модели уловить стилистическую логику, а не просто запомнить один тип композиции. Каждому изображению автоматически генерировалось текстовое описание с помощью модели BLIP (Salesforce). К описанию добавлялся триггер-токен vgostyle — уникальный идентификатор, по которому модель во время генерации «понимает», что нужно применить выученный стиль.
Процесс обучения
Обучение проводилось в Google Colab на GPU Tesla T4. Использовалась базовая модель Stable Diffusion XL 1.0 с тонкой настройкой методом DreamBooth LoRA. Ключевые параметры: Метод: DreamBooth LoRA (train_dreambooth_lora_sdxl.py, библиотека Diffusers) Базовая модель: stabilityai/stable-diffusion-xl-base-1.0 VAE: madebyollin/sdxl-vae-fp16-fix (оптимизированный для fp16) Триггер-токен: vgostyle Размер обучающих изображений: 512×512 px Количество обучающих изображений: 50 Шаги генерации при инференсе: 30
После обучения веса LoRA-адаптера сохранены в репозитории Hugging Face (VB04/vangogh-lora). Для снижения нагрузки на GPU между этапами выполнялась очистка памяти: удаление временных моделей (BLIP), вызов gc.collect() и torch.cuda.empty_cache().
Серия изображений на основе обучения
По завершении обучения модель использовалась для генерации серии из шести работ. Каждый промпт начинался с триггера «painting in vgostyle van gogh style» и описывал конкретный сюжет. Ко всем генерациям применялся единый негативный промпт, исключающий фотографичность, низкое качество и искажения.
1. Звёздная ночь над современным городом Промпт: starry night over a modern city, swirling sky, thick brushstrokes, yellow glowing stars, dark blue night
vg01 — Звёздная ночь над городом
Прямой диалог с самой известной работой Ван Гога «Звёздная ночь». Модель воспроизвела ключевые элементы оригинала: закрученные вихри на небе, контрастное сочетание тёмно-синего фона и жёлтых светящихся точек, динамичную фактуру мазка. На переднем плане появляется современный городской силуэт — небоскрёбы и огни мегаполиса — создавая временной сдвиг между XIX веком и настоящим. Стиль передан убедительно: видна характерная для Ван Гога «закрученность» пространства и вибрирующий свет.
2. Подсолнухи в керамической вазе Промпт: sunflowers in a ceramic vase, warm yellow tones, bold impasto brushstrokes, golden background
vg02 — Подсолнухи в вазе
Натюрморт с подсолнухами — отсылка к одной из самых известных серий художника. Модель точно воспроизвела тепловую палитру: охристые, жёлтые и золотистые тона, почти без холодных оттенков. Хорошо читается техника импасто — объёмные рельефные мазки придают лепесткам почти скульптурную тяжесть. Фон выдержан в золотистой гамме, что создаёт характерное для Ван Гога ощущение «горящего» пространства.
3. Зимний пейзаж с замёрзшей рекой Промпт: winter landscape with snow, expressive brushstrokes, frozen river
vg12 — Зимний пейзаж
Зимний пейзаж — нетипичный для Ван Гога сюжет (художник преимущественно работал с южной природой), что делает эту генерацию особенно интересной. Модель применила выученную манеру к нетипичному для датасета материалу: снег и лёд переданы через быстрые горизонтальные мазки, а небо сохраняет характерную вихревую структуру. Это свидетельствует о том, что модель усвоила именно пластический язык, а не просто «тёплые тона подсолнухов».
4. Ночная терраса кафе Промпт: night cafe terrace, glowing lanterns, cobblestone street, warm yellow light against deep blue sky, stars
vg04 — Ночная терраса кафе
Отсылка к реальной работе Ван Гога «Ночная терраса кафе» (1888). Модель воссоздала ключевой цветовой конфликт оригинала: тёплый жёлтый свет фонарей против холодного глубокого синего неба. Мощёная улица, освещённые столики, звёздное небо — все элементы узнаваемы. Пространство организовано через характерную для Ван Гога перспективу: слегка деформированную, «наклонённую» к зрителю.
5. Рыбацкие лодки у берега Промпт: fishing boats on the sea, turquoise water, bright Mediterranean sun, thick impasto waves
vg07 — Морской пейзаж с лодками
Морской пейзаж отсылает к серии работ, написанных в Сент-Мари-де-ла-Мер в 1888 году. Бирюзовая вода передана через ритмичные плотные мазки — видна «шероховатость» поверхности, свойственная технике импасто. Лодки прописаны с характерной для Ван Гога лаконичностью: форма обозначена несколькими уверенными линиями. Средиземноморское солнце присутствует не прямо, а через насыщенность цвета и свет, разлитый по всей композиции.
6. Портрет бородатого мужчины Промпт: portrait of a man with beard, blue jacket, swirling background, expressive thick paint, post-impressionist
vg05 — Портрет
Портрет — наиболее сложный жанр для тонкой настройки стиля, поскольку модель должна балансировать между реалистичной передачей лица и экспрессивной манерой письма. Фон не является нейтральным — он «живёт», закручивается, создавая психологическое напряжение вокруг фигуры. Синий пиджак написан объёмными мазками, создающими ощущение фактуры ткани. Лицо сохраняет узнаваемость, при этом не теряя экспрессии.




