This project aims to predict whether a customer will subscribe to a term deposit based on demographic and banking information collected from previous marketing campaigns.
The objective is to help the bank improve future marketing strategies by identifying the factors that influence customer conversion and selecting the most effective machine learning model.
A bank conducted marketing campaigns involving approximately 11,000 customers. Information such as age, occupation, marital status, education level, account balance, and loan status was collected.
The bank wants to:
- Identify factors influencing customer subscription to term deposits.
- Build predictive models to classify whether a customer will subscribe.
- Compare multiple machine learning algorithms and select the best-performing model.
- Improve future campaign effectiveness and customer targeting.
deposit
- Yes → Customer subscribed to a term deposit.
- No → Customer did not subscribe.
The dataset includes:
- Age
- Job
- Marital Status
- Education
- Account Balance
- Housing Loan
- Personal Loan
- Contact Type
- Campaign Information
- Previous Marketing Outcome
- Deposit (Target Variable)
- Data Cleaning
- Exploratory Data Analysis (EDA)
- Feature Engineering
- Data Preprocessing
- Model Building
- Model Selection
- Performance Evaluation
- Logistic Regression
- Decision Tree Classifier
- Random Forest Classifier
- K-Nearest Neighbors
- Support Vector Machine
- Naive Bayes
- AdaBoost Classifier
- Accuracy
- Precision
- Recall
- F1 Score
- Confusion Matrix
- ROC-AUC Score
- Python
- Pandas
- NumPy
- Matplotlib
- Seaborn
- Scikit-learn
bank-term-deposit-prediction
│
├── data/
├── notebooks/
├── model_selection.ipynb
├── requirements.txt
├── README.md
└── images/
- Identified important features affecting term deposit subscription.
- Compared multiple machine learning algorithms.
- Selected the model with the best predictive performance.
- Generated insights to support data-driven marketing decisions.
- Hyperparameter tuning using GridSearchCV.
- Cross-validation for robust evaluation.
- Feature importance analysis.
- Deployment using Streamlit or Flask.
Deebesh Sundar
Machine Learning & Data Science Practitioner