Inspiration

Alzheimer's Disease affects 55 million people worldwide, with someone developing dementia every 3 seconds. Early detection can delay symptoms by up to 5 years, yet diagnosis remains slow and challenging. I wanted to create an AI tool that could screen MRI scans quickly and consistently, helping radiologists catch cases earlier and save lives.

What It Does

BrainGuard classifies brain MRI scans into four categories:

Glioma (brain tumor) Meningioma (tumor) Healthy (no disease) Pituitary (tumor)

It provides fast classification (< 1 second) with visual explanations using Grad-CAM to show which brain regions influenced the decision.

How I Built It

Architecture I used ResNet18 with transfer learning: pythonmodel = models.resnet18(weights='IMAGENET1K_V1') model.fc = nn.Linear(512, 4)

Training

Optimizer: Adam (lr = (10^{-4})) Data augmentation: rotation, flipping, color jitter Hardware: Google Colab Tesla T4 GPU Early stopping to prevent overfitting

Explainability

Implemented Grad-CAM for visual explanations: pythonfrom pytorch_grad_cam import GradCAM cam = GradCAM(model=model, target_layers=[model.layer4[-1]])

Challenges

Class Imbalance: Initial model just predicted "Healthy" → Fixed with weighted loss Slow Training: 6+ hours on CPU → Switched to Google Colab GPU (2 min/epoch) Reproducibility: Different results each run → Set random seeds everywhere Grad-CAM Compatibility: API changes broke code → Updated to latest documentation

Accomplishments

✅ High validation accuracy with balanced performance ✅ Visual explanations for clinical trust ✅ Production-ready, reproducible code ✅ Fast inference suitable for deployment

What I Learned

Transfer learning for medical imaging Handling imbalanced datasets effectively Explainability is crucial in healthcare AI Reproducibility requires discipline

What's Next

Ensemble multiple architectures Clinical validation with hospitals 3D CNN for volumetric analysis FDA approval pathway

Built With

  • google-colab
  • grad-cam
  • pytorch
  • resnet18
Share this project:

Updates