Sobes.tech
Junior — Senior

O que são stride e padding? Como eles afetam o tamanho da saída da convolução?

sobes.tech IA

Resposta da IA

Stride (passo de convolução) — é um parâmetro que determina quantos pixels (ou elementos) o filtro de convolução se desloca na imagem de entrada a cada aplicação. Por exemplo, stride=1 significa que o filtro se move 1 pixel, stride=2 — 2 pixels, etc.

Padding (preenchimento) — é a adição de pixels adicionais (geralmente zeros) nas bordas da imagem de entrada antes de aplicar a convolução. Isso é feito para controlar o tamanho da saída e preservar a informação nas bordas.

Influência no tamanho da saída:

  • Com um stride maior, o tamanho da saída diminui, pois o filtro passa por mais posições.
  • Padding aumenta o tamanho da entrada, permitindo manter ou aumentar o tamanho da saída.

Fórmula para calcular o tamanho da saída (para uma dimensão):

Saída = floor((Entrada + 2 * Padding - KernelSize) / Stride) + 1

Onde:

  • Entrada — tamanho da imagem de entrada nessa dimensão
  • KernelSize — tamanho do filtro
  • Padding — número de pixels adicionados em cada lado
  • Stride — passo do filtro

Por exemplo, para entrada 7, kernel=3, padding=1, stride=1: Saída = floor((7 + 2*1 - 3)/1) + 1 = floor(7) + 1 = 7

Ou seja, o tamanho da saída é mantido.