Esta es una pequeña pregunta conceptual que me ha estado molestando por un tiempo: ¿Cómo podemos propagarnos a través de una capa de agrupación máxima en una red neuronal?
Me encontré con capas de agrupación máxima mientras revisaba este tutorial para la biblioteca nn de Torch 7. La biblioteca abstrae el cálculo de gradiente y pasa hacia adelante para cada capa de una red profunda. No entiendo cómo se realiza el cálculo de gradiente para una capa de agrupación máxima.
Sé que si tienes una entrada entrando en la neurona i de la capa l , entonces δ i l (definida como δ i l = ∂ E ) viene dado por: δil=θ
Entonces, una capa de agrupación máxima recibiría los 's de la siguiente capa como de costumbre; pero dado que la función de activación para las neuronas de agrupación máxima toma un vector de valores (sobre el cual maximiza) como entrada, δ i l ya no es un número único, sino un vector ( θtendría que ser reemplazado por∇θ( { z j l } )). Además,θ, siendo la función máxima, no es diferenciable con respecto a sus entradas.
Entonces ... ¿cómo debería funcionar exactamente?
fuente
Max Pooling
Supongamos que tiene una capa P que viene encima de una capa PR. Entonces el pase hacia adelante será algo como esto:
fuente
La respuesta de @ Shinvu está bien escrita, me gustaría señalar un video que explica el gradiente de la operación Max () y esto dentro de un gráfico computacional que es rápido de entender.
mientras implementamos la operación maxpool (un nodo computacional en un gráfico computacional: su arquitectura NN), necesitamos una función que cree una matriz de "máscara" que realice un seguimiento de dónde está el máximo de la matriz. Verdadero (1) indica la posición del máximo en X, las otras entradas son Falso (0). Hacemos un seguimiento de la posición del máximo porque este es el valor de entrada que finalmente influyó en la salida y, por lo tanto, en el costo. Backprop está calculando gradientes con respecto al costo, por lo que cualquier cosa que influya en el costo final debe tener un gradiente distinto de cero. Entonces, backprop "propagará" el gradiente de regreso a este valor de entrada particular que había influido en el costo.
fuente