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.