Нейросети и технологии

CFG scale (Classifier-Free Guidance)

  • Автор: Команда PhotoPanda
  • Обновлено
  • 2 мин чтения
  • 89 просмотров

Определение

CFG scale (Classifier-Free Guidance) — параметр диффузионной генерации, задающий, насколько строго модель следует текстовому промпту. Низкие значения дают свободу и креатив, высокие — точное соответствие запросу, но риск артефактов.

CFG scale (Classifier-Free Guidance scale) — числовой параметр диффузионной генерации, определяющий баланс между следованием текстовому промпту и свободой модели. По сути это «сила убеждения»: насколько настойчиво нейросеть тянет результат к описанию в запросе.

Как работает Classifier-Free Guidance

Метод, предложенный Джонатаном Хо и Тимом Салимансом в 2022 году, на каждом шаге денойзинга делает два предсказания: одно с учётом промпта (conditional), другое — без него (unconditional). Итоговое направление вычисляется по формуле e = e_uncond + CFG × (e_cond − e_uncond). Чем больше CFG, тем сильнее генерация смещается в сторону условного предсказания, то есть промпта.

Влияние значений

  • 1–3 — слабое следование: креативно, но промпт учитывается частично
  • 5–8 — золотая середина для Stable Diffusion: баланс точности и естественности
  • 10–15 — жёсткое следование: детали промпта проявлены, но растёт риск пересвета, кислотных цветов и артефактов
  • > 20 — обычно «пережаривает» картинку: контраст зашкаливает, детали ломаются

Взаимодействие с другими параметрами

CFG scale работает в связке с числом шагов (steps), сэмплером и seed. Высокий CFG часто требует больше шагов, чтобы модель успевала «сгладить» агрессивное наведение. При работе в режиме image-to-image CFG влияет на то, насколько сильно промпт перекраивает исходник поверх заданной denoising strength.

CFG и негативный промпт

Значение unconditional-предсказания на практике заменяют на предсказание по негативному промпту. Тогда CFG усиливает не только притяжение к желаемому, но и отталкивание от нежелательного — поэтому при высоком CFG негативный промпт действует особенно заметно.

Отличия по моделям

Оптимальный диапазон зависит от архитектуры. Классический Stable Diffusion любит CFG 7, SDXL — 5–7, дистиллированные и turbo-модели (SDXL Turbo, некоторые FLUX-варианты) работают на CFG около 1–2, так как guidance встроен в обучение. Поэтому единого «правильного» значения нет — его подбирают под конкретную модель.

Практический вывод

Начинайте с рекомендованного для модели значения, меняйте CFG небольшими шагами при фиксированном seed и следите за балансом: если картинка «выгорает» — снижайте, если игнорирует промпт — повышайте.

Материал подготовила

Команда PhotoPanda

Редакция сервиса обработки фото PhotoPanda.