Loan Score Construction
Based on dataset : Default of Credit Card Clients
Yining Wang
15 Oct 2025
Score
Probability of default
Binary Classification
Data
Static, Uncensored
Y : default payment 0/1
X :
Model
Logistic Regression ?
Machine Learning ?
Neuro Networking?
LightGBM
-(one hot, balance, cross feature relation)
Workflow
Data
Model
-Hyper parameter
-More features
-Sampling ways
Prediction
Construct the score based on predicted probability
Data
‘EDUCATION’ instead have four level , there are ‘ 0 1 2 3 4 5 6 ‘
Kaggle Discution raised the same question, solution: 0 5 6 -> 4 (others)
( Bill amounts = 0 , Repayment amounts = 0)
We can’t learn clients just based on personal character without looking Bill and repayment status/amounts. These inactive clients don’t help train model
Data
Data
max_delay : Max delay month
num_delay : Times of delay
is_recent_delay : Delay status for last month(september)
pay_var : Stability of repayment
avg_bill_amt/ avg_pay_amt: mean of bill amount/payment amount
std_bill_amt / std_pay_amt: standard errors of bill amount/payment amount
bill_trend: Last month bill amount - first month bill payment
pay_trend: Last month payment amount - first month payment payment
has_fin_habitat : If one always pay same amount, he/she has a good financial plan
is_revolving_{i} : on month i , one revolving repay
is_pay_duly_{i} : on month i , one pay duly
delay_months_{i}: for bill of month i, one delay it x month
Model
We begin prudently: with learning rate 0.05 and 52 leaves (as we have 52 features first), don’t limite the tree depth. 2000 iteration times.
Early stopped , overfitting after 200 round.
AUC score on validation set : 0.7727
Model
Even though LightGBM can handle Y inbalance, we can still use K-fold CV, to avoid data split biais, and use data better.
I put K=5, in each fold split a train/validation set, calculate final AUC by mean of these 5 fold train result.
Final AUC score : 0.7895
Model
Customers who delay payments more often, especially if their last month’s payment was overdue for several months, and who use a high portion of their loan limit, are more likely to default next month.
Score prediction
To control the scale and stability of score, I join initial score A as 600 for each client, B equal to 50 as scale weight for the variety of default probability. With logarithmic equation, there is an inverse ratio relation between probability of default and score.
Score Joint on notebook
Improvements
Thank you
Yining Wang
15 Oct 2025