This project was developed as part of my fifth-semester Artificial Intelligence coursework in Morocco. The goal is to design and compare machine learning and deep learning models capable of classifying patients as diabetic or non-diabetic.
# 🩺 Diabetic Patients Classification Project
This project was developed as part of my fifth-semester Artificial Intelligence coursework in Morocco. The goal is to design and compare **machine learning** and **deep learning** models capable of classifying patients as *diabetic* or *non-diabetic*.
The challenge lies in identifying the most effective model — balancing accuracy, generalization, and computational efficiency — to support informed healthcare decision-making.
---
## 🚀 Project Overview
The application provides a **user-friendly interface** for both data input and prediction:
* Users can **manually enter patient data** or **import data from an Excel file**.
* The system processes the data and predicts the likelihood of diabetes using pre-trained models.
* The predictions are powered by two optimized models, chosen for their high accuracy and ability to reduce overfitting.
---
## 🧠 Technologies Used
The project integrates several key technologies and libraries:
| Purpose | Technology |
| ----------------- | -------------------------- |
| User Interface | **PyQt5** |
| Deep Learning | **TensorFlow** |
| Machine Learning | **Scikit-learn (Sklearn)** |
| Data Processing | **Pandas** |
| Model Persistence | **Pickle** |
| CLI Enhancements | **Colorama** |
---
## 🧩 Models Implemented
The classification system leverages multiple models to ensure robust performance:
### **Machine Learning Models**
* Random Forest Classifier
* Support Vector Machine (SVM)
* Logistic Regression
* K-Nearest Neighbors (KNN)
### **Deep Learning Model**
* Fully connected (Dense) neural network built with TensorFlow.
---
## ⚙️ Optimization Techniques
To maximize model performance and reliability, the following strategies were applied:
* **Data Scaling** – Normalizing data to ensure uniform feature contribution.
* **K-Fold Cross-Validation** – Providing robust …