Two graded challenges from the Artificial Neural Networks and Deep Learning course at Politecnico di Milano (a.y. 2024/25), built with a team of four under the name OverfittingExorcists. Both were blind-test competitions: the evaluation labels were never released, so the only way to move the score was to improve the model. Notebooks and the full write-ups for both are in the repository.
Blood cells classification
Eight-class classification of 96×96 RGB microscopy images, each class a different cell state.
Approach
- Transfer learning from EfficientNetV2S rather than training from scratch, with the upper blocks fine-tuned.
- Class weights to stop the better-represented cell states dominating the loss.
- Regularisation on several fronts at once: batch normalisation, dropout and L2, trained with Adam under early stopping and learning-rate decay.
- Two augmentation strategies compared head to head (a mixed augmentation pipeline versus RandAugment alone), plus test-time augmentation on the final predictions.
Martian terrain semantic segmentation
Per-pixel segmentation of 64×128 grayscale Martian surface images, where the classes are terrain types and the errors concentrate on the boundaries between them.
Approach
- Started from a standard U-Net, then built variants: residual blocks, dense blocks and adaptive feature fusion in one; parallel dilated convolutions, a squeeze-and-excitation block and a global context block in another.
- Moved from sparse categorical focal loss (γ=1) to a combined loss weighting Dice, focal and boundary terms at 1.5, 2.0 and 0.5, because pixel accuracy alone rewards predicting the dominant terrain everywhere and ignores exactly the thin boundaries that matter.
- Augmented aggressively: GridMask, random cutout, brightness and contrast shifts, flips, random crop, zoom, Gaussian blur and edge enhancement.
- Finished with an ensemble of the U-Net variants.
Results
| Model | Accuracy | Mean IoU | Mean IoU (blind test) |
|---|---|---|---|
| Single U-Net | 67.92% | 60.10% | 66.68% |
| Ensemble | 70.43% | 71.53% | 72.32% |
The ensemble is the headline: +11.4 points of mean IoU over the best single network, against only +2.5 points of raw accuracy. That gap is the whole lesson. Accuracy barely moved because the large uniform regions were already being predicted correctly by every member; the ensemble earned its keep almost entirely on the transition zones, which is where mean IoU actually looks.
What I would do differently
Scoring on a single held-out submission pushes you towards late tinkering. With hindsight I would have frozen the validation protocol on day one and spent the saved time on error analysis, since the residual errors in both challenges sat in a small number of visually similar cases rather than spread evenly across the classes.