Analiza i eksploracja danych

Podobne dokumenty
Data Mining Wykład 3. Algorytmy odkrywania binarnych reguł asocjacyjnych. Plan wykładu

Wprowadzenie Sformułowanie problemu Typy reguł asocjacyjnych Proces odkrywania reguł asocjacyjnych. Data Mining Wykład 2

Odkrywanie asocjacji

Metody eksploracji danych. Reguły asocjacyjne

INDUKOWANE REGUŁY DECYZYJNE ALORYTM APRIORI JAROSŁAW FIBICH

Systemy OLAP I. Krzysztof Dembczyński. Instytut Informatyki Zakład Inteligentnych Systemów Wspomagania Decyzji Politechnika Poznańska

Ewelina Dziura Krzysztof Maryański

Inżynieria biomedyczna

Algorytmy odkrywania binarnych reguł asocjacyjnych

Systemy OLAP I. Krzysztof Dembczyński. Instytut Informatyki Zakład Inteligentnych Systemów Wspomagania Decyzji Politechnika Poznańska

Odkrywanie asocjacji

METODY INŻYNIERII WIEDZY KNOWLEDGE ENGINEERING AND DATA MINING. EKSPLORACJA DANYCH Ćwiczenia. Adrian Horzyk. Akademia Górniczo-Hutnicza

Systemy Wspomagania Decyzji

Odkrywanie wzorców sekwencji

Systemy OLAP II. Krzysztof Dembczyński. Instytut Informatyki Zakład Inteligentnych Systemów Wspomagania Decyzji Politechnika Poznańska

Systemy baz danych i hurtowni danych

1. Odkrywanie asocjacji

Odkrywanie asocjacji. Cel. Geneza problemu analiza koszyka zakupów

Hurtownie danych. Wstęp. Architektura hurtowni danych. CO TO JEST HURTOWNIA DANYCH

Indeksy w bazach danych. Motywacje. Techniki indeksowania w eksploracji danych. Plan prezentacji. Dotychczasowe prace badawcze skupiały się na

Integracja technik eksploracji danych ]V\VWHPHP]DU]G]DQLDED]GDQ\FK QDSU]\NáDG]LH2UDFOHi Data Mining

Wielopoziomowe i wielowymiarowe reguły asocjacyjne

OLAP i hurtownie danych c.d.

Reguły asocjacyjne. Żródło: LaroseD.T., Discovering Knowledge in Data. An Introduction to Data Minig, John Wiley& Sons, Hoboken, New Jersey, 2005.


SAS OLAP Cube Studio Wprowadzenie

Algorytmy optymalizacji zapytań eksploracyjnych z wykorzystaniem materializowanej perspektywy eksploracyjnej

Krzysztof Kawa. empolis arvato. e mail: krzysztof.kawa@empolis.com

Odkrywanie reguł asocjacyjnych. Rapid Miner

Projektowanie baz danych

HURTOWNIE DANYCH I BUSINESS INTELLIGENCE

Metody Inżynierii Wiedzy

Reguły asocjacyjne, wykł. 11

Data Mining Wykład 1. Wprowadzenie do Eksploracji Danych. Prowadzący. Dr inż. Jacek Lewandowski

Krzysztof Dembczyński. Inteligentne Systemy Wspomagania Decyzji Studia magisterskie, semestr I Semestr letni 2007/08

Reguły asocjacyjne. 1. Uruchom system weka i wybierz aplikację Knowledge Flow.

Algorytm DIC. Dynamic Itemset Counting. Magdalena Przygórzewska Karolina Stanisławska Aleksander Wieczorek

Hurtownie danych i business intelligence. Plan na dziś : Wprowadzenie do przedmiotu

Hurtownie danych. Analiza zachowań użytkownika w Internecie. Ewa Kowalczuk, Piotr Śniegowski. Informatyka Wydział Informatyki Politechnika Poznańska

Odkrywanie reguł asocjacyjnych

Hurtownie danych i business intelligence. Plan na dziś : Wprowadzenie do przedmiotu

Odkrywanie wzorców sekwencji

data mining machine learning data science

Projektowanie hurtowni danych

Modele danych - wykład V. Zagadnienia. 1. Wprowadzenie 2. MOLAP modele danych 3. ROLAP modele danych 4. Podsumowanie 5. Zadanie fajne WPROWADZENIE

