L2 Regularization

mport torch.optim as optim # Pass weight_decay to apply L2 regularization automatically optimizer = optim.Adam(model.parameters(), lr=0.001, weight_decay=1e-4)

L1 Regularization

criterion = nn.CrossEntropyLoss() optimizer = optim.Adam(model.parameters(), lr=0.001) for inputs, targets in train_loader: optimizer.zero_grad() outputs = model(inputs) # Base loss loss = criterion(outputs, targets) # Calculate manual L1 penalty l1_lambda = 1e-5 l1_norm = sum(p.abs().sum() for p in model.parameters()) # Combine losses total_loss = loss + (l1_lambda * l1_norm) total_loss.backward() optimizer.step()