Churning zákazníků: jak je identifikovat, aby je udržel

Každá společnost musí udržet své zákazníky, aby mohla prosperovat. Stále jsou zákazníci vždy připraveni odejít. V závislosti na rizikovém profilu zákazníka to může být více či méně závažné. Jeden by ale raději nechal všechny své zákazníky, než aby je viděl odcházet. Než si však tyto zákazníky dokážeme udržet, musíme je identifikovat. A tady přichází analytika.

V dnešním světě je zaznamenána každá interakce se službou - ať už se přihlašujete na web, nebo jste poslouchali píseň atd. Představuje obrovské množství dat - což vyvolává problém, jak je ukládat. Jakmile je však tento problém vyřešen, může také představovat určitou skutečnou hodnotu pro společnost, protože obsahuje spoustu informací o chování zákazníka. V tomto příspěvku na blogu představíme jeden z více způsobů, jak tyto informace použít, abychom předpovídali odchod zákazníků.

Porozumění víření zákazníků

Zákaznické víření je přesně to, co jsme uvedli ve výše uvedených odstavcích. Churning zákazníků je skutečnost, že zákazníci opustí službu. Někteří by se mohli obrátit na konkurenta, jiní by už o službu neměli zájem.

V závislosti na rizikovém profilu těchto zákazníků nemusí být na začátku příliš závažné. Z dlouhodobého hlediska by však mohlo být nebezpečné, pokud by se jejich počet zvýšil. Proto bychom - jako tvůrci rozhodnutí u poskytovatele služeb pro streamování hudby - chtěli identifikovat tyto potenciální mlýny, abychom se pokusili zabránit jim v odchodu.

Nejprve se podíváme na to, co máme v obchodě, jaká data máme a jak nám to pomůže vyřešit tento problém. Další částí je vybrat nejlepší model pro zodpovězení našich otázek - a proto musíme definovat, co myslíme „nejlepším“ modelem. Jakmile máme náš model, nasadíme jej ve větším měřítku, abychom dosáhli významných výsledků. Díky těmto výsledkům budeme konečně schopni podniknout kroky, abychom snížili míru odlivu našich klientů.

Jaká data máme k dispozici

Nejprve začneme s analýzou dat, která máme.

Celý dataset je souborem json o velikosti 12 Gb, který lze zpracovat pouze pomocí konkrétního nástroje, jako je Spark a distribuované výpočty v klastru. Abychom plně porozuměli našim datům, nejprve se podíváme na podmnožinu tohoto datasetu - datový soubor 128Mb - který lze zpracovat pomocí běžnějších nástrojů. Provedeme průzkumnou analýzu a pokusíme se identifikovat relevantní proměnné pro predikci zákazníků, kteří opustí službu.

Nejprve musíme načíst náš dataset.

Pak můžeme použít rychlý přehled dat uložených v našem datovém souboru.

Zatímco některá jména proměnných jsou docela zřejmá - například umělec nebo pohlaví - ne všechny jsou. Například sloupec „stránka“ představuje interakce uživatele se službou - ať už se uživateli líbí nebo nelíbí píseň, nebo zda například opustí službu. Tento sloupec bude nejužitečnější, protože nám umožňuje identifikovat vířící zákazníky a protože nám dává informace o frekvenci a typu interakcí mezi uživatelem a službou - skutečně bychom mohli předpokládat, že uživatel se spoustou interakcí je spíše spokojený a nepravděpodobný odchod.

Podívejme se nyní podrobněji na údaje.

Nejprve musíme identifikovat uživatele, kteří opustili službu - což lze provést pomocí hodnoty „Cancellation Confirmation“ ve sloupci „page“.

Nyní můžeme hledat vysvětlení těchto kanalizací a jak je můžeme vysvětlit. Identifikovali jsme 7 funkcí, o nichž se domníváme, že mohou vysvětlit, proč zákazníci opouštějí službu. Zákazníky jsme rozdělili do dvou skupin - toho, kdo opustil službu, a ostatních -, abychom našli rozdíly, které by vysvětlovaly churn.

