Sebin Shaiju
← All projects

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.

A chest X-ray beside its MobileNetV2 Grad-CAM heatmap
Grad-CAM output. The heatmap is the part that makes the prediction arguable rather than just asserted.