Sobes.tech
Junior — Senior

¿Qué son stride y padding? ¿Cómo afectan al tamaño de la salida de la convolución?

sobes.tech AI

Respuesta de la IA

Stride (pas de convolución) — es un parámetro que determina cuántos píxeles (o elementos) se desplaza el filtro de convolución en la imagen de entrada en cada aplicación. Por ejemplo, stride=1 significa que el filtro se desplaza 1 píxel, stride=2 — 2 píxeles, etc.

Padding (relleno) — es la adición de píxeles adicionales (generalmente ceros) en los bordes de la imagen de entrada antes de aplicar la convolución. Esto se hace para controlar el tamaño de la salida y preservar la información en los bordes.

Influencia en el tamaño de la salida:

  • Con un stride mayor, el tamaño de la salida disminuye, ya que el filtro pasa por más posiciones.
  • Padding aumenta el tamaño de la entrada, permitiendo mantener o aumentar el tamaño de la salida.

Fórmula para calcular el tamaño de la salida (para una dimensión):

Salida = floor((Entrada + 2 * Padding - KernelSize) / Stride) + 1

Donde:

  • Entrada — tamaño de la imagen de entrada en esa dimensión
  • KernelSize — tamaño del filtro
  • Padding — número de píxeles añadidos en cada borde
  • Stride — paso del filtro

Por ejemplo, para entrada 7, kernel=3, padding=1, stride=1: Salida = floor((7 + 2*1 - 3)/1) + 1 = floor(7) + 1 = 7

Es decir, el tamaño de la salida se mantiene.