1 of 55

Credit Card Approval Prediction

2 of 55

Hello!

from Ramadhoni Suryo

and Anne Luthfiyah

Group 2: DS 10

2

3 of 55

Business Understanding

Background Theory & Purpose

3

1

4 of 55

Latar Belakang

  • Kartu skor kredit adalah metode pengendalian risiko yang umum di industri keuangan dengan menggunakan informasi dan data pribadi yang dikirimkan oleh pemohon kartu kredit untuk memprediksi kemungkinan gagal bayar di masa depan dan pinjaman kartu kredit.

​

  • Bank dapat memutuskan apakah akan mengeluarkan kartu kredit kepada pemohon. Skor kredit dapat secara objektif mengukur besarnya risiko.

​

  • Bank ingin mengotomatisasi proses kelayakan kartu kredit berdasarkan detail pelanggan yang diberikan saat mengisi formulir aplikasi online & riwayat kredit pelanggan agar menghindari customer customer yang tidak mampu melunaskan hutangnya dan tidak mengalami telat bayar

​

  • Mereka mengalami kesulitan untuk mengidentifikasi segmen pelanggan yang memenuhi syarat untuk persetujuan Kartu Kredit, sehingga mereka dapat secara khusus menargetkan pelanggan tersebut.

​

​

​

4

5 of 55

Sehingga, dibutuhkan Machine Learning untuk memprediksi customer mana yang “good client” dan mana yang “bad client” dengan memperhatikan error untuk dibuat sekecil mungkin agar mesin tidak memprediksi “good client” dan aktual “bad client”

5

“

6 of 55

Tujuan

Memprediksi risiko setiap pemohon yang gagal membayar pinjaman kartu kredit dengan membangun Machine Learning model yang mengkategorikan apakah pelamar adalah klien 'baik' atau 'buruk' (definisi ‘baik’ atau ‘buruk’ ditentukan oleh kami, yaitu Customer tidak punya riwayat melakukan telat bayar sekalipun tiap bulan yang telah terekam di record_data) dan mengkonstruksikan label dari teknik tertentu. Selain itu juga menyelesaikan problem unbalanced data.

6

7 of 55

Flow Process

Workflow Diagram of All the Tasks

7

2

8 of 55

Flow Process - Project Timeline

8

8 Juli - Pemilihan Topik

24 Juli - Analisis Data

2 Agustus - Pemodelan Data

18 Juli - Pengumpulan Proposal

28 Juli - Pra-pemrosesan Data

8 Agustus - Evaluasi

9 of 55

Theoretical Basis

Theory Concerning the Topic

9

3

10 of 55

Modelling

Random Forest

Random forest adalah suatu algoritma yang digunakan untuk klasifikasi data dalam jumlah yang besar

Random forest merupakan kombinasi dari masing – masing pohon (tree) dari model Decision Tree yang baik, dan kemudian dikombinasikan ke dalam satu model.

​

​

Decision Tree

Manfaat utama dari penggunaan decision tree adalah kemampuannya untuk mem-break down proses pengambilan keputusan yang kompleks menjadi lebih simple, sehingga pengambil keputusan akan lebih menginterpretasikan solusi dari permasalahan.

​

XGBoost

XGboost adalah implementasi lanjutan dari algoritma peningkatan gradien (Gradient Boosting).

XGboost menggunakan prinsip ensemble yaitu menggabungkan beberapa set pembelajar (tree) yang lemah menjadi sebuah model yang kuat sehingga menghasilkan prediksi yang kuat.

​

10

11 of 55

Demo

Demonstration of Machine Learning Project

11

4

12 of 55

Dataset Explanation

First Dataset: Dataset berisikan data customer yang mendaftarkan / mengajukan melalui formulir aplikasi online untuk pembuatan kartu kredit, seperti ID, usia, penghasilan per bulan pelanggan dan lain lain.

Second Dataset: Dataset berisikan data Riwayat kredit customer dan status / score

​

12

13 of 55

Dataset Variables

First Dataset

ID

Code_gender

Flag_own_car

Flag_own_realty

Cnt_children

Amt_income_total

Name_income_type

Name_education_type

Name_family_status

​

​

Name_housing_type

Days_birth

Days_employed

Flag_mobil

Flag_work_phone

Flag_phone

Flag_email

Occupation_type

Cnt_family_member

Second Dataset

ID

Months balance

Status

​

​

13

14 of 55

Data Understanding

Dataset Application_data Mencakup Informasi Tentang :

  • Terdapat 438557 baris data & 18 kolom
  • Dari 18 kolom tersebut, 8 diantaranya bertype data Kategorikal / Object. dan 10 lainnya bertype data Numerik / integer
  • Dataset berisi tentang informasi data customer yang telah mengajukan aplikasi untuk mendapatkan kartu credit. seperti data jenis kelamin, umur,pendidikan terakhir, status perkawinan, jumlah anggota keluarga.
  • Lalu informasi tentang kepemilikian aset customer, seperti mobil, rumah, handphone, tipe rumah.
  • Dan informasi tentang Pekerjaan customer, seperti jenis pekerjaan, pendapatan per bulan, jenis penghasilan dan tahun pengalaman kerja

