Cómo entrenar una red neuronal para una transferencia de estilo rápida

Hay algunos artículos sobre esto, por ejemplo: síntesis de textura en tiempo real recalculada con redes adversas generativas de Markovian

Primero, definiciones:

I_s: imagen de estilo.

I_c: imagen contemplada.

F_s: función de estilo

F_c: función de contenido.

El problema de transferencia de estilo es encontrar X con F_s (X) ~ F_s (I_s) y F_c (X) ~ F_c (I_c)

Gatys y cols. Proponen que F_c sea una capa profunda en VGG y que F_s sea la matriz de gramo de una capa superficial en VGG. Esa es la definición generalmente utilizada.

Gatys et al encontraron originalmente X utilizando la optimización, pero necesitamos una forma más rápida, con una red generativa.

Li y Wand utilizaron el esquema de red de adversarios generatibe (GAN) para lograr esto.

Hay una red generativa G que deseamos entrenar que tiene I_c como entrada y genera una imagen que debería ser la transferencia de estilo de la misma. Otra red D, el discriminador (también será entrenado) estará compuesto por dos partes: una aprenderá a discriminar imágenes con buen estilo (como I_s), y la otra imah con buen contenido. La entrada a la primera parte podría ser F_s (X), por ejemplo, para discriminar el estilo. Li y Wand usaron parches neurales. La segunda parte debe tener como entradas: F_c (X), F_c (I_c).

Eso es practicamente todo.