Zanim przedstawimy palgorytm odkrywania wielopoziomowych reguł asocjacyjnych wprowadzimy kilka podstawowych pojęć. Dany jest zbiór elementów I = {l1, l2, ..., lm} oraz taksonomia H elementów zbioru I. Taksonomia H jest ukorzenionym grafem acyklicznym, którego liście reprezentują elementy zbioru I, wierzchołki wewnętrzne reprezentują nazwane podzbiory zbioru I, natomiast łuki reprezentują relację zawierania się. Dowolny, nie pusty, podzbiór T zbioru I, nazywamy transakcją elementów lub, krótko, transakacją.
Bazą danych D nazywamy zbiór transakcji T, D = (T1, T2, ..., Tn), gdzie Ti zawiera się w I, i=1, 2, ..., n. Mówimy, że transakcja T wspiera element x należący do I, jeżeli (1) x należy do T, lub (2) x jest poprzednikiem dowolnego elementu, a należącego do T w taksonomii H. Transakcja T wspiera zbiór X, jeżeli T wspiera każdy element ze zbioru X.
Problem odkrywania wielopoziomowych reguł asocjacyjnych można zdefiniować następująco: dana jest baza danych transakcji T oraz taksonomia elementów H - należy znaleźć wszystkie wielopoziomowe reguły asocjacyjne, których wsparcie s jest większe lub równe pewnej minimalnej wartości wsparcia minsup, i których ufność c jest większa lub równa pewnej minimalnej wartości ufności minconf. Powyższe zdefiniowanie problemu odkrywania wielopoziomowych reguł asocjacyjnych zakłada, że próg minimalnego wsparcia jest jednakowy dla wszystkich reguł niezależnie od tego, czy reguła opisuje asocjacje występujące na najniższym poziomie abstrakcji, to jest, asocjacje pomiędzy elementami zbioru I, czy też na wyższym poziomie abstrakcji, to jest, pomiędzy nazwanymi grupami elementów.
Przedstawione podejście do odkrywania wielopoziomowych reguł asocjacyjnych nastręcza jeszcze jeden istotny problem. Zauważmy, że przedstawione w powyższym algorytmie odkrywania wielopoziomowych reguł asocjacyjnych podejście zakłada jednakowy próg minimalnego wsparcia dla wszystkich poziomów abstrakcji taksonomii elementów. Identyczny próg minimalnego wsparcia odnosi się do nazwanej grupy elementów "napoje"' jak i pojedynczego elementu "orzeszki ziemne firmy Felix w opakowaniu 50-gramowym"'. Ma to swoje istotne zalety. Po pierwsze, użytkownik podaje tylko jedną wartość minimalnego wsparcia i minimalnej ufności. Po drugie, upraszcza i optymalizuje procedurę znajdowania zbiorów częstych. Zauważmy bowiem, że dowolny wierzchołek wewnętrzny taksonomii jest nadzbiorem swoich następników - w fazie znajdowania zbiorów częstych można pominąć analizę zbiorów zawierających elementy, których poprzedniki w taksonomii elementów nie są zbiorami częstymi (algorytm Stratify).
Wymienione wyżej wady podejścia zakładającego jednakowy próg minimalnego wsparcia dla wszystkich poziomów taksonomii elementów stanowiły motywację opracowania podejścia, którego podstawowym założeniem jest zmniejszanie wartości minimalnego wsparcia dla kolejnych, idąc od korzenia, poziomów taksonomii. Algorytmy odkrywania wielopoziomowych reguł asocjacyjnych o zmiennym progu minimalnego wsparcia Multi_AssocRedSup. Punktem wyjścia przy konstrukcji algorytmów odkrywania wielopoziomowych reguł asocjacyjnych o zmiennym progu minimalnego wsparcia jest założenie, że dla każdego poziomu taksonomii elementów definiujemy niezależny próg minimalnego wsparcia. Im niższy poziom taksonomii, tym mniejszy próg minimalnego wsparcia.
Strategia niezależnych poziomów jest strategią wyczerpującą, która zakłada, że poziomy taksonomii są wzajemnie niezależne. Oznacza to, że w fazie generowania zbiorów kandydujących każdy wierzchołek taksonomii jest analizowany niezależnie od swoich poprzedników lub następników. Innymi słowy, wszystkie wierzchołki taksonomii reprezentują ten sam poziom abstrakcji, to jest, reprezentują niezależne elementy (podobnie jak w przypadku odkrywania binarnych reguł asocjacyjnych). W konsekwencji, strategia niezależnych poziomów analizuje wsparcie każdego zbioru kandydującego niezależnie od tego, czy jego poprzednik w taksonomii elementów jest zbiorem częstym czy też nie. Niestety, prowadzi to do analizy wielu zbiorów kandydujących, które z definicji nie są zbiorami częstymi.
Strategia krzyżowej filtracji zbioru k-elementowego zakłada, że analizie poddawane są tylko te zbiory kandydujące, których elementy są następnikami zbiorów częstych k-elementowych. Przykładowo, jeżeli zbiór „piwo, pieczywo” jest zbiorem częstym, to zbiorami kandydującymi poddawanymi analizie są, na przykład, zbiory „piwo_żywiec, bułki_kajzerki” lub „piwo_lech, rogale”. Ta strategia, z kolei, prowadzi do automatycznego odrzucenia wielu interesujących częstych zbiorów kandydujących, takich, dla których poprzedniki elementów należących do tych zbiorów nie są częste. Przykładowo, załóżmy, że wsparcie nazwanej grupy elementów „piwo_żywiec”, występującej na i-tym poziomie taksonomii, jest większe od prógu minimalnego wsparcia zdefiniowanego dla tego poziomu taksonomii, natomiast wsparcie nazwanej grupy elementów "piwo"', występującej na i-1-tym poziomie taksonomii, jest mniejsze aniżeli próg minimalnego wsparcia dla poziomu i-1 taksonomii. Strategia krzyżowej filtracji zbioru k-elementowego automatycznie odrzuci zbiór częsty „piwo_żywiec, art. higieny”, który może być zbiorem częstym.
Strategia krzyżowej filtracji pojedynczego elementu jest próbą kompromisu pomiędzy wspomnianymi wcześniej strategiami przeszukiwania przestrzeni zbiorów kandydujących. Zbiór kandydujący jest analizowany na i-tym poziomie jeżeli jego poprzednik na poziomie i-1 jest zbiorem częstym. Innymi słowy, jeżeli zbiór x na poziomie i jest częsty, to analizie są poddawane jego następniki. Przykładowo, jeżeli zbiór „piwo” nie jest częsty, to w dalszej analizie pomija się zbiory „piwo_żywiec" oraz „piwo_lech”. Strategia ta posiada jednak podobną wadę jak strategia krzyżowej filtracji zbioru k-elementowego, to jest, może ona prowadzić do automatycznego odrzucenia interesujących częstych zbiorów kandydujących, takich, dla których poprzedniki elementów należących do tych zbiorów nie są częste. Próbą rozwiąania tego problemu było zaproponowanie zmodyfikowanej wersji strategii krzyżowej filtracji pojedynczego elementu, nazwanej kontrolowaną strategią krzyżowej filtracji pojedynczego elementu (ang. controlled level-cross filtering strategy by single item).
Pozostała nam jeszcze jedna klasa reguł asocjacyjnych, rozpatrywanych w kontekście wymiarowości przetwarzanych danych. Aby przybliżyć pojęcie analizy wielowymiarowej, rozważmy, dla przykładu, problem analizy i generowania raportów opisujących sprzedaż wina w sieci supermarketów. Załóżmy, że sprzedaż wina jest mierzona ilością butelek sprzedanych w określonym przedziale czasu. Miarą analizy jest zatem ilość sprzedanych butelek wina. Wartość tej miary jest, najczęściej, funkcją następujących „wymiarów” analizy: czasu, rodzaju wina oraz oddziału supermarketu. Może się zatem zdarzyć, że różne wymiary analizy będą posiadały tą samą dziedzinę wartości. Na przykład, dla wymiarów „adres supermarketu” i „adres klienta”, dziedziną wartości będzie zbiór adresów reprezentowanych przez łańcuchy znaków. Reguła może być zatem wielowymiarowa nawet, jeżeli dane występujące w regule reprezentują tę samą dziedzinę wartości.
Wielowymiarową regułą asocjacyjną nazywamy regułę, w której dane w niej występujące reprezentują różne dziedziny wartości. Atrybuty (wymiary) mogą być dwojakiego rodzaju ciągłe (ilościowe) lub kategoryczne (nominalne). Reguły wielowymiarowe określają współwystępowanie wartości danych ciągłych i/lub kategorycznych.
Dla zilustrowania wielowymiarowych reguł asocjacyjnych rozważmy przykład umieszczony na slajdzie. Dana jest baza danych sondażowych przedstawiających wyniki głosowania określonych osób, o określonych parametrach i określonej partii politycznej. Przykładowo osoba o identyfikatorze 100, lat 44, dochodzie 30 000, stan cywilny żonaty – głosował na partię A. W prezentowanej bazie danych można przedstawić następujące otrzymane reguły wielowymiarowe postaci:
<Wiek: 44..55> i <Stan_cywilny: żonaty> -> <Partia: A> sup = 50%, conf = 100%
<Status_cywilny: kawaler> -> <Partia: A>sup = 33%, conf = 66,6%
Drugim problemem są brakujące dane w bazie danych czyli wartości puste (null values), w tym wypadku przyjmujemy dwie strategie. Albo pomijamy rekordy zawierające brakujące dane, albo próbujemy uzupełnić brakujące dane.
Jeżeli decydujemy się na uzupełnienie danych musimy przyjąć założenie o świecie otwartym lub zamkniętym. W przypadku założenia o świecie otwartym zakładamy, że dane mogą przyjąć dowolne wartości. W drugim przypadku, zakładamy że wartości jakie przyjmuje atrybut są atrybutami występującymi w bazie danych. W takim przypadku możemy wykorzystać algorytm znajdowania zależności funkcyjnych w bazie danych. Korzystając z wiedzy z odkrytych zależności funkcyjnych możemy uzupełnić brakujące dane.
Załóżmy, że zastosujemy algorytm Apriori w celu znalezienia wszystkich zbiorów częstych i reguł asocjacyjnych. Rozpoczynamy od listy wszystkich produktów (C1). Dla każdego produktu obliczamy wsparcie określonego produktu. Dzięki temu znajdujemy wszystkie zbiory częste 1-elementowe zaznaczone na slajdzie L1. Do L1 należą zbiory częste {1,2,4,5,6,8,9}. Następnie w oparciu o L1 obliczamy wszystkie zbiory kandydujące 2-elementowe (C2). Ponownie obliczamy wsparcie dla każdego zbioru kandydującego usuwamy wszystkie zbiory kandydujące, które nie spełniają progu minimalnego wsparcia oraz usuwamy wszystkie te zbiory kandydujące, które zawierają podzbiory, które nie są częste. W konsekwencji otrzymujemy L2 – zbiory częste 2-elementowe przedstawione na slajdzie. W naszym przykładzie wsparcie zbiorów częstych jest dla ułatwienia liczone liczbą transakcji wspierających dany zbiór.
Przykładowo dla atrybutu dochód rozważanym wcześniej przez nas w przykładzie możemy zdefiniować następującą hierarchię atrybutu. Możemy założyć, że przedziały wartości [10-19] oraz [20-29] są przedziałami oznaczającymi niski dochód, przedziały [30-39],[40-49] będzie oznaczał dochód średni, natomiast przedział np.. [50-59] będzie oznaczał dochód wysoki. Przykładową wielopoziomową, wielowymiarową regułą asocjacyjną może być reguła następującej postaci: Jeżeli adres_zamieszkania = „miasto” i dochód = „średni” to preferencja_polityczna = „demokraci”.
Z podanej reguły możemy wnioskować: „Kto lubi herbatę, najczęściej, lubi również kawę”. Otrzymana reguła ma duże wsparcie oraz wysoką ufność. Jednak analizując przedstawioną na poprzednim slajdzie tabelę, dochodzimy do następującej konkluzji: przedstawiona reguła posiada wsparcie 20%, jest to o tyle zaskakujące, że aż 90% ankietowanych deklaruje się jako zwolennicy kawy. Skąd różnica wartości wsparcia reguły na poziomie 20% i deklarowanej preferencji do kawy 90% ankietowanych. Jeżeli przyjrzymy się tabeli ponownie, dojdziemy do wniosku, że ludzie, którzy lubią herbatę najczęściej nie lubią kawy. Istnieje negatywna korelacja pomiędzy preferencją „lubię herbatę” i „lubię kawę”. Gdybyśmy wygenerowali regułę przeciwną: ‘Ci, którzy nie lubią herbaty, ale lubią kawę” ma wsparcie 70% oraz ufność 93%.
Miara Lift jest miarą korelacji pomiędzy poprzednikiem i następnikiem reguły asocjacyjnej. Jeżeli wartość miary Lift wynosi 1 oznacza, że zdarzenia reprezentujące poprzednik reguły i następnik reguły są niezależne. Jeżeli wartość miary Lift < 1 oznacza iż zdarzenia reprezentujące poprzednik i następnik reguły są skorelowane negatywnie, wówczas należałoby rozważać regułę przeciwną. Jeżeli wartość miary Lift > 1 oznacza to, że zdarzenia reprezentujące poprzednik i następnik reguły są skorelowane pozytywnie. Wracając do przykładu ‘kto lubi herbatę lubi również kawę’ wartość miary Lift wynosi 0.89, stąd wiemy, że zdarzenia są skorelowane negatywnie, skąd możemy wnioskować, że prawdopodobnie reguła przeciwna ‘Kto nie lubi herbaty najczęściej lubi kawę”, będzie regułą asocjacyjną o większym wsparciu i większej ufności niż oryginalna rozpatrywana reguła.