Skip to content

sashankabhiram/Customer-Segmentation-Using-Unsupervised-Learning

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🛍️ Customer Segmentation Using Unsupervised Learning

Python Scikit-Learn Pandas NumPy License


📌 Project Overview

Customer segmentation is one of the most important applications of machine learning in business analytics. This project uses Unsupervised Machine Learning (K-Means Clustering) to identify groups of customers with similar purchasing behavior and demographic characteristics.

The project demonstrates a complete machine learning workflow including:

  • Data Cleaning
  • Exploratory Data Analysis (EDA)
  • Feature Engineering
  • Feature Scaling
  • Dimensionality Reduction (t-SNE)
  • K-Means Clustering
  • Cluster Visualization
  • Business Insights

🎯 Objectives

  • Analyze customer purchasing patterns.
  • Discover hidden customer segments.
  • Help businesses personalize marketing campaigns.
  • Improve customer retention strategies.
  • Support data-driven decision making.

📊 Dataset

The dataset contains customer demographic information, purchasing behavior, and spending patterns.

Example features include:

  • Age
  • Income
  • Education
  • Marital Status
  • Number of Children
  • Spending Amount
  • Purchase Frequency
  • Customer Enrollment Date

🛠 Technologies Used

  • Python
  • Jupyter Notebook
  • Pandas
  • NumPy
  • Matplotlib
  • Seaborn
  • Scikit-learn

📈 Machine Learning Workflow

Dataset
      │
      ▼
Data Cleaning
      │
      ▼
Exploratory Data Analysis
      │
      ▼
Feature Engineering
      │
      ▼
Data Standardization
      │
      ▼
t-SNE Visualization
      │
      ▼
Elbow Method
      │
      ▼
K-Means Clustering
      │
      ▼
Customer Segments
      │
      ▼
Business Insights

📷 Project Results

Correlation Heatmap

image

Elbow Method

image

t-SNE Visualization

image

Final Customer Clusters

image

📌 Business Insights

  • High-value customers can be identified for premium marketing campaigns.
  • Budget-conscious customers can receive promotional offers.
  • Customer segmentation improves personalization.
  • Businesses can optimize marketing expenditure using cluster-based targeting.

🚀 Future Improvements

  • DBSCAN Clustering
  • Hierarchical Clustering
  • Gaussian Mixture Models
  • Interactive Dashboard using Streamlit
  • Deployment using Flask

⚙️ Installation

git clone https://github.com/sashankabhiram/Customer-Segmentation-Using-Unsupervised-Learning.git

cd Customer-Segmentation-Using-Unsupervised-Learning

pip install -r requirements.txt

jupyter notebook

📁 Project Structure

Customer-Segmentation-Using-Unsupervised-Learning
│
├── data
├── notebooks
├── images
├── results
├── README.md
├── requirements.txt
└── LICENSE

👨‍💻 Author

Muthyala Sashank Abhiram

Passionate about Machine Learning, Data Science, UI/UX Design, and AI.


⭐ If you found this project useful, consider giving it a star.

About

A machine learning project that applies K-Means clustering to segment customers using unsupervised learning.

Topics

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors