analýza Telco Customer Churn Dataset

dobře! Pojďme na to..

takže jsem připravil tento příběh, abych se trochu více seznámil s daty nerovnováhy.

dataset je k dispozici na následujícím odkazu:

takže se do něj ponoříme.

konečným cílem bude vyhodnotit různé modely a předpovědět, zda zákazník “chrlí” nebo ne.

For not familiar churn se nejčastěji vyjadřuje jako procento (nebo počet) předplatitelů služeb, kteří v daném časovém období ukončí své předplatné.

Pojďme začít tím, že dělá náš EDA (Průzkumné Analýzy Dat)

Na datové typy zdálo být v pořádku, s výjimkou důchodce, který by měl být faktor příliš. (Na pochybách, zkontrolujte datové sady odkaz a je to knihovna)

Pojďme si to představit souhrn údajů

Tam jsou některé NaN v TotalCharges sloupci, takže budeme kopat trochu hlouběji na ty řádky,

Protože počet řádků s NaN hodnoty jsou velmi malé (1,5% údajů), a brát v úvahu, že všechny jsou churn= “ne”, což je v datech příliš zastoupeno. Budeme jen odstranit ty řádky z pracovních dat

uvidíme barplots pro distribuci kategorický sloupce

Nyní se pojďme graf pro závislou proměnnou

Jak bylo zmíněno výše, můžeme vidět, teď nerovnováha data pro závislou proměnnou. S tím se budeme muset vypořádat později, než budeme modelovat.

nyní zakreslíme boxplots pro kvantitativní proměnné.

Na boxplot nevykazují žádné odlehlé hodnoty v distribuci.

Nyní se podívejme na korelace pro kvantitativní proměnné:

Existuje vysoká pozitivní korelace mezi Celkovými Poplatky a Měsíční Poplatky a Celkové náklady a Držby.

Teď nakreslíme některé histogramy s ohledem na fluktuaci funkce pro kvantitativní vlastnosti:

obrázek výše ukazuje, že míra odchodu zákazníků klesá jako zvýšení držby, což je dobré znamení, že společnost je schopna udržet dlouhodobé klienty.👏👏👏

pozemky výše uvedené nám dává některé rady z funkce, jako jsou:

  • Zřejmě funkce, jako je Pohlaví, Telefonní Služby, a Více Řádků opravdu nemají moc vliv na Fluktuaci;
  • Tam se nezdá být velký rozdíl mezi funkcí Streaming TV a Streaming Filmů;
  • online zabezpečení, Ochrana zařízení a technická podpora mají velmi podobné histogramy a vztah Churn x Non Churn.

dále kopat dolů do bi-variate analysis, včetně kvantitativní funkce (funkčního období, Měsíční Poplatky a Celkové náklady) pojďme se transformují do faktorů, podle rozdělení do 5 různých úrovní, každá funkce, podle tam 20.percentilu.

Jak již bylo uvedeno dříve, než procento z konve klesá s počtem měsíců, což naznačuje, že staří zákazníci jsou méně obtížné udržet

Tento bar děj naznačují, že vyšší celkové poplatky pro zákazníka je snížení konve procento. Což dává smysl, pokud si myslíte, že dlouhou dobu klienti budou mít vyšší “Celkový Náboj” a jak jsme viděli předtím, dlouhou dobu klienti mají nižší procento máselnice

Tento barplot je trochu více intuitivní a ukazuje, že vyšší měsíční poplatky mají tendenci mít vyšší máselnice procento.

modelování

Nyní, když máme lepší pochopení dat, začneme se připravovat na modelování, abychom předpovídali budoucí churn zákazníků.

Pojďme si rozdělit tento proces do kroků, v souladu s bezprostřední problémy řešíme:

  1. Jednání s Nerovnováhou
  2. Definovat naše algoritmy a Metriky
  3. Testování Algoritmů
  4. jak se Vypořádat s funkcí výběr
  5. Konečné výsledky

Jednání s Nerovnováhou ⚖️

Jako jsme viděli předtím, než naše závislá proměnná je nevyvážená. Máme mnoho alternativ, jak řešit tento problém:

  • Nad-vzorkování
  • Pod-vzorkování
  • Používání různých hmotnostních náklady
  • atd.

zde se budeme snažit pod, over-vzorkování a SMOTE techniku.

Podle Vzorku Vyrovnávání dat

V průběhu odběru vzorků vyrovnávání dat