Wyszukiwanie reguł asocjacji i ich zastosowanie w internecie

Modele danych - wykład V

Eksploracja danych - wykład VIII

Hurtownie danych. 31 stycznia 2017

HURTOWNIE DANYCH Dzięki uprzejmości Dr. Jakuba Wróblewskiego

Eksploracja Danych. podstawy

Ćwiczenie 5. Metody eksploracji danych

1.7. Eksploracja danych: pogłębianie, przeszukiwanie i wyławianie

Reguły asocjacyjne w programie RapidMiner Michał Bereta

Specjalizacja magisterska Bazy danych

Proces odkrywania wiedzy z baz danych

Hurtownie danych. Przetwarzanie zapytań. ZAPYTANIA NA ZAPLECZU

Zalew danych skąd się biorą dane? są generowane przez banki, ubezpieczalnie, sieci handlowe, dane eksperymentalne, Web, tekst, e_handel

Cel przedmiotu. Wymagania wstępne w zakresie wiedzy, umiejętności i innych kompetencji 1 Język angielski 2 Inżynieria oprogramowania

Spis tre±ci. Przedmowa... Cz ± I

Inżynieria Wiedzy i Systemy Ekspertowe. Reguły asocjacyjne

Analiza danych i data mining.

Wprowadzenie do technologii Business Intelligence i hurtowni danych

Zastosowanie metod eksploracji danych Data Mining w badaniach ekonomicznych SAS Enterprise Miner. rok akademicki 2014/2015

Ewolucja systemów baz danych

Bazy danych. Plan wykładu. Zależności funkcyjne. Wykład 2: Relacyjny model danych - zależności funkcyjne. Podstawy SQL.

Hurtownie danych. Projektowanie hurtowni: modele wielowymiarowe. Modelowanie punktowe. Operacje OLAP na kostkach.

Informacje i materiały dotyczące wykładu będą publikowane na stronie internetowej wykładowcy, m.in. prezentacje z wykładów

Technologie baz danych

Co to jest Business Intelligence?

Hurtownie danych wykład 3

Hurtownie danych. Wprowadzenie do systemów typu Business Intelligence

Statystyka i eksploracja danych

PODSTAWY BAZ DANYCH. 19. Perspektywy baz danych. 2009/2010 Notatki do wykładu "Podstawy baz danych"

EKSPLORACJA DANYCH METODY INŻYNIERII WIEDZY KNOWLEDGE ENGINEERING AND DATA MINING. Adrian Horzyk. Akademia Górniczo-Hutnicza

KARTA PRZEDMIOTU. Hurtownie i eksploracja danych D1_5

Kostki OLAP i język MDX

Ćwiczenia z Zaawansowanych Systemów Baz Danych

Faza Określania Wymagań

Szybkość instynktu i rozsądek rozumu$

A C T A UNIVERSITATIS LODZIENSIS FOLIA OECONOMICA 183,2004. Sebastian Szamański, Ryszard Budziński

Metadane. Data Maining. - wykład VII. Paweł Skrobanek, C-3 pok. 323 pawel.skrobanek@pwr.wroc.pl oprac. Wrocław 2006

ZMODYFIKOWANY Szczegółowy opis przedmiotu zamówienia

REGU LY ASOCJACYJNE. Nguyen Hung Son. Wydzia l Matematyki, Informatyki i Mechaniki Uniwersytet Warszawski. 28.II i 6.III, 2008

Wprowadzenie do Hurtowni Danych. Mariusz Rafało

Algorytmy równoległe: ocena efektywności prostych algorytmów dla systemów wielokomputerowych

6. Zagadnienie parkowania ciężarówki.

Hurtownie danych - przegląd technologii

Bazy danych. Plan wykładu. Rodzaje baz. Rodzaje baz. Hurtownie danych. Cechy hurtowni danych. Wykład 14: Hurtownie danych

Eksploracja logów procesów. Process mining

SAS wybrane elementy. DATA MINING Część III. Seweryn Kowalski 2006

Metody Rozmyte i Algorytmy Ewolucyjne

Projektowanie hurtowni danych i modelowanie wielowymiarowe

