Una convolución con un kernel de 3×3: en cada posición, multiplica los 9 valores del kernel con los 9 valores de entrada subyacentes y los suma. Esto produce un valor de salida. Desliza el kernel a la siguiente posición y repite. Un solo kernel produce un mapa de características (detectando un patrón). Múltiples kernels producen múltiples mapas de características. El stride (cuánto se mueve el kernel en cada paso) y el padding (cómo manejar los bordes) son parámetros adicionales que controlan el tamaño de salida.
En una CNN, las capas tempranas usan kernels pequeños para detectar patrones simples. Cada capa subsiguiente convoluciona sobre los mapas de características de la capa anterior, detectando patrones progresivamente más complejos. Capa 1: bordes. Capa 2: esquinas y texturas (combinaciones de bordes). Capa 3: partes de objetos (combinaciones de texturas). Capa 4: objetos (combinaciones de partes). Este aprendizaje jerárquico de características es el mecanismo fundamental detrás del éxito de las CNNs en visión.
Las convoluciones no se limitan a imágenes 2D. Las convoluciones 1D procesan secuencias (formas de onda de audio, series temporales, texto), deslizando un kernel a lo largo de una dimensión. Las convoluciones 3D procesan volúmenes (video, escaneos médicos), deslizando a lo largo de tres dimensiones. El principio es idéntico: detección de patrones locales con compartición de parámetros. Las convoluciones 1D se usan en algunas arquitecturas modernas (ConvNeXt, Hyena) como alternativas eficientes a attention para ciertas operaciones.