This project focuses on predicting heart disease using multiple machine learning algorithms and feature selection techniques. It combines statistical feature selection methods with ensemble learning models to improve prediction accuracy and reliability.
-
Data preprocessing and cleaning
-
Feature selection using:
- Chi-Square
- ANOVA
- Mutual Information
-
Multiple ML models:
- Naive Bayes
- SVM
- Random Forest
- XGBoost
- Logistic Regression
- KNN
- Decision Tree
- AdaBoost
- Bagging
-
Ensemble models:
- Voting Classifier
- Stacking Classifier
-
SMOTE for handling imbalanced data
-
Flask-based web interface for predictions
- Python
- Scikit-learn
- TensorFlow / Keras
- Pandas, NumPy
- Matplotlib, Seaborn
- Flask
- UCI Heart Disease Dataset
- Data Collection & Preprocessing
- Feature Selection (ANOVA, Chi2, MI)
- Model Training & Evaluation
- Ensemble Learning (Voting & Stacking)
- Deployment using Flask
- Voting Classifier Accuracy: ~86%
- Stacking Classifier Accuracy: 100% (experimental result)
git clone https://github.com/your-username/heart-disease-prediction-ml.git
cd heart-disease-prediction-ml
pip install -r requirements.txt
python app.pyIf the file is downloaded then open anaconda prompt open this file location
run python app.py
Preferred versions
Anaconda - 23.3.1
Python - 3.11.9Open: http://127.0.0.1:5000/
- Integration of Explainable AI (XAI)
- Deep Learning models
- Larger datasets for generalization
MIT License