Cómo funciona

Dropout es una técnica de regularización usada en redes neuronales. Durante el entrenamiento, en cada paso, una fracción de las neuronas de una capa se desactiva (se pone a cero) de forma aleatoria. Esto evita que la red dependa demasiado de una neurona o de una ruta específica, obligándola a aprender representaciones más robustas.

La tasa de dropout (por ejemplo, 0,2 o 0,5) define la proporción de neuronas desactivadas. En el momento de la inferencia (uso), el dropout se desactiva y los pesos se ajustan (se escalan) para compensar la diferencia entre entrenamiento y uso.

Ejemplo práctico

Imagina una red neuronal que clasifica correos como spam. Sin dropout, la red puede memorizar patrones específicos del conjunto de entrenamiento (overfitting) y fallar con correos nuevos. Con dropout de 0,3, el 30% de las neuronas se desactiva en cada paso, y la red aprende a reconocer spam a partir de varias señales independientes, generalizando mejor.

En código con PyTorch:

Python
import torch.nn as nn
layer = nn.Dropout(p=0.3)

Para qué sirve

Dropout sirve para reducir el overfitting y mejorar la generalización de las redes neuronales. Es una de las técnicas más simples y eficaces, usada en modelos de visión, lenguaje y tabulares. Suele combinarse con otras formas de regularización, como weight decay y data augmentation.