Pobieranie prezentacji. Proszę czekać

Pobieranie prezentacji. Proszę czekać

Odkrywanie wzorców sekwencji Sformułowanie problemu Algorytm GSP.

Podobne prezentacje


Prezentacja na temat: "Odkrywanie wzorców sekwencji Sformułowanie problemu Algorytm GSP."— Zapis prezentacji:

1 Odkrywanie wzorców sekwencji Sformułowanie problemu Algorytm GSP

2 Eksploracja wzorców sekwencji Problem odkrywania wzorców sekwencji polega na analizie bazy danych zawierającej dane o zdarzeniach, które wystąpiły w określonym przedziale czasu w celu znalezienia zależności pomiędzy występowaniem określonych zdarzeń w czasie Przykłady: –klient, który wypożyczył tydzień temu film Gwiezdne Wojny, w ciągi tygodnia wypożyczy Imperium Kontratakuje, a następnie, w kolejnym tygodniu Powrót Jedi –użytkownik, który odczytał strony A i B, przejdzie, w kolejnych krokach, do strony D, a następnie, strony F

3 Dziedziny zastosowań Analiza koszyka zakupów – znajdowanie wzorców zachowań klienckich Telekomunikacja – analiza alarmów (znajdowanie sekwencji zdarzeń prowadzących do wystąpienia awarii) Ubezpieczenia i bankowość – znajdowanie sekwencji zdarzeń określających profil klienta, wykrywanie fałszerstw Medycyna – analiza efektywności terapii WWW – analiza logów serwerów Web-owych Systemy baz danych – analiza logów serwerów baz danych

4 Klasyfikacja problemu – (1) Problem znajdowania zależności pomiędzy występowaniem określonych zdarzeń w czasie: –Znajdowanie wzorców sekwencji –Znajdowanie częstych epizodów w sekwencji –Analiza przebiegów czasowych

5 Klasyfikacja problemu – (2) Znajdowanie wzorców sekwencji – dana jest baza danych sekwencji zdarzeń, opisanych danymi kategorycznymi, znajdź częste podsekwencje zdarzeń Znajdowanie częstych epizodów – dana jest sekwencja i klasa epizodów (klasa sekwencji zdarzeń), znajdź w zadanej sekwencji wszystkie częste epizody Analiza przebiegów czasowych – dana jest baza danych przebiegów czasowych (sekwencji zdarzeń opisanych danymi ciągłymi), znajdź przebiegi czasowe podobne do zadanego przebiegu, znajdź cykle w przebiegach czasowych, itp..

6 Definicje i pojęcia podstawowe (1) I={i 1, i 2,..., i m } – zbiór elementów Transakcja T: zbiór elementów, takich że T I Sekwencja S: uporządkowana lista (T 1, T 2,..., T n ), gdzie T i jest zbiorem elementów, nazywanym wyrazem sekwencji S Wyraz T i sekwencji S wspiera element x I, jeżeli x T i Wyraz T i sekwencji S wspiera zbiór X, jeżeli T i wspiera każdy element x X

7 Definicje i pojęcia podstawowe (2) Zbiór X, którego wsparcie jest większe lub równe od zadanej minimalnej wartości progowej minsup nazywamy zbiorem częstym Długością sekwencji S, length(S) nazywać będziemy liczbę wyrazów w S Sekwencję o długości k nazywać będziemy k-sekwencją Rozmiarem sekwencji S, size(S), nazywać będziemy liczbę wystąpień instancji elementów w S Przykładowo: Niech S = ((7), (3 8), (3 5 6), (8)) length(S) = 4, size(S) = 8

8 Definicje i pojęcia podstawowe (3) Sekwencja S1 (a1, a2,..., an) zawiera się w innej sekwencji S2 (b1, b2,..., bm), jeżeli istnieją takie liczby naturalne i 1 < i 2 <... < i n, takie że: a1 bi 1, a2 bi 2,..., an bi n, Przykładowo: –sekwencja ((B), (D E)) zawiera się w ((A), (B), (C), (D A E), (C)), gdyż (B) (B), (D E) (D A E) –sekwencja ((A), (B)) nie zawiera się w sekwencji ((AB)) i vice versa Sekwencja S jest maksymalna, jeżeli nie zawiera ię w żadnej innej sekwencji

9 Definicje i pojęcia podstawowe (4) Sekwencja: –Transakcja wyraz sekwencji –Lista transakcji uporządkowana zgodnie z czasem realizacji transakcji sekwencja Bazą danych sekwencji DS. nazywać będziemy zbiór sekwencji, DS. = (S 1, S 2,..., S n ) Sekwencja S DS. wspiera sekwencję Q, jeżeli Q zawiera się w sekwencji S Wsparciem sekwencji S w bazie danych DS., sup(S, DS.), nazywać będziemy iloraz liczby sekwencji w DS., które wspierają S, do liczby wszystkich sekwencji w DS

10 Sformułowanie problemu Celem procesu odkrywania wzorców sekwencji jest znalezienie wszystkich sekwencji, których wsparcie w bazie danych sekwencji DS jest większe lub równe pewne minimalnej wartości progowej minsup Sekwencje, które spełniają powyższy warunek minimalnego wsparcia nazywamy sekwencjami częstymi lub wzorcami sekwencji Sekwencje częste, które są maksymalne, nazywać będziemy maksymalnymi wzorcami sekwencji