Krakowska Akademia im. Andrzeja Frycza Modrzewskiego. Karta przedmiotu. obowiązuje studentów, którzy rozpoczęli studia w roku akademickim 2012/2013

REGU LY ASOCJACYJNE. Nguyen Hung Son. 25 lutego i 04 marca Wydzia l Matematyki, Informatyki i Mechaniki Uniwersytet Warszawski.

Proces i narzędzia analizy potencjału wybranych obszarów rynku farmaceutycznego

Elementy Modelowania Matematycznego Wykład 4 Regresja i dyskryminacja liniowa

Rola analityki danych w transformacji cyfrowej firmy

Transkrypt:

Krzysztof Dembczyński Instytut Informatyki Zakład Inteligentnych Systemów Wspomagania Decyzji Politechnika Poznańska Inteligentne Systemy Wspomagania Decyzji Studia magisterskie, semestr I Semestr letni 2007/08

Plan wykładu Systemy baz i hurtowni danych wprowadzenie do wykładu Modele danych i ewolucja systemów baz danych Projektowanie hurtowni danych i modelowanie wielowymiarowe Systemy OLAP Język MDX Proces ekstrakcji, transformacji i ładowania danych (Proces ETL)

Plan wykładu 1 Od hurtowni danych do eksploracji danych 2 Analityczne rozszerzenia systemów OLAP 3 Reguły Asocjacyjne 4 Algorytm Apriori 5 Odkrywanie sekwencji 6 Wybór interesujacych reguł asocjacyjnych 7 Podsumowanie

Plan wykładu 1 Od hurtowni danych do eksploracji danych 2 Analityczne rozszerzenia systemów OLAP 3 Reguły Asocjacyjne 4 Algorytm Apriori 5 Odkrywanie sekwencji 6 Wybór interesujacych reguł asocjacyjnych 7 Podsumowanie

Zastosowanie hurtowni danych: Przetwarzanie informacji: wydawanie zapytań, podstawowa analiza statystyczna, tworzenie raportów, wykresów itp., Przetwarzanie analityczne: podstawowe operacje OLAP, Zaawansowane przetwarzanie analityczne: rozszerzone operacje OLAP, Eksploracja danych: odkrywanie ukrytych i nietrywialnych wzorców, zwiazków w danych poprzez tworzenie modeli analitycznych; wizualizacja.

Przetwarzanie eksploracyjne na bieżaco (On-line Analytical Mining)

Plan wykładu 1 Od hurtowni danych do eksploracji danych 2 Analityczne rozszerzenia systemów OLAP 3 Reguły Asocjacyjne 4 Algorytm Apriori 5 Odkrywanie sekwencji 6 Wybór interesujacych reguł asocjacyjnych 7 Podsumowanie

Eksploracja hipotez Eksploracja hipotez w systemach OLAP polega na przegladaniu kostki danych i wyszukiwaniu w niej interesujacych informacji. Proces ten nie jest w żaden sposób wspierany, użytkownik formułuje hipotezy i sprawdza je w danych. Eksploracja odkrywcza Eksploracja odkrywcza w systemach OLAP polega na wspomaganiu przegladania kostki danych w celu wyszukiwania w niej interesujacych informacji. System wspomaga wybór najciekawszych wymiarów i podświetla interesujace wartości.

