During actual training (far too slow---requires 2 forward passes per parameter) - In production code - On very large networks (impractical)