adatvezérelt növekedés Python
lemorzsolódás előrejelzés Xgboost bináris osztályozás
ez a cikksorozat célja az volt, hogy elmagyarázza, hogyan kell használni Python egy egyszerű módja annak, hogy az üzemanyag a vállalat növekedését alkalmazásával a prediktív megközelítés minden tevékenységét. Ez a programozás, az adatelemzés és a gépi tanulás kombinációja lesz.
a következő kilenc cikkben az összes témát lefedem:
1 – Ismerd meg a mutatóidat
2 – Ügyfélszegmentálás
3 – ügyfél élettartam – előrejelzés
4 – lemorzsolódás – előrejelzés
5 – A következő vásárlás napjának előrejelzése
6 – értékesítés előrejelzése
7 – piaci Válaszmodellek
8-uplift modeling
9-A/B tesztelés tervezés és végrehajtás
a cikkek saját kódrészletekkel rendelkeznek, hogy könnyen alkalmazhassák őket. Ha szuper új a programozás, akkor van egy jó bevezetés Python és Pandas (egy híres könyvtár, hogy fogjuk használni mindent) itt. De még kódolási bevezetés nélkül is megtanulhatja a fogalmakat, hogyan kell használni az adatait, és elkezdhet értéket generálni belőle:
néha futni kell, mielőtt járni tudsz-Tony Stark
előfeltételként győződjön meg róla, hogy a Jupyter Notebook és a Python telepítve van a számítógépen. A kódrészletek csak a Jupyter notebookon futnak.
rendben, kezdjük.
az adatvezérelt növekedés sorozat utolsó három szakaszában felfedeztük az alapvető mutatók nyomon követését, az ügyfelek szegmentálását és az élettartam értékének programozási előrejelzését. Mivel a szegmentálás és az élettartam-előrejelzés alapján ismerjük a legjobb ügyfeleinket, keményen kell dolgoznunk azok megtartásán is. Ez teszi a retenciós arányt az egyik legkritikusabb mutatóvá.
a megtartási arány azt jelzi, hogy mennyire jó a termékpiac illeszkedése (PMF). Ha a PMF nem kielégítő, akkor nagyon hamar látnia kell ügyfeleit. A retenciós ráta (tehát a PMF) javításának egyik hatékony eszköze a lemorzsolódás előrejelzése. Ennek a technikának a használatával könnyen megtudhatja, hogy ki valószínűleg lemorzsolódik az adott időszakban. Ebben a cikkben egy telekommunikációs adatkészletet fogunk használni, majd a következő lépéseket hajtjuk végre egy lemorzsolódási előrejelzési modell kidolgozásához:
- feltáró Adatelemzés
- Feature engineering
- annak vizsgálata, hogy a funkciók hogyan befolyásolják a megőrzést logisztikai regresszióval
- osztályozási modell felépítése az XGBoost segítségével
feltáró Adatelemzés
azzal kezdjük, hogy megnézzük, hogyan néznek ki az adataink, és vizualizáljuk, hogyan hatnak a címkénkre (lemorzsolódott vagy sem?). Kezdjük az adatok importálásával, és nyomtassuk ki az első tíz sort:
df_data = pd.read_csv('churn_data.csv')
df_data.head(10)
kimenet:
egy jobb módja annak, hogy az összes oszlopot és adattípust használja. info () módszer:
úgy tűnik, hogy adataink két kategóriába tartoznak:
- kategorikus jellemzők: nem, streaming tv, Fizetési mód & stb.
- numerikus jellemzők: birtoklás, havi díjak, teljes díjak
most a kategorikusoktól kezdve megvilágítjuk az összes funkciót, és megnézzük, mennyire hasznosak annak azonosításában, hogy az ügyfél lemorzsolódik-e.
mellékesen megjegyzendő, hogy a rendelkezésünkre álló adatkészletben a lemorzsolódás oszlop Igen/Nem értékű karakterlánc. Egész számra konvertáljuk, hogy könnyebben használhassuk elemzésünkben.
df_data.loc = 0
df_data.loc = 1
nem
az alábbi kódblokk használatával könnyen megjeleníthetjük, hogyan néz ki az egyes értékek lemorzsolódási aránya (1-megtartási arány) :
df_plot = df_data.groupby('gender').Churn.mean().reset_index()
plot_data = ,
y=df_plot,
width = ,
marker=dict(
color=)
)
]plot_layout = go.Layout(
xaxis={"type": "category"},
yaxis={"title": "Churn Rate"},
title='Gender',
plot_bgcolor = 'rgb(243,243,243)',
paper_bgcolor = 'rgb(243,243,243)',
)
fig = go.Figure(data=plot_data, layout=plot_layout)
pyoff.iplot(fig)
kimenet:
a lemorzsolódási arány nemek szerinti bontása:
a női ügyfelek nagyobb valószínűséggel köpülnek a férfi ügyfelekkel szemben, de a különbség minimális (~0,8%).
ismételjük meg ezt az összes kategorikus oszlopra. Hogy ne ismételjük meg, amit tettünk a nemek, megtalálja a szükséges kódot az összes alábbi:
most megyünk át a funkciók, amelyek azt mutatják, a legjelentősebb különbség az értékek:
Internet Service
ez a táblázat azt mutatja, az ügyfelek, akik száloptikai Internet szolgáltatás nagyobb valószínűséggel lemorzsolódás. Általában azt várom, hogy a száloptikai ügyfelek kevesebbet köpüljenek, mivel prémium szolgáltatást használnak. De ez megtörténhet a magas árak, a verseny, az ügyfélszolgálat és sok más ok miatt.
szerződés
a várakozásoknak megfelelően a rövidebb szerződés magasabb lemorzsolódási arányt jelent.
Technikai támogatás
az ügyfelek nem használják a Tech Support több, mint lemorzsolódás (~25% – os különbség).
Fizetési mód
a fizetés automatizálása nagyobb valószínűséggel tartja meg az Ügyfelet a platformon (~30% különbség).
Egyéb