High Level Design
CREDIT
CARD
DEFAULT
PREDICATI
ON
BY:-
Ayush Soni
November 11, 2024
PWSKILLS
1. INTRODUCTION
Sometimes, even a debt that initially seems manageable, like a credit card balance, can spiral
out of control. Situations such as job loss, medical emergencies, or business setbacks are
some of the key factors that can heavily impact personal finances. Credit card debts are often
the first to escalate in such scenarios due to high finance charges (compounded on daily
balances) and additional penalties. Many of us can relate to this scenario—missing a credit
card payment once or twice due to overlooked due dates or cash flow issues. But what if this
pattern continues for several months? How can we predict if a customer will default in the
coming months? To help banks mitigate risks, this model has been designed to forecast
customer defaults based on demographic data, such as gender, age, and marital status, along
with behavioral data like recent payments and past transaction patterns.
2. PROBLEM STATEMENT
Financial risks are increasingly highlighting the credit risk faced by commercial banks
as the financial industry continues to advance significantly. One of the major challenges
for these banks is accurately predicting the credit risk posed by their clients. The
primary goal is to forecast the likelihood of credit default based on a credit card holder's
characteristics and payment history.
3. DATASET INFORMATION
ID: ID of each client
LIMIT_BAL: Amount of given credit in NT dollars (includes individual and
family/supplementary = credit)
SEX: Gender (1=male, 2=female)
EDUCATION: (1=graduate school, 2=university, 3=high school, 4=others,
5=unknown, 6=unknown)
MARRIAGE: Marital status (1=married, 2=single, 3=others)
AGE: Age in years
PAY_0: Repayment status in September, 2005 (-1=pay duly, 1=payment delay for
one month, 2=payment delay for two months, … 8=payment delay for eight
months, 9=payment delay for nine months and above)
PAY_2: Repayment status in August, 2005 (scale same as above)
PAY_3: Repayment status in July, 2005 (scale same as above)
PAY_4: Repayment status in June, 2005 (scale same as above)
PAY_5: Repayment status in May, 2005 (scale same as above)
PAY_6: Repayment status in April, 2005 (scale same as above)
BILL_AMT1: Amount of bill statement in September, 2005 (NT dollar)
BILL_AMT2: Amount of bill statement in August, 2005 (NT dollar)
BILL_AMT3: Amount of bill statement in July, 2005 (NT dollar)
BILL_AMT4: Amount of bill statement in June, 2005 (NT dollar)
BILL_AMT5: Amount of bill statement in May, 2005 (NT dollar)
BILL_AMT6: Amount of bill statement in April, 2005 (NT dollar)
PAY_AMT1: Amount of previous payment in September, 2005 (NT dollar)
PAY_AMT2: Amount of previous payment in August, 2005 (NT dollar)
PAY_AMT3: Amount of previous payment in July, 2005 (NT dollar)
PAY_AMT4: Amount of previous payment in June, 2005 (NT dollar)
PAY_AMT5: Amount of previous payment in May, 2005 (NT dollar)
PAY_AMT6: Amount of previous payment in April, 2005 (NT dollar)
default.payment.next.month: Default payment (1=yes, 0=no)
4. TOOLS USED
Python programming language and frameworks such as NumPy, Pandas, Scikit-learn,
Matplotlib, Seaborn are used to build the whole model.
5. DESIGN DETAILS
5.1. Process flow
Import Data Each data feature Selecting variables Splitting dataset
analysis train/test
Flask app.py Liner Regression
Model
5.2. Deployment process
Start Load Model Import Html Arranging list of
Template data set
Predicting result Debugging Flask
6. CONCLUSION
The project is designed in flask; hence it is accessible to everyone. The above designing
process will help banks and loan lenders predict whether customers will default the credit
card payment or not, so the bank or respective departments can take necessary action, based
on the model's predictions. The UI is made to be user-friendly so that the user will not need
much knowledge of any tools but will just need the information for results.