Skip to main content

2. Weight Initialization

Weights need initial values before training starts.

Poor initialization can cause:

  • Vanishing gradients
  • Exploding gradients
  • Slow or unstable training

Common Initialization Techniques​

Xavier/GlorotCommonly used with Sigmoid/Tanh
He/KaimingCommonly used with ReLU

He Initialization​

Designed for ReLU networks to keep activations from becoming too small or large.

nn.init.kaiming_normal_(model.linear1.weight, nonlinearity="relu")

Xavier Initialization​

Commonly used with Sigmoid or Tanh activations.

nn.init.xavier_normal_(model.linear1.weight)

Actual Implementation Full code​

Code Block