FP-Growth Adam Pieśkiewicz Kamil Niezręcki Krzysztof Grześkowiak Michał Kucal
Plan prezentacji 1. Zasada działania algorytmu 2. Implementacja 3. Wyniki 4. Podsumowanie
Zasada działania algorytmu 1. Odkrywanie zbiorów częstych a) Utworzenie FP-drzewa na podstawie skompresowanej bazy danych b) Znalezienie zbiorów częstych w procesie eksploracji FP-drzewa 2. Generacja reguł asocjacyjnych
Kompresja bazy danych 1. Znalezienie jednoelementowych zbiorów częstych w bazie danych 2. Usunięcie z każdej transakcji tych elementów, które nie są częste 3. Posortowanie elementów transakcji malejąco wg wsparcia
FP-drzewo - ukorzeniony, etykietowany w wierzchołkach graf acykliczny - korzeń – etykieta null, pozostałe wierzchołki to jednoelementowe zbiory częste wraz z licznikiem transakcji - tworzenie: wstawianie kolejnych transakcji ze skompresowanej bazy, przy czym jeśli transakcje współdzielą prefiks, następuje zwiększenie licznika transakcji w węzłach; w przeciwnym wypadku – dodawanie nowych węzłów
Przykład FP-drzewa
Eksploracja FP-drzewa FP-Growth(T, α) { //α = null at beginning if T contains a single path P then { for each combination β of nodes in path P generate pattern β + α with support = min(supports of all the nodes in β); } else { for each a i in the hTable of T { generate pattern β = a i + α with support = sup(a i ); construct β's conditional pattern base and use it to build β's conditional FP-tree Tree β ; if Tree β ø then FP-Growth(Tree β, β); }
Generacja reguł for each frequent pattern f with power > 1 { generate all nonempty and proper subsets of f; for each generated subset s of f { if sup(f) / sup(s) >= minconf output the rule s -> (f \ s) }
Bibliografia 1. FP-Growth approach for document clustering, M. Akbar (praca magisterska) 2. Algorytmy odkrywania binarnych reguł asocjacyjnych ( wykład 3. przedmiotu Eksploracja danych) 3. FP-tree, O. Kohonen (wykład)
Dziękujemy za uwagę