Metody eksploracji danych
Reguły asocjacyjne
Analiza podobieństw i koszyka sklepowego
Analiza podobieństw jest badaniem atrybutów lub cech, które są
„powiązane ze sobą”.
Metody analizy podobieństw , znane również jako analiza koszyka sklepowego, szukają nieodkrytych powiązań pomiędzy tymi atrybutami, to znaczy szukają nieodkrytych reguł do ilościowego
określania relacji pomiędzy dwoma lub więcej atrybutami
Reguły asocjacyjne przyjmują postać:
Jeżeli poprzednik, to następnik razem z miarą wsparcia i dokładności (ufności) reguły
Analiza podobieństw i koszyka sklepowego - przykład
W supermarkecie sporządzono raport sprzedaży, z którego m.in. wynika, że w ostatni czwartek w nocy z 1000 klientów robiących zakupy 200 kupiło chleb, a z tych 200, którzy kupili chleb, 50 kupiło masło
Reguła asocjacyjna:
Jeżeli kupuje chleb, to kupuje masło
miarą wsparcia 5%
miara dokładności 25%
1000 50
200 50
Wsparcie i ufność reguły
Niech D oznacza zbiór transakcji, gdzie każda transakcja T z D reprezentuje zbiór artykułów z I.
Wsparcie (ang. support) s dla danej reguły asocjacyjnej A => B jest procentem transakcji w D, które zawierają A i B, tzn.
Ufność (ang. confidence) c dla danej reguły asocjacyjnej A => B jest miarą dokładności reguły, określoną jako procent transakcji zawierających A, które również zawierają B, tzn.
transakcji liczba
calkowita
B i A ych zawierajac transakcji
liczba B
A P
s
A liczbaliczbatransakcjitransakcjizawierajaczawierajacychychAAi B
P B A A P
B P
c |
Mocna reguła – reguła, dla której s i c są >= od pewnych, określonych wartości minimalnych.
Zbiory zdarzeń i zbiory częste
Zbiór zdarzeń jest zbiorem zawartym w I (np. {fasola, kabaczki} to 2-
elementowy zbiór zdarzeń, {brokuły, kukurydza, pomidory} to 3-elementowy zbiór zdarzeń).
Częstość zbioru zdarzeń jest liczbą transakcji zawierającym dany zbiór zdarzeń.
Zbiór częsty to zbiór zdarzeń, który występuje przynajmniej pewną minimalną liczbę razy, czyli z częstością ≥ Φ.
Zbiór częstych zbiorów zdarzeń o k elementach będziemy oznaczać przez Fk
• Mówimy, że transakcja t wspiera (ang.
supports) zbiór X wtedy i tylko wtedy gdy dla wszystkich elementów I k ∈X, I k ∈t (t zawiera co najmniej wszystkie elementy zbioru X).
• Wsparciem zbioru X nazywamy iloraz liczby
transakcji w T, które wspierają X do liczby
wszystkich transakcji w T.
Reguła asocjacyjna
• Regułą asocjacyjną nazywamy implikację postaci X⇒Y, gdzie X i Y są dowolnymi zbiorami elementów z ℑ i zachodzi X⊂ℑ, Y⊂ℑ i X∩Y=∅.
• Zbiór X nazywamy poprzednikiem reguły (ang.
body, antecedent), a zbiór Y następnikiem
reguły (ang. head, consequent).
• Z każdą regułą asocjacyjną są związane dwie wartości liczbowe opisujące jej „siłę” i
„dokładność”.
• Mówimy, że reguła X⇒Y ma wsparcie s (ang.
support), 0≤s≤1, jeżeli dokładnie s% transakcji w T wspiera X∪Y.
• Mówimy, że reguła X⇒Y ma ufność c (ang.
confidence), 0≤c≤1, jeżeli dokładnie c% transakcji
w T, które wspierają X, wspiera również Y.
Ogólny algorytm generowania reguł asocjacyjnych
• Ogólny algorytm generowania reguł asocjacyjnych, dla zadanej bazy danych transakcji T, ma następującą postać:
• Krok 1: Ogólny algorytm generowania reguł Asocjacyjnych
• Krok 2: Generowanie reguł ze zbiorów częstych
Krok 1: Ogólny algorytm generowania reguł asocjacyjnych
• 1. Utworzyć zbiory elementów Li={Ii1, Ii2, ..., Iim}, takie, że Li⊆ℑ, posiadające wsparcie support(Li)≥minsup.
• Zbiory Li są nazywane zbiorami częstymi (ang. large, frequent itemsets).
• 2. Na podstawie zbiorów częstych
znalezionych w kroku (1) wygenerować
wszystkie reguły asocjacyjne dla elementów
zbiorów częstych - zastosuj algorytm (krok 2->)
Krok 2: Generowanie reguł ze zbiorów częstych.
• 1. Dla każdego zbioru częstego Li znajdź wszystkie niepuste podzbiory subLi.
• 2. Dla każdego podzbioru subLi wygeneruj regułę postaci:
• subLi⇒(Li-subLi) jeżeli
support(Li)/support(subLi)≥minconf.
Ogólny algorytm generowania reguł asocjacyjnych
Algorytm (krok 1) składa się z dwóch kroków.
W pierwszym kroku znajdowane są zbiory częste, które reprezentują zbiory elementów występujących wspólnie w transakcjach.
Zakłada się przy tym, że interesujące są tylko te zbiory częste, których wsparcie w bazie danych jest większe, niż zadany próg wsparcia minsup.
W kroku drugim, na podstawie znalezionych
zbiorów częstych są generowane wszystkie reguły
asocjacyjne, których ufność jest większa niż
zadany próg ufności minconf.
przykład
• Załóżmy, że:
• minimalne wsparcie wynosi 30% (0.3), natomiast
• minimalna ufność 70%
(0.7).
W pierwszym kroku są znajdowane
zbiory częste 1-elementowe:
Funkcja apriori-gen generuje zbiory kandydujące 2-elementowe:
• Zbiór częsty 2-elementowy składa się z tych zbiorów częstych 2-
• elementowych, których wsparcie jest
większe niż 0.30
Funkcja apriori-gen generuje zbiory
kandydujące 3-elementowe
Na podstawie otrzymanych zbiorów częstych wygenerowano następujące reguły asocjacyjne
Zauważmy, że tylko cześć otrzymanych reguł spełnia warunki na minimalne wsparcie i minimalną ufność.