11 Przykład Recepty Analizując relację Recepty można w niej odkryć, zakładając próg minimalnego wsparcia minsup = 0,25 następujące cztery wzorce sekwencji: (1) ((30), (40)sup = 0,4 (2) ((30), (70) sup = 0,4 (3) ((30), (90)) sup = 0,4 (4) ((30), (40 70)) sup = 0,4 Wzorce (3) i (4) są maksymalnymi wzorcami sekwencji

12 Podstawowy algorytm odkrywania wzorców sekwencji (GSP) 1. Krok sortowania. Posortuj bazę danych D w taki sposób, aby uzyskać bazę danych sekwencji DS 2. Krok znajdowania zbiorów częstych. Znajdź wszystkie zbiory częste w DS 3. Krok transformacji. Przetransformuj każdy wyraz sekwencji w listę zbiorów częstych zawierających się w tym wyrazie 4. Krok sekwencjonowania. Znajdź wszystkie częste sekwencje 5. Krok maksymalizacji. Usuń wszystkie wzorce sekwencji, które nie są maksymalne

13 Krok sortowania Celem jest transformacja bazy danych D do bazy danych sekwencji DS (np. dla relacji Recepty posortuj wg. pacjentId i receptaId) W tablicy pominięto, dla uproszczenia, atrybuty receptaId zakładając, że nie jest ona przedmiotem eksploracji

14 Krok znajdowania zbiorów częstych Znajdź wszystkie częste 1-sekwencje (zbiory częste) – zastosuj np. algorytm Apriori Pamiętaj: wsparcie sekwencji jest mierzone liczba sekwencji a nie transakcji Dane: sekwencja 1: {(A B), (B C), (C D)} sekwencja 2: {(A B), (B C D)} wsparcie (A B) wynosi 100%

15 Krok transformacji Przetransformuj każdy wyraz sekwencji w listę zbiorów częstych zawierających się w tym wyrazie Przetransformuj każdy zbiór częsty w liczbę naturalną Dana jest oryginalna sekwencja postaci: {(D),(A),(B E C)} Sekwencja po transformacji: {{(A)},{(B), (C), (B C)}} Sekwencja po odwzorowaniu : {{1},{2, 3, 4}}

16 Krok sekwencjonowania – (1) Znajdź wszystkie częste sekwencje – zastosuj algorytm Apriori L 1 = {częste 1-sekwencje}; // wynik kroku 2 for (k=2; LS k-1 ; k++) do begin CS k = kandydaci wygenerowani z LS k-1 korzystając z funkcji apriori-generate for each sekwencji S DS do zwiększ licznik wszystkich kandydatów należących CS k zawierających się w S LS k = { S CS k | wsparcie (S, DS.) minsup} end wynik = zbiór maksymalnych sekwencji k LS k ;

17 Krok sekwencjonowania – (2) Funkcja Apriori-generate: insert into CS k select p.litemset 1,..., p.litemset k-1, q.litemset k-1 from LS k-1 p, LS k-1 q where p.litemset 1 = q. litemset 1,..., p.litemset k-2 = q. litemset k-2 ; for all k-sekwencji S CS k do for all (k-1)-sekwencji s zawierających się w S do if (s LS k-1 ) then usuń s ze zbioru CS k;

18 Funkcja Apriori-generate – (1) 1.Krok połączenia: Połącz LS k-1 z LS k-1 według następującego warunku połączeniowego - pierwszych k-2 wyrazów musi być identycznych 2.Porządek wyrazów nie jest przestrzegany i sekwencja może być łączona ze sobą (tzw. selfjoin) 3.Krok odcięcia: usuń wszystkie sekwencje kandydujące, które posiadają nie częste podsekwencje

19 Funkcja Apriori-generate – (2) Przykład:

20 Krok maksymalizacji Usuń wszystkie wzorce sekwencji, które nie są maksymalne for ( k = n; k > 1; k -) do for each k-sekwencji S k wynik do usuń ze zbioru wynik wszystkie sekwencje zawierające się w sekwencji S k End wynik = zbiór maksymalnych wzorców sekwencji

21 Przykład – (1) Rozważmy ponownie bazę danych sekwencji Recepta przedstawioną poniżej (wynik kroku sortowania) Załóżmy minsup = 0.40 (40%) Recepta

22 Przykład – (2) W kroku drugim znajdujemy wszystkie zbiory częste (1- sekwencje): LS 1 L 1 W nawiasie podana liczba sekwencji wspierających dany zbiór

23 Przykład – (3) Transformacja bazy danych sekwencji do bazy danych sekwencji zawierających wyrazy składające się wyłącznie ze zbiorów częstych (eliminacja szumu)

24 Przykład – (4) CS 2 (kandydujące 2-sekwencje) LS 2 (częste 2-sekwencje)

25 Przykład – (5) CS 3 – zbiór kandydujących 3-sekwencji jest pusty, stąd LS 3 = Zbiór wzorców sekwencji jest następujący: (30), (40)wsparcie 0,4 (40%) (30), (70)wsparcie 0,4 (40%) (30), (90)wsparcie 0,4 (40%) (30), (40 70)wsparcie 0,4 (40%) Zbiór maksymalnych wzorców sekwencji jest następujący: (30), (90)wsparcie 0,4 (40%) (30), (40 70)wsparcie 0,4 (40%)


Pobierz ppt "Odkrywanie wzorców sekwencji Sformułowanie problemu Algorytm GSP."

Podobne prezentacje


Reklamy Google