Mezclas de vectores (III): las funciones involucradas

[Tiempo después de la publicación de esta entrada hice otra, esta, en la que se ahonda en la función de pérdida usada en la reconstrucción del estilo o textura de las imágenes y que en esta serie no se trató con el detalle que el asunto requiere.]

En esta tercera entrada de la serie (aquí está la primera y la segunda) quiero ocuparme de las que llamé $latex f_1$ y $f_2$, las funciones involucradas. Que son las que obran la magia, por supuesto. Con casi cualquier otra opción se habría obtenido una patochada, pero estas son funciones especiales.

Las funciones en cuestión están extraídas de esta,

inception03

que es una representación esquemática (extraída de aquí) de una red neuronal para el reconocimiento de imágenes. El nodo superior lee píxels y el el inferior dice si en la foto hay unos loros o no. Los colores indican distintos tipos de operaciones (convoluciones, etc.) internas de la red.

Una red neuronal no deja de ser una función construida como composición de otras: cada nodo del gráfico anterior, de hecho, no deja de ser una función relativamente simple.

Si corres esa red neuronal sobre una foto de las dimensiones adecuadas, el resultado es un vector de probabilidades. Pero, ¿qué pasa con los pasos intermedios? Precisamente $latex f_1$ y $latex f_2$ son dos de esos pasos intermedios elegidos (no por mí, lo aviso) adecuadamente de modo que la una detecte estructura global en el gráfico y la otra, textura. De este modo, el vector mezcla, la imagen resultante, adquiere las formas de una de las fotos y las texturas de la otra.

Una colección de enlaces relevantes y puede que interesantes es: