• David Chudán

RapidMiner, část 2 - asociační pravidla a shlukování

V prvním příspěvku jsem ukázal klasifikační úlohu v RapidMineru. Nyní přejdeme k deskriptivnímu data miningu a ukážeme si zpracování datasetu Titanic pomocí shlukování a asociačních pravidel.

Začněme shlukováním. RapidMiner v současné verzi nabízí celkem 13 algoritmů pro shlukování, od základního K-means, přes jeho různé modifikace, až po specifičtější algoritmy, jako například Flatten clustering či Support vector clustering. Nabízí rovněž operátor Cluster Model Visualiser pro grafickou reprezentaci clusterů.

V úloze využiji preprocessing hotový z klasifikační úlohy, pouze odstraním operátor Set role, který je pro shlukování zbytečný. Následně vyzkouším základní algoritmus pro shlukování, K-means. Tento algoritmus vyžaduje data v numerické podobě, proto je nutné přidat operátor Nominal to Numerical, který tento převod datových typů vyřeší. Na výstup ze shlukování je možné poslat jednak data (v terminologii RapidMineru example set), která obsahují nový sloupec "cluster" s hodnotou konkrétního shluku, do kterého byl daný řádek přiřazen. Různé možnosti vizualizace je potom možné zobrazit pokud se na výstup pošle vlastní vytvořený model, tedy výstupní port Clustering.cluster model. Zde je nejzajímavějším zobrazením Centroid table, kde jsou zobrazené normalizované hodnoty (díky převodu na numerický datový typ) v intervalu [0-1]. Na části výstupu například vidíme (Obr. 1), že ve shluku 2 jsou přiřazeny pasažéři, kteří s vysokou pravděpodobností cestu nepřežili, ostatně všichni v tomto clusteru jsou muži.

Obrázek 1 - Centroid table

Pokud přidáme operátor Cluster Model Visualiser, dostaneme další vizualizace, jako například Heat map vybraných kombinací atribut - hodnota (viz Obr. 2).

Obrázek 2 - heat map vybraných kombinací dvojic atribut - hodnota

Druhá z představených metod v tomto článku jsou asociační pravidla, kterým v RapidMineru není věnován příliš velký prostor. Je zde k dispozici pouze jediný algoritmus a to FP-Growth. Asociační pravidla obecně nedokážou pracovat s numerickými atributy, potřebují vygenerovat tzv. frequent itemsets, čili množiny dvojic atribut - hodnota, které se v datech vyskytují s nějakou minimální (nadefinovanou) četností. Z toho důvodu je nejdříve nutné atributy převést na polynomiální, následně binominální, teprve poté je možné aplikovat operátor FP-Growth. Následující výstup (Obr. 3) ukazuje vygenerované frequent itemsets o délce 4 (čili jsou použity právě 4 atributy při jejich generování).

Obrázek 3 - vygenerované frequent itemsets o délce 4

Hodnota Support ukazuje procentuální podíl výskytu v datech, čili první řádek nám říká, že v datech existuje 22,7 % záznamů, pro které platí, že se jedná o muže (resp. osoby s titulem Mr) ze třetí třídy, kteří cestovali samostatně a nalodili se v Southhamtonu.

To ovšem ještě nejsou vlastní asociační pravidla, ty získáme až přidáním operátoru Create Association Rules, který z frequent itemsets asociační pravidla vytvoří. Kolik výsledných pravidel bude je ovlivněno tzv. mírou zajímavosti asociačního pravidla, v možnostech parametrů daného operátoru pod volbou criterion. Při ponechání základní míry, confidence, která označuje sílu asociačního pravidla ve smyslu "pro kolik procent A platí B", a defaultní hodnoty minimální hodnoty confidence = 0,8 jsem získal 137 pravidel. Mnoho pravidel je ale nezajímavých, protože jsou vygenerovány všechny kombinace, které splňují dané kritérium. Z výsledných pravidel tedy vyfiltruji ty, které obsahují atribut Survived a dostáváme následujících 8 pravidel (Obr. 4)

Obrázek 4 - získaná asociační pravidla obsahující atribut Survived

Interpretujme například pravidlo č. 142: Pro ženy z první třídy platí, že přežili cestu Titanicem v 96,8 % případů (confidence). Přitom platí, že v celých datech je 10,2 % záznamů, kterým odpovídá že se jedná o ženy z první třídy, které cestu přežily (support).

Celý proces získání asociačních pravidel, tedy včetně preprocessingu, který je popsán v předcházejícím článku, je zobrazen na Obrázku 5.


Obrázek 5 - proces pro získání asociačních pravidel na datech Titanic

5 zobrazení
  • Twitter Clean Grey
  • LinkedIn Clean Grey