​

14

15 of 55

Data Understanding (cont.)

Dataset Record_data Mencakup Informasi Tentang :

  • Terdapat 1048575 baris data & 3 kolom
  • 2 kolom diantaranya bertype data Numerik / integer , dan 1 lainnya bertipe Kategorikal / Objeck.
  • Dataset berisi tentang, ID pelanggan yaitu kode unik setiap pelanggan yang melakukan kredit.
  • Lalu, month_balance yaitu jika 0 maka bulan ini, jika -1 bulan sebelumnya, jika -2 dua bulan sebelumnya. dan seterusnya
  • Dan STATUS ---> 0: 1-29 hari lewat jatuh tempo, 1: 30-59 hari lewat jatuh tempo, 2: 60-89 hari lewat jatuh tempo, 3: 90-119 hari lewat jatuh tempo, 4: 120-149 hari lewat jatuh tempo, 5: Utang terlambat atau macet, lebih dari 150 hari, C: lunas bulan itu, X: Tidak ada pinjaman untuk bulan ini.

​

15

16 of 55

Data Cleaning - Check Missing Value

16

17 of 55

Data Cleaning - Check Strange Value

17

18 of 55

Data Cleaning - Impute Missing Value

18

19 of 55

Data Cleaning - Impute Missing Value (cont.)

19

20 of 55

Data Cleaning - Target Labelling

20

21 of 55

Data Cleaning - Detect Outliers

21

22 of 55

Data Cleaning - Detect Outliers (cont.)

22

23 of 55

Data Cleaning - Detect Outliers (cont.)

23

24 of 55

Data Cleaning - Detect Outliers (cont.)

24

25 of 55

Data Cleaning - Detect Outliers (cont.)

25

26 of 55

Data Cleaning - Detect Outliers (cont.)

26

27 of 55

Data Cleaning - Detect Outliers (cont.)

27

28 of 55

Data Cleaning - Detect Outliers (cont.)

28

29 of 55

Data Cleaning - Detect Outliers (cont.)

29

30 of 55

Data Cleaning - Detect Outliers (cont.)

30

31 of 55

Exploratory Data Analysis

31

“

32 of 55

Exploratory�Data Analysis

​

Orang yang bekerja > sales > pensiunan > pegawai negeri sipil > siswa

32

33 of 55

Exploratory Data Analysis

Orang dengan income paling banyak tidak diketahui pekerjaannya, disusul dengan buruh (unskilled physical work)

33

34 of 55

Exploratory Data

Analysis

​

Sekolah menengah > perguruan tinggi > perguruan tinggi yang tidak selesai > sekolah menengah pertama > gelar akademik

​

34

35 of 55

Exploratory Data Analysis

Orang dengan income lebih tinggi memilih untuk tidak mempunyai mobil karena biaya perawatan yang tinggi dan kemungkinan besar tinggal di kota-kota besar dengan akses transportasi publik yang memadai

35

36 of 55

Exploratory

Data Analysis

Untuk orang yang tinggal di rumah/ apartemen, kebanyakan memiliki properti pribadi.

36

37 of 55

Exploratory Data Analysis

Memiliki rumah/apartemen > tinggal dengan orang tua > apartemen pemerintah > sewa apartemen > apartemen kantor > apartemen co-op

37

38 of 55

Exploratory Data Analysis

Married couple make more money because there is a potential that both people make money

38

39 of 55

Data Pre-processing

39

40 of 55

Data Pre-processing (cont.)

40

41 of 55

Data Pre-processing (cont.)

41

42 of 55

Data Pre-processing (cont.)

42

43 of 55

Modelling - XGBoost

43

44 of 55

Modelling - XGBoost

44

45 of 55

Modelling - Random Forest

45

46 of 55

Modelling - Decision Tree

46

47 of 55

Modelling - XGBoost Hyperparameter

47

48 of 55

Modelling - XGBoost Hyperparameter

48

49 of 55

Modelling Comparison

Bisa dilihat bahwa modelling terbaik adalah XGBoost Hyperparameter.

49

50 of 55

Feature Selection

50

51 of 55

Limitation

Things to Consider for Further Improvement

51

5

52 of 55

Limitation

  • Kalau dilihat lebih dalam dataset-nya, sebenarnya kolom-kolom ini lemah untuk menentukan apakah dia akan bayar on-time/telat

​

  • Bicara secara logika, orang kaya ngga mungkin telat bayar - ternyata ada sejarah orang kaya pun juga pernah telat bayar. Bukan tidak mampu bayar, mungkin ada aspek human error yang ikut serta. Misal: lagi on vacation, lupa bayar listrik

52

53 of 55

Conclusion & Suggestion

53

6

54 of 55

Kesimpulan & Saran

  • Model berbasis tree lebih baik karena telah dibuktikan dari XGBoost, Random Forest, dan Decision Tree

​

  • ​
  • Model yang paling akurat adalah XGBoost

​

  • Balancing data bisa lebih di improve

​

  • Dataset yang dipilih memiliki banyak mislabel

54

55 of 55

Thanks!

Any questions ?

55