Eksploracja odkrywcza Sarawagi, S., Agrawal, R., Megiddo N.: Discovery-driven exploration of OLAP data cubes. Proc. of the Sixth Int. Conference on Extending Database Technology (EDBT), Valencia, Spain, March 1998 Sarawagi, S., Agrawal, R., Megiddo N.: IBM Research Report RJ 10102 (91918), January 1998 (http://www.almaden.ibm.com/software/quest/ Publications/papers/edbt98_ex_rj.pdf)

Poszukiwanie nieoczekiwanych wartości miar: SelfExp: reprezentuje nieoczekiwana wartość komórki ze względu na wartości innych komórek na tym samym poziomie agregacji, InExp: reprezentuje stopień zaskoczenia gdzieś poniżej danej komórki (w hierarchii wymiarów operacja drill down), PathExp: reprezentuje stopień zaskoczenia dla każdej możliwej ścieżki w dół dla danej komórki.

Eksploracja odkrywcza

Eksploracja odkrywcza

Eksploracja odkrywcza

Eksploracja odkrywcza

Eksploracja odkrywcza

Eksploracja odkrywcza

Eksploracja odkrywcza: y Wartość komórki, E(y) Wartość oczekiwana, R = y E(y) σ standaryzowane residuum (σ oznacza odchylenie standardowe), R τ wartość nieoczekiwana, E(y ijk ) = f (g(), g A (i), g B (j), g C (k), g AB (i, j), g BC (j, k), g AC (i, k)), SelfExp: wartość bezwzględna residuum z uwzględnieniem progu odcięcia, InExp: maksymalna wartość SelfExp w komórkach poniżej danej komórki, PathExp: maksymalna wartość SelfExp po wszystkich komórkach osiagalnych poprzez rozwijanie (drill down) danej ścieżki.

Plan wykładu 1 Od hurtowni danych do eksploracji danych 2 Analityczne rozszerzenia systemów OLAP 3 Reguły Asocjacyjne 4 Algorytm Apriori 5 Odkrywanie sekwencji 6 Wybór interesujacych reguł asocjacyjnych 7 Podsumowanie

Generowanie reguł asocjacyjnych jest jedna z głównych i najbardziej popularnych operacji w eksploracji danych, która pozwala na analizę ogromnych wolumenów danych.

Analiza koszyka zakupów Dla danej bazy danych transakcji konsumenckich, gdzie każda transakcja jest zbiorem produktów, znajdź grupę produktów, które sa często kupowane razem. Analiza koszyka zakupów: Wyciagana jest informacje o zachowaniach klientów, Odkryta informacja może posłużyć do odpowiedniego ustawienia produktów w sklepie, dodania nowych produktów do asortymentu, oraz do ustalenia, które produkty i w jaki sposób promować.

Zastosowanie analizy koszyka zakupów: Telekomunikacja (klient jest traktowany jako transakcja składajaca się z rozmów z innymi abonentami), Prognoza pogody (przedział czasowy jest transakcja składajac a się z zbiory zaobserwowanych zdarzeń pogodowych), Karty kredytowe, Usługi bankowe, Diagnostyka medyczna.

Reguły asocjacyjne wyrażaja, jak produkty/usługi powiazane sa ze soba i czy maja tendencje do wspólnego występowania: Jeżeli klient kupił chipsy, to jest prawdopodobne, ze również kupi piwo Reguły asocjacyjne sa proste w interpretacji!!!

Sformułowanie problemu: I = {i 1, i 2,..., i n } jest zbiorem produktów, Transakcja T jest zbiorem produktów takim, że T I, Baza danych D jest zbiorem transakcji, Transakcja T zawiera X I, jeżeli X T, Reguła asocjacyjna jest implikacja w postaci X Y, gdzie X, Y I.

Miary reguł asocjacyjnych: Wsparcie (ang. support) Zbiór produktów X ma wsparcie sup(x) = s w bazie danych D, jeżeli s% transakcji w D zawiera X, czyli: sup(x) = Card({T D : X T }). Card(D) Reguła asocjacyjna X Y ma wsparcie sup(x Y ) = s w bazie danych D, jeżeli s% transakcji w D zawiera X Y, czyli: sup(x Y ) = sup(x Y ) = Card({T D : X Y T }). Card(D)

Miary reguł asocjacyjnych: Zaufanie (ang. confidence) Reguła asocjacyjna X Y zachodzi w bazie danych D z zaufaniem conf (X Y ) = c, jeżeli c% transakcji w D, które zawieraja X, zawieraja również Y. conf (X Y ) = Card({T D : X Y T }) Card({T D : X T }) = sup(x Y ) sup(x)

Miary reguł asocjacyjnych: Wsparcie sup(x Y ) oznacza częstość występowania reguły w transakcjach w bazie danych. Duża wartość oznacza, że reguła dotyczy dużej części transakcji bazy danych: sup(x Y ) = P(X Y ) gdzie P oznacza prawdopodobieństwo. Zaufanie conf (X Y ) oznacza procent transakcji zawierajacych X, które również zawieraja Y. Jest to estymator prawdopodobieństwa warunkowego: conf (X Y ) = P(Y X) = P(X Y ) P(X) gdzie P oznacza prawdopodobieństwo.

Miary reguł asocjacyjnych: Użytkownik ustawia parametry reguł, którymi jest zainteresowany: minimalne wsparcie minsup minimalne zaufanie minconf Reguła pojawia się w wyniku końcowym, jeżeli zachodzi s minsup i c minconf.

Minimalne wsparcie: Miary reguł asocjacyjnych: duże niewiele reguł, które występuja bardzo często (reguły oczywiste, trywialne), małe dużo reguł, które występuja rzadko. Minimalne zaufanie: duże mało reguł, ale wszystkie prawie logicznie prawdziwe, małe dużo reguł, ale wiele z nich bardzo niepewnych. Typowe wartości: minsup 2%, 10%, minconf 70%, 90%.

Sformułowanie problemu: Znajdź wszystkie reguły, które maja wsparcie i zaufanie większe, od zadanych przez użytkownika, minimalnego wsparcia (minsup) i minimalnego zaufania (minconf). Example Transakcje Produkty 100 A, B, C 200 A, C 300 A, D 400 B, E, F Zadane parametry: minsup = 50%, minconf = 50%

Sformułowanie problemu: Znajdź wszystkie reguły, które maja wsparcie i zaufanie większe, od zadanych przez użytkownika, minimalnego wsparcia (minsup) i minimalnego zaufania (minconf). Example Transakcje Produkty 100 A, B, C 200 A, C 300 A, D 400 B, E, F Zadane parametry: minsup = 50%, minconf = 50% Reguły asocjacyjne: A C (sup = 50%, conf = 66%), C A (sup = 50%, conf = 100%).

Ogólny algorytm odkrywania reguł asocjacyjnych Znajdź wszystkie zbiory produktów L i = {I i1, I i2,..., I im }, L i I, dla których sup(l i ) minsup. Zbiór L i jest nazywany zbiorem częstym produktów. Wykorzystaj zbiory częste produktów to wygenerowania reguł asocjacyjnych Algorytmem Generowania Reguł.

Algorytm Generowania Reguł for each L i (zbiór częsty produktów) do for each SL i L i do if sup(l i ) sup(sl i ) minconf then stwórz regułę: SL i L i SL i o parametrach conf = sup(l i ) sup(sl i ) i sup = sup(l i )

Plan wykładu 1 Od hurtowni danych do eksploracji danych 2 Analityczne rozszerzenia systemów OLAP 3 Reguły Asocjacyjne 4 Algorytm Apriori 5 Odkrywanie sekwencji 6 Wybór interesujacych reguł asocjacyjnych 7 Podsumowanie

Algorytm Apriori Załóżmy, że wszystkie transakcje sa wewnętrznie posortowane zgodnie z porzadkiem leksykograficznym (pozwala to na zwiększenie efektywności algorytmu), L k oznacza zbiór częstych produktów o rozmiarze k (zbiór k-elementowy) zbiór częsty k-produktów, C k oznacza zbiór kandydatów, potencjalnych zbiorów częstych produktów, o rozmiarze k kandydat k-produktowy. Zauważmy, że jeżeli rozmiar zbioru zwiększa się, to wsparcie nie może rosnać.

Algorytm Apriori L 1 = {zbiór częsty 1-produktu}; for (k = 2;L k 1 ;k + +) do C k = apriori_gen(l k 1 ); for each transakcji t T do C t = {c C k : c t}; forall c C t do c.count + +; L k = {c C k : c.count minsup}; Odpowiedź = k L k;

Generacja Kandydatów Apriori (apriori_gen) INSERT INTO C k SELECT p.item 1, p.item 2,..., p.item k 1, q.item k 1 FROM L k 1 p, L k 1 q WHERE p.item 1 = q.item 1,... and p.item k 2 = q.item k 2 and p.item k 1 < q.item k 1 ; for all c C k do forall (k 1)-podzbiorów s c do if (s L k 1 ) then usuń c z C k ;

Apriori Candidate Generation dla danego L k, generuje C k+1 w dwóch krokach: Krok połaczenia: połacz L k1 z L k2, z warunkiem połaczenia takim, że pierwsze k 1 produktów jest takich samych i L k1 [k] < L k2 [k], Krok czyszczenia: usuń wszystkich kandydatów, których podzbiory nie sa zbiorami częstymi produktów.

Generowanie zbiorów częstych produktów Transakcje Produkty 100 1, 3, 4 200 2, 3, 5 300 1, 2, 3, 5 400 2, 5 Wygeneruj zbiory częste produktów z minsup = 50% = 2 transakcji. C 1 p 1 sup 1 2 2 3 3 3 4 1 5 3 L 1 p 1 sup 1 2 2 3 3 3 5 3

Generowanie zbiorów częstych produktów C 2 p 1 p 2 sup 1 2 1 1 3 2 1 5 1 2 3 2 2 5 3 3 5 2 C 3 p 1 p 2 p 3 sup 2 3 5 2 L 3 p 1 p 2 p 3 sup 2 3 5 2 C 4 = i L 4 = L 2 p 1 p 2 sup 1 3 2 2 3 2 2 5 3 3 5 2

Algorytm Apriori wykorzystuje własność monotoniczności. Własność monotoniczności Każdy podzbiór zbioru częstego produktów jest również zbiorem częstym, innymi słowami, jeżeli B jest zbiorem częstym oraz A B, to A jest również zbiorem częstym. Wniosek Jeżeli A nie jest zbiorem częstym, wtedy nie należy generować zbiorów produktów, które zawieraja A. Krok połaczenia i czyszczenie sa równoważne rozszerzaniu każdego zbioru produktów L k z każdym produktem w bazie danych i usuwaniu tych kandydatów z C k+1, których podzbiory (C k+1 C[k]) nie sa częste.

Jeżeli AD nie jest częsty, to nie należy generować zbiorów produktów, które zawieraja AD, tzn. ABD, ACD i ABCD nie sa także zbiorami częstymi produktów.

Odkrywanie reguł Dla zbioru częstego produktów {2, 3, 5}: 23 5 support = 2 confidence = 100% 25 3 support = 2 confidence = 66% 35 2 support = 2 confidence = 100% 2 35 support = 2 confidence = 66% 3 25 support = 2 confidence = 66% 5 23 support = 2 confidence = 66%

Zadanie Dla następujacej bazy danych: Transakcje Produkty 1 bread, milk 2 beer, milk, sugar 3 bread 4 bread, beer, milk 5 beer, milk, sugar przyjmij następujace wartości dla minsup i minconf: i wygeneruj reguły asocjacyjne. minsup = 30% minconf = 70%

Plan wykładu 1 Od hurtowni danych do eksploracji danych 2 Analityczne rozszerzenia systemów OLAP 3 Reguły Asocjacyjne 4 Algorytm Apriori 5 Odkrywanie sekwencji 6 Wybór interesujacych reguł asocjacyjnych 7 Podsumowanie

Odkrywanie sekwencji Odkrywanie sekwencji jest to odkrywanie często występujacych wzorców odnoszacych się do czasu lub innego rodzaju porzadku. Przykład Klient, który kupił telewizor, po pewnym czasie kupi magnetowid, itp. Zastosowania: Odkrywanie porzadku odwiedzania stron, Kolejności dokonywania zakupów, Cykl życia klienta sieci telekomunikacyjnej.

Sformułowanie problemu: I = {i 1, i 2,..., i n } jest zbiorem produktów, Transakcja T jest podzbiorem produktów T I, Sekwencja S jest lista podzbiorów produktów (S 1, S 2,..., S n ), gdzie S i I, Baza danych D jest zbiorem sekwencji, Sekwencja (A 1, A 2,..., A n ) zawiera się w sekwencji (B 1, B 2,..., B m ), jeżeli istnieja liczby naturalne i 1 < i 2 <... < i n, takie że: A 1 B i1, A 2 B i2,..., A n B in, Przykład: ({B}, {DE}) zawiera się w ({A}, {B}, {C}, {DAE}, {C}), ({A}, {B}) nie zawiera się w ({AB}) i na odwrót.

Sformułowanie problemu: Sekwencja dla klienta: transakcja zbiór produktów, lista transakcji dla konkretnego klienta uporzadkowana zgodnie z czasem sekwencja, Klient wspiera sekwencje S i, jeżeli S i zawiera się w sekwencji dla danego klienta, Wsparcie sekwencji S i to liczba klientów, którzy wspieraja S i, Długość sekwencji to liczba kolejnych podzbiorów produktów w niej zawartych (np. length(({b}, {DE})) = 2).

Sekwencje z minimalnym wsparciem nazywane sa częstymi sekwencjami, Wsparcie dla podzbioru produktów X: liczba klientów, którzy kupuja wszystkie produkty z X w jednej transakcji.

Sformułowanie problemu: Dla danej bazy danych D transakcji, znajdź najdłuższe sekwencje spośród wszystkich o minimalnym wsparciu podanym przez użytkownika.

Przykładowa bazy danych: Klient Data Produkty 1 1 A 1 2 A 2 1 A 2 2 B 2 3 C,E 3 1 A,E 4 1 A 4 2 C,D,E 4 3 A 5 1 A Przykładowe sekwencje: ({A},{A}): wsparcie dwóch klientów ({A},{C,E}): wsparcie dwóch klientów

Przykładowa bazy danych: Klient Data Produkty 1 1 A 1 2 A 2 1 A 2 2 B 2 3 C,E 3 1 A,E 4 1 A 4 2 C,D,E 4 3 A 5 1 A Przykładowe sekwencje: ({A},{A}): wsparcie dwóch klientów ({A},{C,E}): wsparcie dwóch klientów

Algorytm: Faza sortowania (według klientów i daty) Identyfikacja zbiorów częstych produktów (dla klientów) - sekwencji o długości 1, Faza transformacji - mapowanie każdej transakcji do zbioru wszystkich zbiorów częstych produktów zawartych w transakcji, Szukanie sekwencji - szukanie sekwencji algorytmem apriori, Faza najdłuższych sekwencji - usunięcie sekwencji będacymi podsekwencjami innych sekwencji.

Faza sortowania: uporzadkuj bazę danych D według klientów i daty transakcji. Celem tej fazy jest transformacja oryginalnej bazy danych do bazy danych sekwencji klientów. Klient Data Produkty 1 1 A 1 2 A 2 1 A 2 2 B 2 3 C,E 3 1 A,E 4 1 A 4 2 C,D,E 4 3 A 5 1 A Klient Produkty 1 ({A},{A}) 2 ({A},{B},{CE}) 3 ({AE}) 4 ({A},{CDE},{A}) 5 ({A})

Identyfikacja zbiorów częstych produktów: znajdź wszystkie częste sekwencje o długości 1 algorytmem Apriori. Uwaga: wsparciem jest liczba klientów, a nie transakcji. Klient Produkty 1 ({A},{A}) 2 ({A},{B},{CE}) 3 ({AE}) 4 ({A},{CDE},{A}) 5 ({A}) Wsparcie dla {A} jest 100%

Faza transformacji: mapuj każda transakcję do zbiorów częstych produktów zawartych w transakcji. Można wykorzystać kodowanie liczbami naturalnymi. Zbiory częste Kodowanie {A} 1 {B} 2 {C} 3 {BC} 4 Przykładowa transformacja: Transakcja: ({D}, {A}, {BEC}, {C}), Transformacja: ({A}, {{B}, {C}, {BC}}, {C}) Po mapowaniu: ({1}, {2, 3, 4}, {3}).

Szukanie sekwencji algorytmem Apriori L 1 = {częste sekwencje o długości 1}; //rezultat 2 fazy for (k = 2;L k 1 ;k + +) do C k = apriori_gen_seq(l k 1 ); for each klient-sekwencji k D do C t = {c C k : c k}; forall c C t do c.count + +; L k = {c C k : c.count minsup}; Odpowiedź = k L k;

Generowanie kandydatów dla sekwencji (apriori_gen_seq) INSERT INTO C k SELECT p.item 1, p.item 2,..., p.item k 1, q.item k 1 FROM L k 1 p, L k 1 q WHERE p.item 1 = q.item 1,... AND p.item k 2 = q.item k 2 ; for all c C k do forall (k 1)-podzbioru s c do if (s L k 1 ) then usuń c z C k ;

Wykorzystanie algorytmu Apriori w szukaniu sekwencji: Nie szukamy reguł, a jedynie zbiorów częstych, k 2 elementy zbioru częstego produktu należacego do L k 1 powinny być takie same w kroku łaczenia Uporzadkowanie leksykograficzne nie jest zachowane - można łaczyć sekwencje ze sama soba, Usuwanie kandydatów, których podkandydaci nie sa sekwencjami częstymi L 3 C 4 : łaczenie C 4 : usuwanie 123 1233 1234 1234 124 1243 1244 134 1344 234 2344

Faza najdłuższych sekwencji: usuń sekwencje będace podsekwencjami innych częstych sekwencji. for (k = n;k > 1;k ) do for each k-sekwencji s k S do for each k-sekwencji s i S, gdzie s < k do if s i zawiera się w s k then S = S - s i Answer = S;

Zadanie Dla poniższej bazy danych po fazie transformacji znajdź sekwencje o minimalnym wsparciu 40% Klient Produkty 1 ({1,5},{2},{3},{4}) 2 ({1},{2},{4},{3,5}) 3 ({1},{2},{3},{5}) 4 ({1},{3},{5}) 5 ({4},{5})

Plan wykładu 1 Od hurtowni danych do eksploracji danych 2 Analityczne rozszerzenia systemów OLAP 3 Reguły Asocjacyjne 4 Algorytm Apriori 5 Odkrywanie sekwencji 6 Wybór interesujacych reguł asocjacyjnych 7 Podsumowanie

Problem: Podczas generowania reguł asocjacyjnych, w jaki sposób system eksploracji danych jest w stanie zaprezentować reguły, które będa najbardziej interesujace dla użytkownika (Han). Duży zbiór danych może prowadzić do bardzo dużej liczby reguł asocjacyjnych, nawet przy odpowiednim doborze minimalnego zaufania i wsparcia, Silne reguły nie musza być koniecznie najbardziej interesujace, Tak naprawdę, tylko użytkownik może stwierdzić, czy dana reguła jest interesujaca, czy nie!

Przykład kawa nie kawa suma herbata 20 5 25 nie herbata 70 5 75 suma 90 10 100 Następujaca reguła asocjacyjna zostanie odkryta: herbata kawa (s = 20/100 = 20%, c = 20/25 = 80%) Reguła o dużym wsparciu i zaufaniu!

Przykład Prawdopodobieństwo, że klient kupi kawę jest 90%!!! klient, o którym wiadomo, że kupuje herbatę, z dużo mniejszym prawdopodobieństwem kupuje kawę, występuje negatywna korelacja pomiędzy kupowaniem herbaty i kawy, nie herbata kawa (s = 70%, c = 70/75 = 93%).

Miara dźwigni (lift) Dźwignia reguły asocjacyjnej X Y jest zdefiniowana następujaco: lift(x Y ) = P(Y X) P(Y ) = conf (X Y ) sup(y ) Jest to stosunek zaufania do tzw. zaufania oczekiwanego. Interpretacja: Jeżeli lift(x Y ) > 1, to X i Y sa pozytywnie skorelowane, lift(x Y ) < 1, to X i Y sa negatywnie skorelowane, lift(x Y ) = 1, to X i Y sa niezależne. W przykładzie: lift(herbata kawa) = 0.89, tzn. herbata i kawa sa negatywnie skorelowane.

Interpretacja matematyczna: Dwa zdarzenia A i B sa niezależne jeżeli P(A B) = P(A) P(B), w przeciwnym przypadku sa one skorelowane. Dźwignia może zostać przypisana do postaci: lift(a B) = conf (A B) sup(b) = P(A B) P(A) P(B).

Plan wykładu 1 Od hurtowni danych do eksploracji danych 2 Analityczne rozszerzenia systemów OLAP 3 Reguły Asocjacyjne 4 Algorytm Apriori 5 Odkrywanie sekwencji 6 Wybór interesujacych reguł asocjacyjnych 7 Podsumowanie

Podsumowanie Generowanie reguł asocjacyjnych jest jedna z głównych i najbardziej popularnych operacji w eksploracji danych, która pozwala na analizę ogromnych wolumenów danych. Algorytm Apriori, Uogólnienie algorytmu Apriori do odkrywania częstych sekwencji.

Plan wykładu Systemy baz i hurtowni danych wprowadzenie do wykładu Modele danych i ewolucja systemów baz danych Projektowanie hurtowni danych i modelowanie wielowymiarowe Systemy OLAP Język MDX Proces ekstrakcji, transformacji i ładowania danych (Proces ETL)