0% found this document useful (0 votes)
16 views4 pages

Credit Card Default Prediction Case Study

jmangi

Uploaded by

majelim219
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
16 views4 pages

Credit Card Default Prediction Case Study

jmangi

Uploaded by

majelim219
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd

Credit Card Behaviour Score: Case Study for IIT

Bombay
Introduction
Bank A, a leading credit card issuer, utilizes advanced machine learning (ML) models to
determine eligibility, assign credit limits, and set interest rates for its customers. To improve
portfolio risk management and ensure long-term profitability, the bank aims to develop a robust
"Behaviour Score" model. This predictive model estimates the likelihood of customers defaulting
on their credit cards in the future, enhancing risk control and decision-making.

Objective

The primary goal is to develop a Behaviour Score model by analyzing historical credit card data
("development data"). This model aims to:

1. Predict the likelihood of customer defaults.

2. Provide actionable insights into portfolio risks.

3. Generate predictions for a "validation dataset" to assess generalizability.

Datasets

Development Data

 Size: 96,806 credit card records.

 Features:

o On-us Attributes: e.g., credit limit (onus_attributes).

o Transaction-level Attributes: e.g., number and value of transactions


(transaction_attribute).

o Bureau Tradeline-level Attributes: e.g., historical delinquencies, product


holdings (bureau).

o Bureau Enquiry-level Attributes: e.g., personal loan inquiries (bureau_enquiry).

 Target Variable: bad_flag (1 = default, 0 = non-default).

Validation Data
 Size: 41,792 credit card records.

 Features: Same as development data, excluding bad_flag.

 Objective: Predict default probabilities for each record.

Approach

The project was implemented using Python with ML models designed for predictive
performance and interpretability.

1. Data Exploration and Preprocessing

 Loading and Exploration: Development data was loaded from CSV files and explored.

 Handling Missing Values: Missing values were filled with 0 ([Link](0)).

 Feature Selection: Variables were categorized into numeric and categorical.

 Scaling: StandardScaler was applied to standardize numeric features.

 Data Splitting: The development data was split into training (80%) and testing (20%)
sets.

2. Model Development

Three models were developed and evaluated:

 Logistic Regression:

o Algorithm: LogisticRegressionCV (cross-validated logistic regression).

o Evaluation: Accuracy, confusion matrix, classification report.

 XGBoost Classifier:

o Algorithm: Gradient boosting (XGBClassifier).

o Evaluation: ROC-AUC, confusion matrix, log loss.

 AdaBoost Classifier:

o Algorithm: Adaptive boosting (AdaBoostClassifier) with decision stumps as weak


learners.

o Evaluation: Achieved the best balance of accuracy and robustness.

3. Metrics and Evaluation


Metrics used for model selection:

 Accuracy: Correct predictions as a percentage.

 Confusion Matrix: TP, TN, FP, and FN counts.

 ROC-AUC: Ability to distinguish between classes.

 Log Loss: Difference between predicted probabilities and actual labels.

 Gini Coefficient: Derived from ROC-AUC (Gini = 2 × AUC - 1).

4. Predictions for Validation Data

 The AdaBoost Classifier, which delivered the best results, was used to predict default
probabilities for validation data.

 Predictions included account numbers and corresponding probabilities.

Results

Performance metrics for the models on the test data:

Model Accuracy (%) ROC-AUC Log Loss Gini Coefficient

Logistic Regression (Best) 98.53 % 0.95 0.17 0.90

XGBoost 97.56 % 0.93 0.18 0.85

AdaBoost 98.01 % 0.945 0.19 0.88

Insights and Observations

 Feature Importance: Transaction attributes and bureau tradeline-level attributes were


key predictors.

 Model Comparison:

o Logistic Regression: Simple and interpretable but with slightly lower


performance.

o XGBoost: Robust to overfitting and handled non-linear relationships well.

o AdaBoost: Delivered the best performance by focusing on misclassified


