Redes convolucionais para visão

2 min

Objetivo: entender convolução, canais, pooling e campo receptivo.

Uma camada densa ignora a estrutura espacial e multiplica rapidamente os parâmetros. Uma convolução aplica o mesmo pequeno kernel a todas as posições. Esse compartilhamento de pesos explora a localidade e reduz fortemente o número de parâmetros.

Para uma entrada C_in × H × W, um kernel C_out × C_in × K × K contém C_out(C_in K² + 1) parâmetros com viés, independentemente do tamanho da imagem.

python
from torch import nn

features = nn.Sequential(
    nn.Conv2d(3, 32, kernel_size=3, padding=1),
    nn.BatchNorm2d(32),
    nn.ReLU(),
    nn.MaxPool2d(2),
    nn.Conv2d(32, 64, kernel_size=3, padding=1),
    nn.ReLU(),
    nn.AdaptiveAvgPool2d((1, 1)),
)

Pré-visualização — o resto da lição está reservado aos inscritos.

Já se inscreveu com um código?

O seu acesso está ligado à sua conta, não a esta ligação. Inicie sessão com o mesmo e-mail usado na aula: o seu curso está à espera, não precisa de introduzir o código de novo.

Iniciar sessãoAinda não tem conta? Criar uma
Esta lição faz parte do módulo «Arquiteturas especializadas»

Os primeiros módulos do curso são de acesso livre. Para o resto há três possibilidades: comprar este curso de uma vez por todas, subscrever, ou introduzir o código entregue na aula.

Subscrever — 19 $ US/mêsVoltar ao plano
É estudante do curso?

O código fica ligado à sua conta: inicie sessão ou crie uma conta e ele será aplicado automaticamente ao regressar.

Ainda não tem conta? Criar uma