This project focuses on implementing machine learning (ML) models for predictive analysis and deploying an interactive web application on an Azure virtual machine (VM). The application integrates data loading, dashboard visualization, and ML model predictions, including churn prediction.
A simple and interpretable ML algorithm used for predicting continuous target variables by finding the best-fit line between inputs and outputs. Suitable for tasks like forecasting sales or predicting house prices.
An ensemble learning algorithm that improves accuracy by constructing multiple decision trees. It handles both numerical and categorical data and is effective in solving large dataset problems.
An advanced ensemble method that iteratively corrects errors from previous models using gradient descent. It delivers high accuracy for regression and classification tasks but requires careful hyperparameter tuning.
- Logistic Regression
- Decision Tree
- Random Forest
- What factors are the strongest predictors of hospital readmission in diabetic patients?
- How well can we predict hospital readmission in this dataset with limited features?
- Azure VM Setup:
- Created a virtual machine (VM) and added an SSH key.
- Transferred the project files to the VM.
- Environment Configuration:
- Created and activated a virtual environment (
venv
). - Installed project dependencies from
requirements.txt
.
- Created and activated a virtual environment (
- Web Server Deployment:
- Installed and configured Gunicorn to run the Flask application.
- Used
nohup
to ensure the Flask app remains running after exiting the VM. - Verified the server status using the
tail
command.
- Created a
datasets
container in Azure for storing data. - Retrieved access keys and integrated them into the Flask application.
- Modified upload and download functions to establish a connection with Azure for seamless data management.
-
Data Loading Web App:
Upload and manage datasets directly through the web interface. -
Dashboard and ML Predictions:
A user-friendly dashboard to visualize data insights and apply machine learning models, including churn prediction.
- Clone the repository and navigate to the project directory:
git clone <repository_url> cd <project_directory>
- Set up a virtual environment and install dependencies:
python3 -m venv venv source venv/bin/activate pip install -r requirements.txt
- Deploy the application using Gunicorn:
gunicorn -w 4 -b 0.0.0.0:5000 app:app
- Access the application in your browser at
http://<VM_IP>
.
- Almaamar Alkiyumi
- Apolline Saussard
- Jason Yang