Případová studie použití datové analýzy na predikci platební kázně

Cílem studie je ohodnocení (rating) nových zákazníků na základě předchozího chování podobných subjektů. K tomuto účelu požijeme korelační analýzu, PCA (Principal Component Analysis) a některé z metod strojového učení. Kliknutím na grafy lze zobrazit kód, který byl použit k jeho vygenerování.

26. ledna 2015

Autor: Mgr. Jaroslav Vážný Rubrika: Blog

1. Vstupní data

Zdrojová data obsahují informace o fakturách jednotlivých zákazníků. Tato data je třeba agregovat a vytvořit tak statistický profil daného zákazníka, který použijeme při strojovém učení Jednotlivým zákazníkům je pak přiřazeno hodnocení v rozsahu 1 až 5 (1 nejlepší, 5 nejhorší) toto hodnocení se budeme snažit předpovídat pro zákazníky, pro které toto hodnocení neznáme.

Na začátku každé analýzy je vhodné data reprezentovat pomocí deskriptivní statistiky, případně data vizualizovat. Získáme tak představu o typech dat jejich rozsazích.

Predikce platební kázně (deskriptivní statistika) - Gauss Algorithmic

2. Korelační analýza

Velmi užitečná je také korelační analýza, která může odhalit jednoduché závislosti mezi daty. Je však stále nutné mít na paměti, že korelace není kauzalita a že vše se týká daného vzorku dat. Zde je například zřejmé, že znalost oblastí nám neposkytne žádné další informace.

Predikce platební kázně (korelace) - Gauss Algorithmic

3. Strojové učení a klasifikace nových dat

Na predikci hodnocení zákazníka použijeme metody učení s učitelem (Supervisored Learning Model). Obecné schéma tohoto přístupu je na následujícím obrázku. Ze Zdrojových dat a známých hodnocení (labels) vytvoříme model (predictive model), který následně použijeme pro nové zákazníky, pro které hodnocení neznáme.

Predikce platební kázně (schéma strojového učení) - Gauss Algorithmic

Supervised Learning overview. Zdroj: Scikit

Pro účely správného hodnocení naše modelu je třeba rozdělit data na minimálně dvě množiny (trénovací a testovací).

4.Vyhodnocení naučeného modelu

Obecně není příliš snadné pochopit jakým způsobem se učící algoritmus při klasifikaci řídí (obzvláště pokud mají vstupní data více dimenzí). Výjímku tvoří algoritmy založené na rozhodovacích stromech. Na následujících obrázku je vizualizace rozhodovacího stromu pro tento konkrétní případ. Na první řádku je podmínka, které je pro rozřazení použita, na druhém pak hodnota použité metriky (zde gini index) a na třetím řádku je počet afektovaných případů, případně konečné rozdělení, pokud jde o konečný list stromu.

Predikce platební kázně (vyhodnocení) - Gauss Algorithmic

Vyhodnocení modelu je netriviální problém. Používané metriky jsou Precision, Recall a takzvané F score. Následující obrázek objasňuje jejich význam. Precission je poměr správně vybraných hodnot a všech hodnot ve vzorku, tedy: kolik z vybraných hodnot je relevantních. Recall je pak poměr správně vybraných vzorků ke všech hodnotám, které měl algoritmus vybrat. Jinými slovy: kolik z relevantních hodnot je vybráno. F score je pak definováno jako kombinace obou těchto metrik: F = precision/(precision + recall).

Predikce platební kázně (precision) - Gauss Algorithmic

Následující report ukazuje tyto metriky pro náš případ pro jednotlivé kategorie hodnocení.

  precision recall f1-score support
1 1.00 1.00 1.00 266
2 1.00 1.00 1.00 105
3 1.00 1.00 1.00 51
4 0.98 1.00 0.99 60
5 1.00 0.99 0.99 73
avg / total 1.00 1.00 1.00 555

5. Aplikace naučeného modelu na nového zákazníka

Pro ilustraci aplikace si vytvoříme nového zákazníka, kterého algoritmus v procesu učení neviděl a aplikujeme na něho náš naučený algoritmus.

Hodnocení zákazníka naučeným algoritmem: [1], skutečné hodnocení zákazníka: [1]

Vzhledem k úspěšnosti našeho modelu není překvapivé, že model předpověděl hodnocení správně. Následující obrázek ukazuje zobrazení nového zákazníka do prostoru vstupních dat, redukovaného pomocí PCA do dvou dimenzí.

Predikce platební kázně (predikce) - Gauss Algorithmic

Sdílejte s přáteli
Anglicky