Necesito un buen libro o artículo para aprender sobre convolución.Tengo un curso de Redes Neuronales y tenemos que hacer cálculos a mano.
Respuesta
¿Demasiados anuncios?He aquí algunas referencias sobre las circunvoluciones, específicamente en lo que se refiere a sus aplicaciones a las redes profundas y al aprendizaje automático :
-
Guía de la aritmética de convolución para el aprendizaje profundo por Dumoulin y Visin
-
Introducción a las redes neuronales convolucionales por O'Shea y Nash
-
Capítulo 9, Redes convolucionales en el Aprendizaje profundo libro de Goodfellow et al
También me gusta la forma en que se presenta aquí . La convolución (en 2D) se puede escribir: $$ (I\ast K)(s,t) = F_I(s,t|K) = \sum_{\alpha,\beta} I(s-\alpha,t-\beta) K(\alpha,\beta) $$ où $I$ es la imagen (señal) y $K$ es el núcleo (filtro). Podemos pensar en esta operación como la generación de la salida filtrada $F_I$ copiando partes locales de $I$ una y otra vez, cada vez traduciéndolo y escalándolo en función de los valores de $K$ . O, podemos pensar en ello obteniendo cada entrada volteando $K$ y luego desplazarlo iterativamente sobre $I$ tomando el producto punto en cada punto (en ambas dimensiones).
Tenga en cuenta que la mayoría de los marcos de aprendizaje profundo en realidad no hacen convolución. Realizan correlación cruzada. Hay una diferencia . (Por eso $K$ tiene que ser volteado en el párrafo anterior, antes de calcular los "productos punto" deslizantes, mientras que muchas implementaciones de ML no lo harán. Esto puede ser confuso si necesitas entrar en detalles).