Basis van churnvoorspelling

Machine Learning voor marketing in Python

Karolis Urbonas

Head of Analytics & Science, Amazon

Wat is churn?

  • Churn gebeurt als een klant stopt met kopen / betrokken zijn
  • De businesscontext kan contractueel of niet‑contractueel zijn
  • Churn kan ook vrijwillig of onvrijwillig zijn
Machine Learning voor marketing in Python

Soorten churn

De hoofdindeling is gebaseerd op twee businessmodellen:

  • Contractueel (telefonie-abonnement, streamingabonnement)

Inhoud

  • Niet‑contractueel (boodschappen, online winkelen)

Boodschappen

Machine Learning voor marketing in Python

Verschillende churntypen modelleren

Typisch:

  • Niet‑contractuele churn is lastiger te definiëren en te modelleren, want er is geen expliciete klantbeslissing
  • We modelleren contractuele churn in het telecommodel
Machine Learning voor marketing in Python

Churn coderen

  • Meestal 1/0, met 1 = Churn, 0 = Geen churn
  • Kan ook een string Churn/No Churn of Yes/No zijn – best practice: omzetten naar 1 en 0
    set(telcom['Churn'])
    
{0, 1}
Machine Learning voor marketing in Python

Verdeling van churn verkennen

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

Splitsen in train- en testdata

from sklearn.model_selection import train_test_split
train, test = train_test_split(telcom, test_size = .25)
Machine Learning voor marketing in Python

Features en target scheiden

Scheid kolomnamen op datatype

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

Bouw train- en testsets

train_X = train[cols]
train_Y = train[target]
test_X  = test[cols]
test_Y  = test[target]
Machine Learning voor marketing in Python

Laten we oefenen!

Machine Learning voor marketing in Python

Preparing Video For Download...