Sobes.tech
Middle

Para que serve uma camada de pooling?

sobes.tech IA

Resposta da IA

Camada de pooling em redes neuronais é usada para reduzir a dimensionalidade dos dados de entrada, o que ajuda a diminuir a carga computacional e a reduzir o número de parâmetros do modelo. Ela também promove a identificação das características mais importantes, aumentando a robustez do modelo contra deslocamentos e distorções nos dados de entrada.

Os tipos mais comuns de pooling:

  • Max pooling — seleciona o valor máximo de uma região.
  • Average pooling — calcula a média.

Exemplo de max pooling com tamanho de janela 2x2 e passo 2:

import torch
import torch.nn as nn

input_tensor = torch.tensor([[[[1, 2, 3, 4],
                               [5, 6, 7, 8],
                               [9, 10, 11, 12],
                               [13, 14, 15, 16]]]], dtype=torch.float32)

pool = nn.MaxPool2d(kernel_size=2, stride=2)
output = pool(input_tensor)
print(output)

O resultado conterá os máximos de cada bloco 2x2, reduzindo a dimensão de 4x4 para 2x2.