7 votos

Retropropagación en la capa de convolución

La mayoría de los ejemplos que encontré en Internet explican bien la retropropagación en la capa de convolución, pero solo con un único kernel y un único canal de entrada.

No entiendo cómo hacer la retropropagación para más de un kernel y más de un canal de entrada.

Supongamos que tengo una capa de convolución que acepta una entrada $X$ de tamaño 3x20x20, aplica 5 filtros de kernel 3x3x3 $K$ y produce una salida $O$ de tamaño 5x18x18

En un diagrama se ve así (pido disculpas por mi horrible dibujo a mano): Forward Pass

Durante la pasada hacia atrás, la capa recibe un error $\frac{\partial E}{\partial O}$ y lo propaga de vuelta a la capa anterior.

Según entiendo, para calcular $\frac{\partial O}{\partial X}$ necesito aplicar una convolución 'completa' a $\frac{\partial E}{\partial O}$ con kernels rotados 180°. Entonces, se ve así:

Backward Pass

Las dimensiones de $\frac{\partial O}{\partial X}$ deberían coincidir con las dimensiones de $X$ (3x20x20), pero la operación de convolución produce una salida con una profundidad igual al número de kernels (en mi caso 5).

Mi pregunta es ¿cómo una convolución 'completa' entre $\frac{\partial E}{\partial O}$ 5x18x18 sobre 5 filtros rotados 3x3x3 puede producir una salida $\frac{\partial O}{\partial X}$ con dimensiones 3x20x20? ¿No es cierto que la profundidad de la salida de la operación de convolución es igual al número de filtros?

6voto

Dox Puntos 161

Intento explicar las dimensiones obtenidas (5x18x18 -> 3x20x20):

  • 5 -> 3 las convoluciones invertidas se repiten 3 veces, pero los efectos de cada uno de los 5 filtros se suman, exactamente como se hace en la fase hacia adelante. En cualquier caso, en una capa convolucional es posible dar cualquier profundidad en la entrada y cualquier número de filtros en la salida también. entrar descripción de la imagen aquí

  • 18 -> 20 se debe a la convolución completa, en la que se aplica un relleno a la imagen de entrada, obteniendo así una imagen más grande como resultado.

De todos modos, aquí se explica muy bien la retropropagación en capas convolucionales.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X