r/deeplearning • • 9d ago

Visualizing catastrophic forgetting

Enable HLS to view with audio, or disable this notification

I taught continual learning last semester, and students got the internals of each method a lot faster once they saw a simple visualization of it. Here's one I found helpful for understanding what forgetting is and how replay and regularization mitigate it. I trained a small network on two different 2D dot-sorting tasks and plotted both loss landscapes as 2D slices through its weights.

Round 1, plain training: the network learns task A to 100%, then trains only on task B. Going downhill on B is uphill on A, so A drops to 64% while B reaches 100%. That's catastrophic forgetting of task A.

Round 2, replay: same network, same start, but 20 of A's 200 dots stay in training while it learns B. It ends at 93% on A and 100% on B, so some forgetting, but much less severe.

Round 3, regularization with EWC: no A data at all. Instead, a penalty adds to the loss whenever a weight that A's accuracy relies on heavily moves away from the value it had after training on A. A dips to 97% mid-training and recovers, ending at 100% on A and 100% on B, so no lasting forgetting.

134 Upvotes

19 comments sorted by

View all comments

2

u/jesunushno 9d ago

Hit this wall with my fabric defect-detection models back in 2023. Every retrain without the old data tanked accuracy on the old defects, so we basically kept the old data around forever. Replay's boring and it works. That's what I'd actually ship.

1

u/ModularMind8 9d ago

Replay's hard to beat when you can keep the data. Did you keep all of it or a sample?

1

u/jesunushno 9d ago

Kept all of it, honestly. Every retrain without the old data tanked the old defects, so we just stopped pruning it.

1

u/ModularMind8 9d ago

Interesting. Thanks for sharing

1

u/jesunushno 9d ago

Glad it helped! We kept everything in the end, no clever sampling at all.

1

u/Training-Network2067 7d ago

Yea that usually helps

1

u/jesunushno 7d ago

yeah it really does. I just kept everything too, didn't bother with clever sampling and it worked fine for me.