Underfitting
When a model is too simple to capture the underlying patterns in the data, resulting in poor performance on both training and new data.
Too Simple to Learn
Underfitting is the opposite problem from overfitting. Here, the model isn't powerful enough to capture the patterns in the data. Imagine trying to draw a curved line using only a ruler - you can get close, but you'll never match the actual shape.
An underfit model performs poorly on everything, including the training data it learned from. It hasn't even learned the patterns that are definitely there, let alone generalized to new examples.
Causes and Solutions
Underfitting usually means your model is too simple for the problem. A linear model can't capture non-linear relationships. A shallow network can't learn hierarchical features. The architecture just doesn't have the capacity to represent the complexity in your data.
The fixes are straightforward: use a more powerful model, add more features, train longer, or reduce regularization. Sometimes the data preprocessing is too aggressive, removing signal along with noise.
In practice, underfitting is usually easier to diagnose and fix than overfitting. When training performance is bad, you know you need more model capacity. The harder challenge is finding the sweet spot - a model complex enough to learn real patterns but not so complex that it memorizes noise. That's the core tension in machine learning.