Skip to content

The second iteration of Cuana, an E2E customer analytics solution for churn/CLV prediction, segmentation & lead scoring

License

Notifications You must be signed in to change notification settings

avrtt/Cuana-E2E

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Cuana is an end-to-end analytics suite that integrates churn/CLV prediction, customer segmentation and lead scoring into a comprehensive solution using state-of-the-art ML methods, data pipelines and an interactive dashboard. This repository is a fork of my other project initially developed as part of a freelance work published with client approval.

Some features:

  • Data pipeline
    Clean, preprocess and split customer data using Python (pandas, NumPy).
  • Churn & CLV prediction
    Implements classification models (RM) for predicting churn and estimating customer lifetime value.
  • Customer segmentation
    Uses both k-means and hierarchical clustering to identify distinct customer groups based on behavior and value.
  • Lead scoring
    Builds a supervised model (XGBoost) to score and prioritize new leads for sales outreach.
  • Interactive dashboard
    Provides a dynamic BI dashboard built with Dash and Plotly to visualize metrics, sales funnel analytics and segmentation outcomes.

Structure

.
├── README.md
├── .gitignore 
├── requirements.txt
├── src/
│   ├── main.py
│   ├── data_pipeline.py
│   ├── churn_model.py implementation
│   ├── segmentation.py
│   ├── lead_scoring.py
│   ├── dashboard.py
│   └── utils.py
└── tests/
    ├── test_data_pipeline.py
    ├── test_churn_model.py
    ├── test_segmentation.py
    └── test_lead_scoring.py

Installation

Make sure you have Python 3.8+.

  1. Clone:
    git clone [email protected]:avrtt/Cuana-E2E.git
    cd Cuana-E2E
  2. Create and activate a venv:
    python -m venv venv
    source venv/bin/activate # Linux
    venv\Scripts\activate # Windows
  3. Install the required packages:
    pip install -r requirements.txt

Usage

Run:

python src/main.py

This will:

  • load and preprocess the synthetic customer data
  • train the churn/CLV prediction, segmentation and lead scoring models
  • launch an interactive dashboard to explore the results

Testing

Unit tests are located in the tests/ folder. You can run them using:

pytest tests/

To do

  • Enhance model interpretability with SHAP values
  • Integrate real-time data streaming into the dashboard
  • Deploy the solution as a cloud-based service

License

MIT