Inspiration
Cardiovascular diseases are a major health concern, and interpreting multiple clinical parameters can be challenging. We wanted to explore how machine learning and explainable AI could make cardiovascular risk predictions more interpretable. This led us to build CardioVision AI, combining predictive models, feature-level explanations, and interactive 3D cardiovascular anatomy in one workspace.
What It Does
CardioVision AI is an investigational cardiovascular risk visualization platform. It analyzes 54 canonical clinical input features and generates predictions for four targets: Cath, LAD, LCX, and RCA. It also provides TreeSHAP explanations to show which features influence individual model predictions, alongside an interactive 3D cardiovascular visualization and a structured clinical intake workflow.
How We Built It
We developed a React and TypeScript frontend with a multi-step patient intake workflow, assessment views, and an interactive 3D heart model. A FastAPI backend serves four production Random Forest pipelines built with scikit-learn. The preprocessing pipeline handles numerical and categorical variables, while TreeSHAP provides feature attributions for individual predictions.
We evaluated the production models using five-fold stratified cross-validation. The mean ROC-AUC scores were 0.9195 for Cath, 0.8383 for LAD, 0.7199 for LCX, and 0.7340 for RCA. These are internal cross-validation results, not evidence of external clinical validation.
The frontend is deployed on Vercel, and the backend is deployed on Render. We also implemented assessment reporting with browser-native print-to-PDF functionality.
Challenges We Faced
One important challenge was maintaining consistency across 54 clinical features between the frontend, API schema, and machine-learning pipelines. Another was making model explanations mathematically consistent with predicted probabilities. We verified TreeSHAP additivity to machine precision for the tested prediction.
We also benchmarked experimental ensemble methods against the production Random Forest models. Although some ensemble results showed potential, they introduced trade-offs in explainability, latency, and model complexity. We therefore retained Random Forest as the production baseline.
What We Learned
This project taught us that building an ML application involves much more than achieving a strong metric. Reliable feature mapping, reproducible evaluation, explainability, API integration, deployment behavior, and honest communication of limitations are equally important.
We also learned to distinguish promising experimental results from evidence sufficient to justify changing a production system.
What's Next
Future work includes a Feature Engineering Lab, PDF clinical document extraction, uncertainty quantification, and dataset-shift monitoring. These enhancements would require further implementation and evaluation before being considered production-ready.
Responsible Use
CardioVision AI is an investigational research prototype, not a certified medical device. It is not intended to diagnose disease or replace professional medical judgment. The dataset is a small, single-centre cohort, and external validation and post-hoc probability calibration have not been established.
Built With
- fastapi
- python
- random-forest
- react
- render
- scikitlearn
- shap
- three.js
- typescript
- vercel