Project Overview Cardiovascular diseases remain one of the leading causes of mortality worldwide. Early detection is critical for improving patient outcomes, but real-world clinical diagnosis often involves trade-offs between cost, speed, and accuracy.
This project presents a cost-aware and explainable machine learning system for predicting heart disease risk using the UCI Heart Disease dataset.
The goal is not only to build an accurate classifier, but also to evaluate:
which medical tests provide the most predictive value, how diagnostic cost can be minimized, and how predictions can be explained in a clinically meaningful way. Methodology We implement and compare multiple machine learning models including:
Logistic Regression (baseline) Random Forest XGBoost (primary model) Model evaluation is performed using:
Accuracy Precision Recall F1-score ROC-AUC Explainability SHAP (SHapley Additive exPlanations) is used to interpret model predictions.
We analyze:
global feature importance individual patient-level explanations clinically relevant risk factors such as chest pain type, ST depression, and vessel count Cost-Aware Analysis A key contribution of this project is the integration of a cost-aware evaluation framework.
Each medical test is assigned a relative cost, and we evaluate:
full feature model low-cost feature subset immediate-test-only model optimized feature selection strategy We introduce a feature efficiency metric defined as:
Efficiency = Feature Importance / Test Cost
Results The results show that it is possible to maintain competitive predictive performance while significantly reducing diagnostic cost.
This demonstrates the potential of machine learning systems to support more efficient clinical decision-making.
Conclusion This project highlights the importance of combining:
predictive accuracy interpretability and cost efficiency in medical AI systems.
Future work includes validation on larger clinical datasets and integration into real-time decision support tools.
Built With
- fastapi
- react
- xgboost
Log in or sign up for Devpost to join the conversation.