Телефон: 8-800-350-22-65
WhatsApp: 8-800-350-22-65
Telegram: sibac
Прием заявок круглосуточно
График работы офиса: с 9.00 до 18.00 Нск (5.00 - 14.00 Мск)

Статья опубликована в рамках: Научного журнала «Студенческий» № 18(314)

Рубрика журнала: Информационные технологии

Скачать книгу(-и): скачать журнал часть 1, скачать журнал часть 2, скачать журнал часть 3, скачать журнал часть 4, скачать журнал часть 5, скачать журнал часть 6, скачать журнал часть 7, скачать журнал часть 8, скачать журнал часть 9, скачать журнал часть 10

Библиографическое описание:
Кочетков А.В. ПРИМЕНЕНИЕ ГЕНЕРАТИВНО-СОСТЯЗАТЕЛЬНОЙ СЕТИ ДЛЯ СОЗДАНИЯ ЦВЕТОВЫХ ПАЛИТР // Студенческий: электрон. научн. журн. 2025. № 18(314). URL: https://sibac.info/journal/student/314/373896 (дата обращения: 25.05.2025).

ПРИМЕНЕНИЕ ГЕНЕРАТИВНО-СОСТЯЗАТЕЛЬНОЙ СЕТИ ДЛЯ СОЗДАНИЯ ЦВЕТОВЫХ ПАЛИТР

Кочетков Андрей Владимирович

магистрант, кафедра программных систем, Самарский национальный исследовательский университет,

РФ, г. Самара

Зеленко Лариса Сергеевна

научный руководитель,

канд. техн. наук, доц. кафедры программных систем, Самарский национальный исследовательский университет,

РФ, г. Самара

APPLICATION OF GENERATIVE ADVERSARIAL NETWORK TO CREATE COLOR PALETTES

 

Andrey Kochetkov

master student, Department Software Systems, Samara National Research University,

Russia, Samara

Larisa Zelenko

scientific supervisor, Ph.D. tech. Sciences, Associate Professor department of software systems, Samara National Research University,

Russia, Samara

 

АННОТАЦИЯ

В статье рассматривается использование генеративно-состязательной сети (GAN, Conditional GAN) для создания цветовых палитр.

ABSTRACT

The article discusses the use of a generative adversarial network (GAN, Conditional GAN) to create color palettes.

 

Ключевые слова: генеративно-состязательная сеть; цветовая палитра; метрики.

Keywords: Generative adversarial network; color palette; metrics.

 

Введение

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

Формировать цветовые палитры можно с использованием базовых цветовых схем (монохромная, комплементарная, сплит-комплементарная), а также с помощью генеративных моделей.

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

1) собрать и подготовить данные:

  • изучить доступные источники данных с готовыми палитрами;
  • написать программу «Сборщик данных» о палитрах с различных источников;
  • очистить и структурировать данные для последующего использования;

2) выделить признаки оценки палитр:

  • определить критерии оценки качества цветовой палитры;
  • выбрать метрики для количественного описания этих признаков;
  • разработать подходы для автоматической оценки указанных критериев;

3) разработать и обучить нейросети:

  • построить архитектуры нейросетей для генерации палитр;
  • обучить модели на подготовленных данных, используя различные параметры и подходы с учетом ранее выбранных метрик;

4) оценить качество и выполнить сравнительный анализ:

  • оценить сгенерированные палитры по выделенным признакам;
  • сравнить результаты разных моделей и их вариаций;
  • проанализировать влияние изменения параметров нейросетей на качество сгенерированных палитр.

Сбор данных и структура работы GAN

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

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

Синтетические данные – это искусственные данные, имитирующие наблюдения реального мира и используемые для подготовки моделей машинного обучения, когда получение реальных данных невозможно из-за сложности или дороговизны [2].

Генеративно-состязательная сеть (Generative Adversarial Network (GAN)) – алгоритм машинного обучения без учителя, построенный на комбинации из двух нейронных сетей, одна из которых (сеть G) генерирует образцы, а другая (сеть D) старается отличить правильные («подлинные») образцы от неправильных [3].

Функции потерь для генератора и дискриминатора основаны на бинарной кросс-энтропии (см. формулу (1)) потеря генератора вычисляется как сумма потерь для реальных и сгенерированных палитр, где реальные должны классифицироваться как 1, а сгенерированные как 0; потеря генератора минимизирует вероятность того, что дискриминатор определит сгенерированные палитры как поддельные, заставляя его принимать их за настоящие.

,                                                         (1)

где x – истинная метка (0 или 1);

y – предсказанная вероятность (от 0 до 1).

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

Выбор признаков оценки палитр

Для оценки качества генерируемых палитр будут использоваться следующие метрики:

  • диапазон яркости, рассчитывается как разница между цветами с минимальной и максимальной яркостью;
  • распределение яркости, рассчитывается как часть пар ближайших друг к другу по яркости, разница между которыми равно среднему значению с допуском в 25%;
  • контраст яркости, рассчитывается как часть пар цветов разница яркости, между которыми больше, чем среднее значение между двумя соседними по яркости цветами;
  • диапазон оттенков, рассчитывается как (360 – максимальное циклическое расстояние между оттенками 2 цветов) / 360;
  • распределение яркости, рассчитывается как часть пар цветов соседних по оттенку, разница в оттенке между которыми равна среднему значению с допуском 25% (цвета с насыщенностью менее 0.1 не учитываются, чтобы избежать доминации серых цветов).

Обучение моделей

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

Ключевые показатели для обучения установим на следующем уровне:

  • количество эпох = 500, экспериментальным путем было выяснено, что большее количество не имеет смысла, так к этому моменту обе функции начинают колебаться вокруг фиксированных величин, без изменения амплитуды колебаний;
  • размер батча = 64;
  • размер шума (LATENT_DIM) = 100;
  • скорость обучения генератора = 5 × 10⁻⁶, экспериментальным путем было выяснено, при большей скорости обучения веса нейронов меняются слишком сильно из-за чего палитра меняется каждую эпоху и не сходится к стабильному варианту;
  • скорость обучения дискриминатора = 1 × 10⁻⁴.

Графики изменения дополнительных потерь по метрикам для CGAN представлены на рисунке 1.

 

Рисунок 1. График дополнительных потерь при обучении CGAN

 

Наиболее влиятельными на общие потери генератора стали метрики распределения яркости и оттенков, а также метрика диапазона оттенков. Это говорит о том, что они наименьшим образом представлены в обучающем наборе и наибольшим образом влияют на обучение.

График общих потерь генератора и дискриминатора для GAN и CGAN представлены на рисунках 2 и 3 соответственно.

 

Рисунок 2. График основных потерь при обучении GAN

 

Рисунок 3. График основных потерь при обучении CGAN

 

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

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

Результаты работы

Авторами были разработаны генеративные модели для создания цветовых палитр, построенные по архитектурам GAN и CGAN, выделены метрики для оценки качества генерируемых палитр. Была доказана эффективность описанного подхода для генерации цветовых палитр.

 

Список литературы:

  1. UX/UI дизайн: ключевые аспекты и важность в разработке продуктов [Электронный ресурс]. URL: https://dzen.ru/a/ZLG-Wv_1Ymc4D1ye (дата обращения: 08.05.2025).
  2. Синтетические данные для машинного обучения: их природа, типы и способы генерации [Электронный ресурс]. URL https://habr.com/ru/articles/721170/ (дата обращения: 12.05.2025).
  3. Генеративно-состязательная сеть [Электронный ресурс]. URL: https://ru.wikipedia.org/wiki/Генеративно-состязательная_сеть/ (дата обращения: 12.05.2025).

Оставить комментарий