examples.

 Data Challenges:
o Missing values required careful imputation.

o Feature scaling significantly improved model performance.

 Validation Data: Predictions aligned well with the development dataset, demonstrating
model reliability.

Submission

The following were submitted:

1. Account numbers and predicted default probabilities for all validation data records.

2. Comprehensive documentation of the methodology, insights, and results.

Conclusion

The Behaviour Score model successfully predicts default probabilities for credit card customers,
serving as a reliable tool for risk management. By combining advanced machine learning
algorithms and rigorous evaluation, the model provides actionable insights, empowering Bank A
to enhance its credit portfolio strategies.

Common questions

Powered by AI

The AdaBoost Classifier was chosen for the validation dataset because it achieved the best balance of accuracy and robustness, focusing on misclassified examples to improve performance. Its ROC-AUC was slightly lower than Logistic Regression but it offered better generalizability and robustness necessary for reliable predictions, whereas Logistic Regression, despite its high accuracy, lacked the capacity for handling complex datasets .

By identifying transaction and bureau tradeline-level attributes as key predictors, insights from feature importance guided the focus of model refinement. These insights helped optimize model inputs, making it possible to prioritize more impactful features, which subsequently improved predictive accuracy and enabled the model to render more reliable default probability predictions .

The validation data ensured the reliability of the Behaviour Score model's predictions by serving as an unbiased test set to compare model output against expected outcomes without any target bias from development data. The alignment of predictions between the development and validation datasets demonstrated model reliability, confirming its competency in generalizing predictions to unseen data, a crucial aspect for operational decision-making in credit risk management .

The development data, with a bad_flag label, helped build and train the model by learning from historical default occurrences. In contrast, the validation data lacked this bad_flag, serving solely for prediction testing. This difference implies the need for careful assessment of the model's generalizability and predictive capability without prior label bias, challenging its true default prediction accuracy .

The Gini Coefficient, derived from ROC-AUC (Gini = 2 × AUC - 1), is used to express discriminatory power in a more intuitive way. It reveals the inequalities in model predictions concerning actual outcomes. In evaluating the Behaviour Score model, a higher Gini Coefficient confirms strong discriminatory power, signifying that the model effectively sorts default probabilities among customers, enhancing risk prediction accuracy .

Performance metrics like ROC-AUC and log loss are pivotal in evaluating the Behaviour Score model as they provide insight into accuracy and probability calibration. ROC-AUC measures the model's capability to distinguish between default and non-default classes, indicating robustness against false positives or negatives. Log loss assesses the model's probability predictions against actual outcomes, with lower values signifying better probability calibrations, thereby supporting robust decision-making for credit risk management .

During the data preprocessing phase, Bank A faced challenges related to missing values and the need for feature scaling. These issues were addressed by filling missing values with zeros and applying a StandardScaler to standardize numeric features, thereby improving the performance and stability of the machine learning models .

Bank A developed a Behaviour Score model focusing on key components such as credit limit, transaction history, historical delinquencies, and personal loan inquiries. These components are crucial as they provide comprehensive insights into a customer's credit behavior, helping predict the likelihood of default. The model uses these insights to improve risk control and decision-making by estimating future defaults, enhancing the bank's portfolio risk management .

Each machine learning model offers unique advantages that contribute to the robustness of the Behaviour Score model. Logistic Regression provides simplicity and interpretability, though with slightly lower performance. XGBoost effectively handles non-linear relationships and is robust against overfitting due to its gradient boosting algorithm. AdaBoost focuses on misclassified examples and delivered the best performance in balancing accuracy and robustness, making it ideal for predicting default probabilities in the validation data .

Feature selection and scaling were crucial in the model's development as they ensured relevant variables were used, and numerical features were standardized, respectively. This process helps improve model accuracy by reducing the risk of bias triggered by feature magnitude and ensuring that all variables contribute effectively to the model's predictions .

You might also like