Project work carried out during the penultimate semester of study for the credits prescribed under University Core of the curriculum, related to the specialization of the programme by applying the knowledge gained in the courses we have undergone so far.
Table of Contents
The purpose of this project work was to build an efficient model to predict the health insurance amount. Various machine learning models were compared with Deep Neural Network model. With the evaluation metric being Mean Squared Error, DNN model outperformed the machine learning models, which is then used to serve the end users. The end-to-end application ensures the continuous integration and continuous deployment of the application to the users. Using Agile Software Development Lifecycle, the project is built following all the engineering standards, rules and regulations.
Flask, JavaScript, Azure, Docker,Visual Studio Code and Jupyter
Note for Windows user : Before step-3, uncomment line no.95 to 101 and delete the line no.116.
- Clone the repository.
git clone https://github.com/SnehaVeerakumar/Predict-health-insurance-amount.git
- Activate virtual environment.
virtualenv venv
venv\Scripts\activate
- Install necessary python packages.
pip install -r requirements.txt
- Start the server
python app.py
- Build using Docker Image
docker build -t app_name:tag_name .
- Run on port 5000
docker run -p 5000:5000 app_name:tag_name
Link : https://hub.docker.com/r/snehaveerakumar/insuranceprediction
Pull Image
docker pull snehaveerakumar/insuranceprediction
- Parent folder contains 3 important files.
- app.py : Acts as the entry point to the application. It contains the URL routes and the codes for machine learning models.
- Dockerfile : Contains the instructions to build a docker image.
- requirements.txt : Contains the packages required to deploy the application.
- Folder : Code
- Three sub folders in this folder contains the code for frontend and backend of the application. Jupyter Notebook has been used to analyse various machine learning models and deep neural network models and compared to select the best model using Mean Squared Error.
- Folder : Dataset
- Contains all the dataset that is required for the project. Processed data and user data will also get saved in this folder for the further processing
- Fork the Project
- Create your Feature Branch (
git checkout -b test
) - Commit your Changes (
git commit -m 'message'
) - Push to the Branch (
git push origin test
) - Open a Pull Request
- Disease indicators : https://www.kaggle.com/datasets/cdc/behavioral-risk-factor-surveillance-system
- Insurance amount(insurance.csv) : https://www.kaggle.com/datasets/annetxu/health-insurance-cost-prediction