During training, dropout independently masks activations. With keep probability :
In inverted dropout,
The factor keeps the expected activation approximately unchanged.
1. Why it can regularize
A feature cannot rely on the same neighbouring features always being present. The network is pushed toward more redundant, robust representations.
Another intuition is that training samples many thinned subnetworks while inference uses the combined full network.
2. Train versus eval
Dropout is active during training and disabled during evaluation:
model.train() # dropout on
model.eval() # dropout off
Forgetting this can make validation predictions randomly fluctuate.
3. More is not always better
Excessive dropout can destroy useful signal and cause underfitting. Its usefulness depends on architecture, data scale and other regularization.
What to Remember
Dropout injects multiplicative Bernoulli noise during training to discourage fragile feature dependence.
Next → Residual Connections: instead of randomly removing paths, can we create direct identity paths that make very deep networks easier to optimize?