Tema

Convolución y agrupamiento

Una capa convolucional desliza un mismo núcleo pequeño por toda la imagen y produce un mapa de respuestas, con lo que reparte los mismos pesos entre todas las posiciones.

Nombre en inglés

Convolution and pooling

Intuición

Un detector de bordes verticales sirve igual en la esquina superior izquierda que en el centro, de modo que aprender un juego de pesos por posición repetiría miles de veces el mismo hallazgo. Al compartir el núcleo, el número de parámetros deja de depender del tamaño de la imagen y la respuesta se desplaza cuando el objeto se desplaza. El agrupamiento resume ventanas vecinas y añade cierta tolerancia a los desplazamientos pequeños.

Fórmula

S(i, j) = \sum_m \sum_n I(i+m, j+n) K(m, n) \qquad \text{salida} = \left\lfloor \frac{n + 2p - k}{s} \right\rfloor + 1

Ejemplo resuelto

Sea una imagen de 4 por 4 cuyas dos columnas izquierdas valen 0 y cuyas dos columnas derechas valen 3, y un núcleo de 2 por 2 con la primera columna de unos y la segunda de menos unos. Con paso 1 y sin relleno la salida mide 3 por 3, ya que (4 más 0 menos 2) dividido entre 1 más 1 da 3. Cada fila de la salida vale 0, -6 y 0, porque solo la ventana que cae sobre el cambio de columna responde, y allí el cálculo da (0 más 0) menos (3 más 3) = -6. El signo negativo indica que el borde va de oscuro a claro, así que una ReLU colocada detrás lo borraría por completo y haría falta el núcleo de signo contrario para detectarlo. Un agrupamiento máximo de 2 por 2 con paso 1 sobre esa salida devuelve ceros, mientras que sobre la salida del núcleo contrario devolvería seises.

Errores frecuentes

Ejercicio

Una entrada de 32 por 32 pasa por una capa convolucional con núcleo de 5 por 5, paso 1 y relleno 2. ¿Qué tamaño espacial tiene la salida?

Ver la solución

La fórmula del tamaño resta el núcleo, suma dos veces el relleno, divide entre el paso y suma 1. El numerador vale 32 más 4 menos 5 = 31, la división entre 1 lo deja igual y la suma final da 32. El relleno de 2 es justo el que conserva el tamaño con un núcleo de 5, porque la mitad entera de 5 menos 1 vale 2.

Respuesta: 32 por 32

Temas relacionados

Cursos a los que prepara

Simulador

Este tema tiene un simulador interactivo en la guía.

Abrir el tema en la guía