Giter VIP home page Giter VIP logo

sudhanshusinghaiml / aws-mlops-churn-prediction-for-bankingcustomer Goto Github PK

View Code? Open in Web Editor NEW
0.0 1.0 0.0 9.05 MB

This project is for classify the churnability of the customer for a Bank. The model takes into account the important factors such as Credit Score, Geography, Gender, Age, Tenure, Balance, NumOfProducts, HasCrCard, IsActiveMember and EstimatedSalary

License: Apache License 2.0

Jupyter Notebook 98.22% HCL 0.51% Dockerfile 0.01% Python 0.70% CSS 0.05% HTML 0.51% Shell 0.01%
aws aws-s3 awscodebuild awscodecommit awscodepipeline decision-tree-classifier ensemble flask gunicorn matplotlib random-forest seaborn xgboo

aws-mlops-churn-prediction-for-bankingcustomer's Introduction

AWS-MLOps-Churn-Prediction-for-BankingCustomer

This is project is for classify the churnability of the customer for a Bank. The model takes into account the important factors such as Credit Score, Geography, Gender, Age, Tenure, Balance, NumOfProducts, HasCrCard, IsActiveMember and EstimatedSalary.

Installation

$ git clone https://github.com/sudhanshusinghaiml/AWS-MLOps-Churn-Prediction-for-BankingCustomer.git
$ cd AWS-MLOps-Churn-Prediction-for-BankingCustomer
$ python -m venv venv/
$ source venv/Scripts/activate
$ pip install -r requirements.txt

Tech Stack:

  • Language: Python
  • Libraries: Flask, gunicorn, scipy, xgboost, joblib, seaborn, scikit_learn
  • Services: Flask, Docker, Amazon Web Services
  • Infrastructure as a Code: Terraform

Cloud Services:

  • AWS Elastic Container Registry
  • AWS CodeCommit
  • AWS CodeBuild
  • Amazon S3

Project Approach:

  • Create the repository in github in local

  • Application Code

    • Flask app (app.py) is created various modules\features on the webpage as given below:
      • Home Page - It briefly describes the Project
      • Project Description - This provides the techniques and approach used for the modelling.
      • Customer Churn Prediction - It will accept the input features from webpage for single user and predict whether customer is likely to churn or not
      • Model Training - If we have a different set of data on which we want to train our model, we can copy the files in the input folder in bit bucket and Train the model from this webpage.
    • CustomerChurnPredictor - module will serve the single user inference pipeline from the webpage.
    • ModelTrainingEngine - module will serve the model training on new data from the webpage.
    • ML_Pipeline module is used for Data Preprocessing, Encoding, Outlier Treatment, Feature Scaling, Model Training, Feature Extraction.
  • Model deployment using Docker

    • Prerequisite: Install Docker Desktop and Docker Toolbox
    • Desktop or laptop should be Virtualization enabled
    • Dockerfile is created to run this application in the local desktop
    • Use the below commands to create Image and then run the container
    $ docker build -t loan_eligibility_app_image .
    $ docker run -p 5000:5000 loan_eligibility_app_image:latest
    
    • We can run our codes in local without Docker
    $ python app.py
    
  • Random Forest Classifier Algorithm was selected as the best model for performance based on "Recall" as performance metrics

    Scores for Training Data

    Scores for Validation Data

  • Screenshot for Inference Pipeline and Model Training

    Project

    Project

    ModelTraining

    Result

aws-mlops-churn-prediction-for-bankingcustomer's People

Contributors

sudhanshusinghaiml avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.