Dasar-dasar prediksi churn

Machine Learning untuk Pemasaran dengan Python

Karolis Urbonas

Head of Analytics & Science, Amazon

Apa itu churn?

  • Churn terjadi saat pelanggan berhenti membeli/berinteraksi
  • Konteks bisnis bisa kontraktual atau non-kontraktual
  • Kadang churn dapat sukarela atau tidak sukarela
Machine Learning untuk Pemasaran dengan Python

Jenis churn

Tipologi churn utama berdasar dua model bisnis:

  • Kontraktual (langganan telepon, langganan streaming TV)

Konten

  • Non-kontraktual (belanja kebutuhan, belanja online)

Belanja bahan makanan

Machine Learning untuk Pemasaran dengan Python

Memodelkan jenis churn berbeda

Biasanya:

  • Churn non-kontraktual lebih sulit didefinisikan dan dimodelkan karena tidak ada keputusan eksplisit pelanggan
  • Kita akan memodelkan churn kontraktual pada model bisnis telekomunikasi
Machine Learning untuk Pemasaran dengan Python

Pengodean churn

  • Umumnya 1/0, dengan 1 = Churn, 0 = Tidak churn
  • Bisa berupa string Churn/No Churn atau Yes/No - praktik terbaik: ubah ke 1 dan 0
    set(telcom['Churn'])
    
{0, 1}
Machine Learning untuk Pemasaran dengan Python

Menjelajahi distribusi churn

telcom.groupby(['Churn']).size() / telcom.shape[0] * 100
Churn
0    73.421502
1    26.578498
dtype: float64
Machine Learning untuk Pemasaran dengan Python

Bagi data menjadi train dan test

from sklearn.model_selection import train_test_split
train, test = train_test_split(telcom, test_size = .25)
Machine Learning untuk Pemasaran dengan Python

Pisahkan fitur dan target

Pisahkan nama kolom menurut tipe data

target  = ['Churn']
custid  = ['customerID']
cols    = [col for col in telcom.columns if col not in custid + target]

Bangun dataset train dan test

train_X = train[cols]
train_Y = train[target]
test_X  = test[cols]
test_Y  = test[target]
Machine Learning untuk Pemasaran dengan Python

Ayo berlatih!

Machine Learning untuk Pemasaran dengan Python

Preparing Video For Download...