Definování naše Algoritmy a Metriky

No, protože máme co do činění s klasifikací problém, tj. na konci dne můžeme předvídat pouze “Churn” nebo “Not Churn”, proto musíme zvolit algoritmus v této konkrétní “říši”. Že nám některé možnosti, jako například:

  • Naive-Bayes
  • Logistické Regrese
  • Rozhodovací Stromy (nebo Random Forest)
  • SVM
  • GBM

zvolit metriku, musíme porozumět problému. Například,

  • “mají falešně pozitivní nebo falešně negativní důsledky více škodlivé?”🤔

V našem případě nezdá být různé váhy pro falešně pozitivní nebo falešně negativní, proto použijeme Přesnost jako naše srovnání metrických.

testování našich algoritmů

nasadíme 5 algoritmů (naivní-Bayes, logistická regrese, náhodný Les, SVM a LightGBM). Budeme používat 10-cross fold validaci a spustit každý algoritmus 10 krát a vypočítat výsledky.

tuto metodiku zopakujeme pro všechna 3 data (vyvážená pomocí nedostatečného vzorkování, nadměrného vzorkování a SMOTE).

S výsledky z algoritmů jsme vytvořit jedinou Přesnost Datovém

Přesnost Datovém Struktura

Máme teď projekt boxplots pro každý Algoritmus a každý vyvážené dat

Boxplot Přesnosti pro 10-CV opakovat 10 krát

obrázku výše vyplývá, že obě Náhodné Lesy pro Over-vzorek Vyvážené údajů a UDEŘIL vyvážené prezentace dat nejlepší výsledky : 87% přesnost.

řešení výběru funkcí

Nyní, když máme algoritmy a vyvážená data, která vykazovala nejlepší výsledky, pokusme se zlepšit přesnost nebo zjednodušit algoritmus výběrem funkcí.

tak jsem se rozhodl pracovat s daty bilance SMOTE.

Pojďme použít varImp funkce vidět vlastnosti, které nejlépe reprezentují máselnice v random forest algoritmus

první čtyři funkce, zdálo docela intuitivní, s ohledem na vizualizace, které jsme viděli během EDA.

Takže vytvoříme další 2 datové části rámců, jedna s prvních 4 funkce a všechny nejvyšší funkce až Sreaming TV.

Nyní pojďme spustit náhodný les s 10-cv opakuje 10 krát.

Nyní pojďme vytvořit nový boxplot s přesností distribuce pro každý ze 3 datové části rámců.

Takže výsledky pro mid_features a úplné údaje se zdají být lepší. Pojďme otestovat, zda jsou výrazně odlišné

Takže statistický test zamítne nulovou hypotézu, takže přesnost distribuce z full_data a z mid_features_data jsou výrazně odlišné.

takže ukončíme tento výběr funkcí ve skutečnosti zachováním všech sloupců. Vzhledem k tomu, že odstraněním funkcí stále dochází k významné ztrátě přesnosti.

konečné výsledky

pojďme shrnout náš konečný Predikční model. Získali jsme průměrné přesnost 87%, pomocí UDEŘIL jako způsob, jak vyvážit dat a provádění opakované 10 cross-fold validaci pro 10 krát, pomocí Náhodných Lesů jako náš algoritmus.

Také jsme se zachytit některé zajímavé aspekty z našich zákaznických dat, jako jsou:

  • společnost se zdá být “ok”, s udržováním starých časů zákazníky. Energie musí být více zaměřena na implementaci strategií pro nové klienty.
  • meziměsíčně typ smlouvy mají větší churn rychlost i pro vysoké měsíční poplatky, ve srovnání s jinými typy smluv.

  • optická Vlákna mají vyšší víření sazby, než DSL pro klienty, kteří mají internetové služby.

  • Zatímco vláknová optika, mají vyšší víření sazby, ale také přináší vyšší Celkový Náboj počítá. Proto je důležité lepší vyšetřování, proč klienti nejsou spokojeni se službou optických vláken.

Ano, dokázali jsme to! Doufám, že jste si jízdu užili a jsem rád, že slyším vaše myšlenky.

Budoucí kroky

Jako připomínka je zde ještě spousta dalších věcí, které můžete udělat v tomto souboru, jako je:

  • Vyzkoušejte nové algoritmy
  • Optimalizovat nějaký tunning parametry uvidíme, jestli si můžete zlepšit přesnost.

ještě jednou díky!

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna.