Pneumonia detection ensemble
Transfer learning from three pretrained CNNs, averaged, with Grad-CAM heatmaps attached to every prediction, because an unexplained 88% is not usable in a clinical setting.
Approach
Three architectures with different inductive biases (dense connectivity, residual depth, and a mobile-scale separable-convolution network), each fine-tuned from ImageNet weights, then averaged. Ensembling across architectures rather than across seeds is the point: the errors are less correlated.
Class imbalance in the dataset is handled with weighted training rather than resampling, to avoid discarding data from the smaller class.
Results
88.8% accuracy, 95.0% precision, 86.0% recall, 0.9487 ROC-AUC, F1 0.90 over a 624-image held-out set.
The honest caveat
Precision at 95% with recall at 86% means the model misses roughly one in seven positive cases. In a screening context that ratio is the wrong way round: a missed pneumonia costs more than a false alarm, and the threshold should be moved before anyone treats this as decision support. The metrics above are reported at the default threshold, not a clinically chosen one.
