Predicting Client
Creditworthiness Using Machine
Learning
IOM209 – Business Intelligence |
April 2025
Team Presentation
Significance of the Topic
• - Credit scoring is essential in banking to
assess risk.
• - Traditional models are interpretable but
rigid.
• - Machine learning offers higher accuracy, but
challenges include:
• • Lack of transparency
• • Handling class imbalance
• - This project addresses label construction and
imbalance for prediction.
Dataset Description
• - Two datasets from Kaggle:
`application_record.csv` and
`credit_record.csv`
• - Merged using unique `ID`
• - `application_record.csv`: demographics &
finance info
• - `credit_record.csv`: monthly repayment
behavior and credit status
Label Construction
• - No predefined labels were given.
• - Labeling rule: if client had STATUS ≥ 2
(overdue >60 days) → label as 'bad'
• - STATUS categories used:
• • 0, C, X = good
• • 2, 3, 4, 5 = bad
• - Applied rule to monthly STATUS_HISTORY per
client
Example: Label Assignment
ID STATUS History Label
1 [0, C, X] Good
2 [0, 2, 3] Bad
3 [C, X] Good
4 [5, 2] Bad
5 [1, 0] Good
6 [X, 0] Good
7 [3, 4] Bad
Class Imbalance Challenge
• - Imbalance example: ~92% 'Good' vs ~8%
'Bad'
• - Problem: Classifiers may ignore minority
class
• - Solutions applied:
• • SMOTE for oversampling minority class
• • Class weighting (XGBoost
scale_pos_weight)
• • Random undersampling (tested)
Visualization: Class Distribution
Modeling & Evaluation
• - Tested models: Logistic Regression, Random
Forest, XGBoost
• - Evaluation metrics: Precision, Recall, F1-
Score, ROC-AUC
• - XGBoost performed best:
• • F1 (bad): 0.59
• • AUC: 0.89
• - XGBoost handles imbalance well with high
flexibility
Conclusion & Future Work
• - Constructed useful labels from behavioral
data
• - Addressed imbalance using SMOTE + cost-
sensitive learning
• - Best model: XGBoost
• - Future directions:
• • Use time-series models
• • Apply SHAP values for interpretability
• • Explore semi-supervised labeling
Thank You
• We’re happy to take any questions.
Model Performance: Confusion
Matrix
Model Performance: ROC Curve