Эндрю Ын: «Стиль изображения — это корреляция между признаками нейросети»

DeepLearning.AI 33,7 тыс. 17 мин 3 мин 07.11.2017
Главное

В новом уроке курса от DeepLearning.AI профессор Стэнфордского университета Эндрю Ын раскрывает математическую суть того, что мы называем «стилем» в контексте нейронного переноса стиля (Neural Style Transfer). Если функция стоимости контента отвечает за сохранение структуры объектов, то функция стоимости стиля призвана уловить текстуру, цветовую гамму и художественные приемы, не привязываясь к конкретному расположению элементов.

🎨 Что такое стиль с точки зрения нейросети 0:00

Традиционно в сверточных нейронных сетях (CNN) каждый слой вычисляет определенные признаки. Для определения стиля Эндрю Ын предлагает использовать корреляцию между активациями различных каналов в выбранном скрытом слое $L$ . Это позволяет понять, какие визуальные элементы имеют тенденцию проявляться одновременно в разных частях изображения.

По мнению Эндрю Ына, интуитивно «стиль» можно представить через взаимодействие признаков:

Таким образом, измеряя степень корреляции между каналами в сгенерированном изображении и сравнивая её с оригинальным стилем (например, картиной Ван Гога), алгоритм может оценить, насколько успешно перенесены художественные особенности .

🔢 Матрица стиля: математическая формализация 4:17

Для формализации интуитивных выводов вводится понятие матрицы стиля, которую в линейной алгебре также называют матрицей Грама (Gram matrix) . Она вычисляется для каждого слоя $L$ как для изображения стиля ($S$), так и для сгенерированного изображения ($G$).

Основные технические характеристики этого процесса:

Автор подчеркивает, что если оба признака (активации в каналах $k$ и $k'$) велики в одних и тех же точках изображения, соответствующий элемент в матрице Грама будет иметь большое значение . Если же они не коррелируют, значение будет близким к нулю.

📉 Определение функции стоимости стиля 13:12

Функция стоимости стиля для конкретного слоя $L$ определяется как квадрат разности между матрицей стиля исходного изображения ($G^{(L)S}$) и матрицей стиля сгенерированного изображения ($G^{(L)G}$) .

Детали расчета стоимости:

  1. Используется сумма квадратов поэлементных разностей между двумя матрицами .
  2. В научной литературе (например, в работах Гэтиса и соавторов) часто применяются константы нормализации, включающие высоту, ширину и количество каналов слоя .
  3. Однако, по утверждению Эндрю Ына, точные значения этих констант не критичны, так как вся функция стоимости стиля в итоге умножается на гиперпараметр $\beta$ .

С математической точки зрения, эта функция представляет собой возведенную в квадрат норму Фробениуса для разности двух матриц стилей .

🏗️ Многослойный подход и итоговая оптимизация 14:58

Практика показывает, что для получения наиболее визуально приятных результатов недостаточно использовать только один слой нейросети. Эндрю Ын рекомендует суммировать функции стоимости стиля по нескольким слоям .

Преимущества использования нескольких слоев:

В завершение лекции Ын сводит все компоненты воедино: общая функция стоимости $J(G)$ представляет собой сумму функции стоимости контента (с весом $\alpha$) и функции стоимости стиля (с весом $\beta$) . Минимизация этой функции с помощью градиентного спуска позволяет нейросети создавать новые произведения искусства, сочетающие структуру одной фотографии с эстетикой другой картины .

💬 Цитаты

«Мы собираемся определить стиль как корреляцию между активациями в разных каналах этого слоя.»

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

👥 Спикер
🔗 Упомянутые сайты и проекты
📊 Цифры
🗓 Хронология
  1. В начале видео Определение концепции стиля через корреляцию каналов.
  2. Середина видео Вывод математической формулы матрицы Грама для слоев L.
  3. В конце видео Объединение функций стоимости контента и стиля в итоговую формулу для оптимизации.
⚖️ Другая сторона
Искусственный интеллект Эндрю Ын Neural Style Transfer матрица Грама функция стоимости DeepLearning.AI