Inspiration

I'm interested in biotechnology and want to work where AI meets biology and healthcare. Heart disease risk models usually give a plain percentage, which doesn't show where in the heart the problem is. I wanted to see if a 3D view could make the risk easier to understand.

What it does

CardioViz 3D predicts overall coronary artery disease (CAD) and stenosis of the three main coronary arteries (LAD, LCX, RCA) from patient clinical data. The predictions are mapped onto an interactive 3D heart: each artery changes color from green to yellow to red with its predicted probability. Users can rotate, zoom, pick a patient, and click an artery to see why the model predicted that risk. A clear disclaimer states that predictions are for decision support and educational purposes only.

How I built it

  • Data: UCI Extension of Z-Alizadeh Sani dataset (303 patients, 59 features).
  • Leakage prevention: LAD, LCX, RCA and Cath are removed from the inputs.
  • Models: one Random Forest per target (300 trees, balanced class weights), evaluated with 5-fold stratified cross-validation.
  • Explainability: SHAP TreeExplainer. The dashboard shows the top 5 features for each patient and target.
  • 3D app: Three.js heart with colored arteries, a patient selector, probability bars and explanations. It runs in a normal browser, with no GPU needed.

Results (5-fold cross-validation)

Target Accuracy F1 ROC-AUC
Overall CAD 0.865 0.906 0.921
LAD 0.795 0.831 0.851
LCX 0.673 0.589 0.722
RCA 0.650 0.514 0.712

Challenges

LCX and RCA are harder to predict than overall CAD and LAD. The dataset is small and has no imaging data, so I report these results honestly. I also had to fix data-loading and library-loading problems to get the 3D app working offline.

What I learned

How to prevent target leakage, evaluate a model properly, explain predictions with SHAP, and connect a model to a 3D visualization.

What's next

More data and imaging inputs to improve the LCX and RCA models, and a more realistic anatomical 3D model.

Disclaimer: this is not a medical device and is not a substitute for formal diagnostic imaging or a doctor.

Share this project:

Updates

Submission history