3.9 - Pooling

Lección 9 de la sección “Redes Convolucionales” del curso Fundamentos de Deep Learning con Python.

Introducción

En la lección anterior vimos procesar una imagen aplicando la convolución con múltiples filtros.

Como veremos más adelante, al procesar una imagen con una Red Convolucional lo que se hace es progresivamente reducir las dimensiones espaciales (ancho y alto de la imagen/volumen) incrementando a su vez la cantidad de características que se obtienen (es decir la profundidad del mapa resultante).

Una forma de reducir esta redundancia de información espacial (a lo ancho y a lo alto) es usando el pooling. Veamos cómo usar esta operación al momento de procesar una imagen o un volumen.

Contenido exclusivo suscriptores

Suscríbete para tener acceso al video con la explicación detallada de esta lección. Además podrás disfrutar de todos los cursos de la Academia Online

La idea básica del pooling

En una imagen en escala de grises, el pooling funciona de manera similar a un kernel durante la convolución: se realiza un barrido desde la esquina superior izquierda hasta la esquina inferior derecha de cada plano de la imagen procesada.

Pero en el caso del pooling en cada iteración se calcula o el máximo o el promedio de la región que se esté procesando, y el valor obtenido se asigna al correspondiente pixel de la imagen resultante.

Generalización a volúmenes

El mismo principio que acabamos de describir se puede extender a volúmenes, es decir a imágenes con n canales. En este caso simplemente basta con aplicar el pooling a cada canal de manera individual, generando así un mapa con la misma cantidad de canales del volumen de entrada.

Contenido exclusivo suscriptores

Recuerda suscribirte para acceder al video con la explicación detallada de esta lección. Además podrás disfrutar de todos los cursos de la Academia Online

Conclusión

Como hemos visto, el pooling no requiere el entrenamiento de ningún parámetro, pues en cada iteración aplica la misma operación (máximo o promedio) sobre la porción de la imagen de entrada que esté procesando.

En este punto ya tenemos todos los elementos básicos de una Red Convolucional: los filtros o kernels, la convolución en sus diferentes formas, así como el padding, los strides, el pooling y la convolución con múltiples canales y con múltiples filtros.

Así que ya estamos listos para entender cómo combinar todos estos elementos en la arquitectura de una red convolucional, que será el tema de la próxima lección.

Ver todas las lecciones de este curso