1. Interakce se službou

První proměnnou, kterou zkoumáme, byly interakce mezi uživateli a jejich službami - proměnná „page“. Pro každou interakci jsme použili boxploty k představení chování zákazníků. Použili jsme boxploty, protože to pomáhá vizualizovat minimum, kvartily a maximum pro danou distribuci.

Z těchto boxplotů vidíme významné rozdíly mezi těmito dvěma skupinami v následujících interakcích:

- Přidat přítele

- Přidat do seznamu skladeb

- Pomoc

- Domov

- Odhlásit se

- NextSong

- Palec nahoru

Tyto interakce - s výjimkou interakce s odhlášením - mohou být spojeny se zákazníky, které vylepšují jejich profil, takže můžeme předpokládat, že jsou se službou spokojeni.

2. Pohlaví zákazníků

Vypadá to, že muži aa trochu častěji odejdou než ženy.

3. Průměrná doba přehrávání hudby

Poměr mezi celkovou dobou přehrávání hudby je přibližně 5,3, zatímco poměr počtu lidí je 3,3 ve prospěch zákazníka, který zůstal ve službě. Ve skutečnosti je celkem zřejmé, že kdykoli uživatel poslouchá spoustu hudby, znamená to, že je službou spokojen, takže je nepravděpodobné, že přestane.

4. Placený účet vs. účet zdarma

Je to reprezentace poslední známé úrovně - což znamená buď naposledy, kdy interagovali se službou, nebo kdykoli opustili službu.

Vypadá to, že placení uživatelé pravděpodobně opustí více než uživatelé zdarma - protože například mohli najít nejlevnějšího konkurenta. S tímto číslem bychom však měli být opatrní. Je skutečně možné, že nešťastný placený zákazník se rozhodl nejprve zrušit svou službu před zrušením - což by znamenalo, že bezplatné účty jsou nadhodnoceny. Přesto je to informace, která by měla být v našem modelu uchována. Identifikace zákazníka, který sníží kvalitu svých služeb, může být dokonce předmětem jiné studie a způsobem, jak vylepšit náš model.

5. Časové proměnné: počet dní od registrace, počet dní jako bezplatný nebo placený zákazník

Nakonec se podíváme na časovou proměnnou ts. Tím jsme dokázali extrahovat 3 další proměnné: počet dní od registrace, počet dní jako bezplatný zákazník a počet dní jako placený zákazník. Boxplot těchto proměnných nám ukazuje, že jsou skutečně pro náš model relevantní.

Počet dní od registrace:

Je zřejmé, že čím déle zůstanete, tím šťastnější jste se službou a čím méně je pravděpodobné, že odejdete.

Počet dní jako placený uživatel:

Pokud za službu stále platíte, pravděpodobně to znamená, že jste s ní spokojeni a je nepravděpodobné, že byste přestali.

Počet dní jako bezplatný uživatel:

Tentokrát je rozdíl mezi oběma skupinami méně důležitý. Pokud však člověk zůstane déle, pravděpodobně to znamená, že je šťastný a je nepravděpodobné, že přestane.

Nyní, když jsme našli vysvětlující proměnné, můžeme se podívat, do kterého modelu bychom měli použít.

Který model je nejlepší

Než se ponoříme do podrobností procesu modelování, měli bychom si nejprve položit otázku, jak můžeme vyhodnotit kvalitu našich modelů.

Cílem naší studie je být schopen identifikovat zákazníka, který bude pravděpodobně vyburcován. Prvním krokem by bylo být schopen identifikovat zákazníky, kteří v naší datové sadě přešlapovali - metrika přesnosti vypadá jako dobrý kandidát.

Přesto bychom mohli identifikovat všechny zákazníky jako přepracované zákazníky, abychom jim neunikli - ale to opravdu chceme?

