Como funciona
Dropout é uma técnica de regularização usada em redes neurais. Durante o treino, a cada passo, uma fração dos neurônios de uma camada é desligada (zerada) aleatoriamente. Isso impede que a rede dependa demais de um neurônio ou de um caminho específico, forçando-a a aprender representações mais robustas.
A taxa de dropout (por exemplo, 0,2 ou 0,5) define a proporção de neurônios desligados. No momento da inferência (uso), o dropout é desativado e os pesos são ajustados (escalados) para compensar a diferença entre treino e uso.
Exemplo prático
Imagine uma rede neural que classifica e-mails como spam. Sem dropout, a rede pode decorar padrões específicos do conjunto de treino (overfitting) e falhar em e-mails novos. Com dropout de 0,3, 30% dos neurônios são desligados a cada passo, e a rede aprende a reconhecer spam por vários sinais independentes, generalizando melhor.
Em código com PyTorch:
import torch.nn as nn
layer = nn.Dropout(p=0.3)Para que serve
Dropout serve para reduzir overfitting e melhorar a generalização de redes neurais. É uma das técnicas mais simples e eficazes, usada em modelos de visão, linguagem e tabulares. Costuma ser combinada com outras formas de regularização, como weight decay e data augmentation.