Neuro ML is an advanced web application designed to assess the risk of Alzheimer's Disease using Machine Learning. It provides an intuitive interface for patients and healthcare professionals to input clinical data, receive immediate risk predictions, and interact with an integrated LLM-powered medical assistant.
🌐 Check Live Website : Neuro ML
- Utilizes a trained Random Forest Classifier to predict the likelihood of Alzheimer's based on demographic, lifestyle, and clinical data.
- Instantly generate and download a professional PDF summary of the assessment, including patient details and risk probability, suitable for medical record-keeping.
- A floating, intelligent chatbot powered by Google Gemini.
- Capable of explaining complex medical terms, offering health tips, and analyzing the specific data entered by the user in real-time.
- Dark/Light Mode: Seamless theme toggling.
- Smart Validation: Prevents submission of erroneous data (e.g., impossible blood pressure values).
- Responsive Design: Works on desktop and mobile devices.
- Interactive Health Tips: Dedicated section for brain-healthy lifestyle recommendations.
- Frontend: Dash, Dash Bootstrap Components (DBC), Custom CSS.
- Backend: Python.
- Machine Learning: Scikit-Learn, Joblib.
- PDF Generation: FPDF.
- LLM Integration: Google Generative AI (Gemini API).
NeuroPredict-AI/
│
├── assets/
│ ├── style.css # Custom styling for Dark Mode & Animations
│ └── favicon.ico # App Icon
│
├── models/
│ └── alzheimers_model_data.pkl # Pre-trained ML Model & Encoders
│
├── Utils/
│ ├── components.py # UI Component Definitions
│ ├── chatbot_service.py # Google Gemini API Connection
│ ├── model_handler.py # ML Prediction Logic
│ ├── pages.py # Page Layouts (Home, Assessment, Tips)
│ └── report_generator.py # PDF Report Creation Logic
│
├── app.py # Main Application Entry Point
├── callbacks.py # Logic Controller (Interactivity & Events)
├── config.py # Feature Ranges & Form Configuration
├── requirements.txt # Python Dependencies
└── README.md # Project Documentation
git clone [https://github.com/Amr2054/Alzheimer_Disease_Classifier]
cd neuropredict-aiIt is recommended to run this project in an isolated environment.
# Windows
python -m venv venv
venv\Scripts\activate
# Mac/Linux
python3 -m venv venv
source venv/bin/activatepip install -r requirements.txtTo use the NeuroBot Assistant, you need a Google Gemini API Key.
- Get a key from Google AI Studio.
- Set it as an environment variable (Recommended):
Windows (Powershell):
$env:GOOGLE_API_KEY="your_api_key_here"Mac/Linux (Terminal):
export GOOGLE_API_KEY="your_api_key_here"python app.pyOpen your browser and navigate to: http://127.0.0.1:8050/
- Input Data: Fill in the demographic and clinical fields manually.
- Analyze: Click "Analyze Risk Profile".
- The app will validate inputs and run the Random Forest model.
- View Results:
- See the risk probability score and risk level (Low vs Elevated).
- Download: Click "Download PDF Report" to save the results.
- Ask AI: Click the Brain Icon (bottom-left) to open NeuroBot. Ask questions like "What does my MMSE score mean?" or "How can I lower my cholesterol?".
IMPORTANT: This application is a prototype developed for educational and screening assistance purposes only.
- It is not a substitute for professional medical diagnosis or treatment.
- The predictions are based on statistical patterns and may produce false positives or false negatives.
- Always consult a qualified neurologist or healthcare provider for medical advice.
This project is open-source and available under the MIT License.