Připomeňme si, že chceme identifikovat uživatele s přepětím, abychom mohli podniknout nějaké kroky - například poskytnout jim pobídky nebo slevy, abychom jim zabránili v odchodu. Pokud bychom měli identifikovat každého uživatele jako potenciálního uživatele s churnedem, akce, které bychom mohli udělat, by stálo hodně. Měl bych se tedy starat o stažení z trhu - to nemá za cíl identifikovat věrné zákazníky jako potencionální zákazníky.

Proto jsme se rozhodli použít F1 ​​skóre jako naši metriku dobroty - protože jde o rovnováhu mezi přesností a skóre zpětného vyvolání.

Nyní můžeme přistoupit k procesu modelování.

Rozhodli jsme se porovnat 3 různé modely: logistický regresní model, náhodný model klasifikátoru domén a model zvyšující gradient. Rovněž jsme se pokusili optimalizovat parametry regresního modelu a náhodného klasifikátoru domén pomocí procesu křížové validace.

To vše nám přineslo následující výsledky:

Nakonec to byl náhodný klasifikátor lesů, který se podle skóre F1 ukázal jako nejlepší model pro náš úkol.

Můžeme se také podívat na důležitost vybraných funkcí:

Nejdůležitější vlastností je tedy počet dní od registrace - což je celkem logické - a další je počet dní jako bezplatný zákazník a počet dní jako placený zákazník. Stále bychom se mohli chtít ponořit do podrobností o těchto dvou, protože zákazníci snižují kvalitu svých služeb.

Na druhé straně to vypadá, že úroveň a pohlaví nejsou pro náš model příliš užitečné. U genderové proměnné jsme viděli, že rozdíl mezi muži a ženami byl malý, přesto jsme to však udrželi jen pro případ. U proměnné level jsme si mohli myslet, že informace již jsou v proměnných týkajících se počtu dní jako bezplatný nebo placený zákazník.

Nyní je posledním krokem naší studie nasazení modelu na úplný dataset.

A co celý dataset

Nebudeme opakovat předchozí kroky funkčního inženýrství a budování našeho modelu. Podíváme se přímo na výsledky.

Na našem úplném datovém souboru je skóre F1 našeho náhodného klasifikátoru doménových struktur 0,82 - a zlepšilo se ve srovnání se skóre s mini datovým souborem.

Přibližně 40% zákazníků s vířením bylo správně identifikováno, ale pouze 3% zákazníků, kteří neodcházeli, byli falešně označeni jako zákazníci s vířivkou.

Celkově tedy bylo sestavení modelu docela dobré, protože jsme dokázali identifikovat dobrý podíl zákazníků s přepadenou vodou a naše populace byla dobře zacílená.

Další krok: jaké kroky můžeme podniknout

Nyní, když máme model, který dokáže poměrně přesně identifikovat zákazníka, který pravděpodobně opustí službu, můžeme se zaměřit na kroky, které bychom mohli podniknout, abychom je udrželi v našem portfoliu.

Podle analýzy důležitosti funkcí je nejdůležitější čas, který uplynul od registrace. Mohli bychom tedy vytvořit systém odměn za to, že zákazník zůstane registrován delší dobu.

Mohli bychom také chtít zacílit na zákazníky zdarma. Mohli bychom jim poskytnout přístup k prémiovým možnostem zdarma, protože zůstávají déle registrovaní. Mohli by tedy být v pokušení stát se placenými zákazníky, nebo by jen mohli zůstat déle jako bezplatní zákazníci, aby mohli vyzkoušet další prémiovou možnost.

Doufám, že jste si tento příspěvek užili, stejně jako jsem si ho užil.

Společně vytváříme komplexní strojový pracovní proces učení, abychom identifikovali víření zákazníků ze služeb streamování hudby. Vzhledem k velikosti datového souboru jsme museli použít Spark - velký rámec pro analýzu dat. Mohli jsme použít různé funkce nebo různé modely, ale museli jsme také vzít v úvahu zdroje, které jsme měli.

Důležité je, že jsme byli schopni odpovědět na naši původní otázku - což by mělo být cílem každého modelu, který vytváříme.