# Nurture_prediction
## Project Description
The Nurture Prediction app predicts maternal health risks using a machine learning model. The app classifies patients into different risk levels: **High Risk**, **Mid Risk**, and **Low Risk**. It features a Flask-based web application where users can input patient data for risk predictions, upload new data for model retraining, and explore various visualizations of the dataset.
## Features
1. Prediction Page: Allows users to input patient data and receive risk predictions.
2. Dashboard: Visualizations showcasing insights from the dataset.
3. Data Upload: Users can upload new data to the system for model retraining.
4. Retrain Model: A trigger to retrain the machine learning model based on new data.
5. Flood Simulation: Tests system performance under a high load of prediction requests using Locust.
6. Dockerized Deployment: App is fully containerized for ease of deployment and scaling.
## Video Demo and Live Link to App
- **Video Demo:**
youtube.com
- **Live App:**
maternal-risk-frontend-late…
- **Docker Image:** `kathrineg/maternal_risk_frontend:latest`
- **Deployed link(Swagger UI):**
nurture-prediction.onrender…
## Navigating the Deployed App
The deployed app contains five key pages:
1. **Home:** An overview of the project, including its purpose and features.
2. **Preprocess:** Details the preprocessing steps applied to the dataset before training the model.
3. **Visualizations:** Provides insights into the dataset's features and their impact on maternal health risk predictions.
4. **Retrain:** Users can upload a CSV file to retrain the model. The file should contain all 7 columns of feature data. Navigate to `data/uploads` to download sample files, rename them to your likeness and upload them. After uploading click on the Retrain button to retrain. After retraining, a success message with the model version will appear. For evaluati …