Если вы пользовались генераторами изображений или видео, вы наверняка замечали странные руки с шестью пальцами или лица, где глаза смотрят в разные стороны. Почему современные нейросети, способные создавать фотореалистичные пейзажи, так часто ошибаются в анатомии?

Корень проблемы: статистика против анатомии

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

  • Частично закрыты другими объектами
  • Находятся в движении (смазаны)
  • В кадре видны не полностью
  • Могут быть в разных позах и ракурсах

Из-за этого модель не может достоверно выучить, что рука — это ровно 5 пальцев в определённом порядке. Она видит «что-то длинное с ответвлениями» и иногда генерирует 6 пальцев, иногда 4, а иногда палец, растущий из запястья.

🔬 Техническая деталь

Современные модели используют латентную диффузию — работают не с пикселями, а со сжатым представлением изображения. В этом сжатом пространстве мелкие детали (вроде количества пальцев) легко теряются. Это как попытаться рассмотреть пальцы на фотографии размером 32×32 пикселя — вы увидите только общую форму.

Почему лица тоже страдают?

С лицами похожая история, но есть нюанс. Человеческий мозг исключительно хорошо распознает лица — у нас для этого есть отдельная зона в височной доле (веретенообразная извилина). Именно поэтому мы замечаем даже малейшие искажения: косые глаза, асимметрию, странную улыбку. Модель же пытается аппроксимировать распределение всех возможных лиц, и в этом распределении "почти правильное лицо" с одним чуть скошенным глазом — допустимый вариант.

Как это исправляют?

Современные модели используют несколько подходов для улучшения анатомической точности:

  • Детализированные промпты — указание «5 пальцев на каждой руке» помогает модели не ошибаться.
  • Дообучение на чистых датасетах — модели дополнительно тренируют на изображениях, где руки и лица размечены вручную.
  • Контрольные сети (ControlNet) — дополнительный вход, который подает модели информацию о позе и форме.
  • Апскейлинг с коррекцией — после генерации отдельная нейросеть ищет и исправляет анатомические ошибки.