Eksploracja danych (data mining)
Transkrypt
Eksploracja danych (data mining)
Czym jest eksploracja danych? Eksploracja danych (data mining) Eksploracja danych oznacza wydobywanie wiedzy z dużych zbiorów danych. Eksploracja – badanie, przeszukiwanie; np. dziewiczych obszarów Afryki (Słownik poprawnej polszczyzny PWN 1976). Eksplorować – przemierzać jakiś teren w celach badawczych; eksplorować dziewiczą puszczę (jak wyżej) Cel eksploracji danych – wydobycie wiedzy z danych (ang. knowledge mining from data). Jeden z istotnych etapów w procesie odkrywania wiedzy w bazach danych Knowledge Discovery in Databases (KDD) – niekiedy rozumiany jest jako synonim KDD. Tadeusz Pankowski www.put.poznan.pl/~pankowsk (c) T. Pankowski, Eksploracja danych Eksploracja danych w procesie odkrywania wiedzy w bazach danych (KDD) 1. 2. 3. 4. 5. 6. 7. (c) T. Pankowski, Eksploracja danych 1 2 Eksploracja danych jako etap w procesie odkrywania wiedzy Czyszczenie danych (data cleaning) – usuwanie „zanieczyszczeń” i niespójności w danych. Integracja danych (data integration) – łączenie danych pochodzących z różnorodnych źródeł. Selekcja danych (data selection) – wybieranie tych danych z bazy danych, które są istotne dla zadań analizy. Transformacja danych (data transformation) – przekształcanie i konsolidowanie danych do postaci przydatnej dla eksploracji, na przykład ich sumowanie i/lub agregowanie (np. w hurtowni danych). Eksploracja danych (data mining) – stosowanie „inteligentnych” metod w celu odkrycia istotnych zależności zwanych wzorcami (patterns). Ocena wzorców (pattern evaluation) – identyfikacja naprawdę interesujących wzorców w oparciu o pewne miary ważności. Reprezentacja wiedzy (knowledge presentation) – przedstawienie odkrytej wiedzy użytkownikowi za pomocą technik wizualizacji i reprezentacji wiedzy. 3 Ocena i prezentacja Wiedza Wzorce Użytkownik Eksploracja Hurtownia danych danych Selekcja i transformacja Czyszczenie i integracja Bazy danych Pliki danych 4 Metody techniki eksploracji danych Znaczenie eksploracji danych 1. ¾ Eksploracja danych obejmuje szereg technik z różnych dyscyplin, takich jak: technologie baz danych statystyka uczenie maszynowe techniki obliczeń wielkiej skali rozpoznawanie wzorców sieci neuronowe wizualizacja danych wyszukiwanie informacji przetwarzanie obrazów i dźwięku analiza danych przestrzennych (c) T. Pankowski, Eksploracja danych 2. 3. (c) T. Pankowski, Eksploracja danych 5 2. 3. 4. Ogólny podział poszukiwanych wzorców w zadaniach eksploracji danych: • wzorce opisujące (deskrypcyjne) – charakteryzują ogólne właściwości danych w bazie danych, • wzorce przewidujące (predykcyjne) – na podstawie analizy aktualnych właściwości danych określają ich przyszłe właściwości. Użytkownik często nie wie, jaki rodzaj wzorców w zbiorze jego danych może być interesujący i może żądać jednoczesnego odkrywania różnych rodzajów wzorców. System eksploracji danych powinien być w stanie odkrywać wzorce różnego rodzaju i na różnych poziomach granulacji (tj. na różnych poziomach ogólności). System eksploracji danych powinien być w stanie wykorzystać wskazówki i wiedzę użytkownika co do rodzaju wzorców. (c) T. Pankowski, Eksploracja danych 6 Opis klas: charakteryzacja a dyskryminacja Funkcjonalność eksploracji danych rodzaje odkrywanych wzorców 1. Wynikiem eksploracji danych powinno być odkrycie interesującej wiedzy, regularności i uzyskanie informacji na wysokim poziomie ogólności, która może być prezentowana z różnych punktów widzenia. Odkryta wiedza powinna być użyteczna dla podejmowania decyzji, sterowania procesami, zarządzania informacją a także do udzielania odpowiedzi na różne zapytania. Eksploracja danych może być przeprowadzana na każdym rodzaju repozytorium danych: relacyjnych bazach danych, hurtowniach danych, bazach transakcji, plikach, sieci WWW, przestrzennych bazach danych, bazach multimedialnych, arkuszach kalkulacyjnych, strumieniach danych, itp. 1. 2. Dane są zwykle grupowane w klasy, np. komputery i drukarki (dla towarów), dobryKlient i słabyKlient (dla klientów), TAK i NIE dla grup uczniów chcących studiować i nie mających takich planów. Często może być interesujący opis klas. Opis taki może być zrealizowany jako: charakteryzacja klasy – opis wspólnych właściwości elementów tworzących klasę. Na przykład: wspólna charakterystyka klientów kupujących za więcej niż 20 000 PLN rocznie tworzy profil tej klasy klientów. Opis tego profilu maże być: osoba w wieku 40-50 lat, o stałym zatrudnieniu, posługująca się kartą kredytową. dyskryminacja klas – polega na porównaniu rozróżniającym elementy klasy od innych klas. Koncentrujemy się na cechach wyróżniających opisywaną klasę. Przykład: 80 % osób z klasy dobryKlient jest w wieku 30-40 lat i ma wyższe wykształcenie, a 60% osób z klasy słabyKlient to emeryci lub osoby poniżej 25 lat i nie mają wyższego wykształcenia. 7 (c) T. Pankowski, Eksploracja danych 8 Analiza asocjacji (związków) (association analysis) 1. 2. 3. 4. Reguły asocjacyjna - przykład Analizą asocjacji nazywamy odkrywanie reguł asocjacyjnych (association rules) obrazujących wspólne i częste występowanie określonych kombinacji par atrybut-wartość w zbiorze danych. Analiza asocjacji jest szeroko używana w analizie koszyka zakupów zwanej też analizą transakcji. Reguła asocjacyjna ma postać: X → Y, tzn: „A1 ∧ ... ∧ An → B1 ∧ ... ∧ Bm”, gdzie każde Ai i każde Bj jest parą atrybut-wartość. Reguła asocjacyjna X → Y interpretowana jest następująco: „krotki w bazie danych spełniające warunek X wystarczająco często spełniają również warunek Y”. (c) T. Pankowski, Eksploracja danych W sklepie Elektronika odkryto następującą regułę asocjacyjną: • wiek(x, „30...39”) ∧ dochód(x, „1500...2900”) → kupuje(x, „CD-RW”) • [wsparcie = 2%, ufność = 60%] • x oznacza klienta. 2. Reguła mówi, że 2% (wsparcie, support) transakcji zakupów w Elektronice dotyczyło klientów w wieku od 30 do 39 lat o dochodach od 1500 do 2900 PLN i kupujących CD-RW. 60% (ufność, confidence) transakcji dokonanych przez osoby w wieku 30 do 39 lat i o dochodach z przedziału 1500 - 2900 dotyczyło zakupu CD-RW. 3. Jest to przykład wielowymiarowej reguły asocjacyjnej (występują trzy predykaty: wiek, dochód, kupuje). 1. (c) T. Pankowski, Eksploracja danych 9 Reguły asocjacyjna – przykład 2 Klasyfikacja i predykcja 1. Reguła określająca, jakie artykuły sprzedawane są łącznie w tej samej transakcji: • zawiera(T, „monitor”) → zawiera(T, „CD-RW”) • [wsparcie = 1%, ufność = 50%] • T oznacza transakcję. 2. Reguła stwierdza, że jeśli transakcja dotyczy zakupu monitora, to istnieje 50% szansy, iż dotyczy ona także zakupu CD-RW. Ponadto 1% wszystkich transakcji dotyczy sprzedaży obydwu tych artykułów łącznie. 3. Jest to przykład jednowymiarowej reguły asocjacyjnej, bo występuje w niej tylko jeden predykat - zawiera. 4. Reguły jednowymiarowe zapisujemy podając tylko wartości atrybutów oraz wsparcie i ufność, na przykład: monitor → CD-RW [1%, 50%] (c) T. Pankowski, Eksploracja danych 10 11 1. 2. 3. Odkrywaniem reguł klasyfikacji nazywamy proces znajdowania modeli (lub funkcji) klasyfikacji umożliwiających określenie klasy, do której powinien należeć wskazany obiekt. Model klasyfikacji budowany jest w wyniku analizy zbioru danych treningowych, tj. zbioru obiektów o znanej przynależności klasowej. Model klasyfikacji może być reprezentowany za pomocą: • reguł o postaci IF_THEN, • drzew decyzyjnych, • sieci neuronowych, • innych metod. (c) T. Pankowski, Eksploracja danych 12 Klasyfikacja i predykcja – drzewa decyzyjne i sieci neuronowe 1. 2. Klasyfikacja z predykcja – drzewa decyzyjne i sieci neuronowe Drzewo decyzyjne (ang. decision tree) jest strukturą drzewiastą, w której: • każdy wierzchołek (z wyjątkiem liści) oznacza testowanie wartości pewnego atrybutu analizowanego obiektu, • każda krawędź wychodząca z wierzchołka reprezentuje wynik testu, • każdy liść oznacza klasę, do której należy obiekt. Sieć neuronowa (ang. neural network), w zastosowaniach do problemów klasyfikacji, składa się ze współpracujących ze sobą jednostek przetwarzania zwanych neuronami, między którymi istnieją połączenia o określonych wagach (będących wartościami liczbowymi). (c) T. Pankowski, Eksploracja danych 1. 2. 3. 4. (c) T. Pankowski, Eksploracja danych 13 Klasyfikacja i predykcja – przykład 1. 2. 3. 4. 14 Analiza skupień (cluster analysis) Przypuśćmy, że naszym zadaniem jest klasyfikacja artykułów w hipermarkecie do jednej z trzech klas odpowiadających reakcji sprzedaży artykułu w odpowiedzi na kampanię reklamową: • duża reakcja, • średnia reakcja, • brak reakcji. Należy zbudować model klasyfikacji na podstawie takich atrybutów opisowych artykułów jak: cena, branża, producent, typ, kategoria. Zbudowany model klasyfikacji może mieć postać drzewa decyzyjnego. Może się okazać, że tylko niektóre z atrybutów opisowych były istotne dla klasyfikacji (np. tylko cena) – może to być wskazówką odnośnie do dalszych kampanii reklamowych. (c) T. Pankowski, Eksploracja danych Model klasyfikacji jest przede wszystkim używany do określenia klasy, do której obiekt należy. Metoda ta może być jednak również stosowana do przewidywania nieznanych wartości atrybutów – mówimy wtedy o predykcji. Predykcja może dotyczyć w szczególności określenia trendów rozwoju na podstawie dostępnych danych. Odkrywanie modeli klasyfikacja i predykcji może być poprzedzone analizą istotności (ang. relevance analysis), w trakcie której identyfikujemy atrybuty nie mające znaczenia (nieistotne) dla procesów klasyfikacji i predykcji. Atrybuty te są następnie wyłączane z dalszych rozważań. 15 1. 2. 3. Analiza skupień ma na celu utworzenie skupień (grup, klastrów, klas) obiektów, przy czym a priori może nie być znana ani liczba skupień, ani zasady przynależności obiektu do skupienia. Obiekty są skupiane (grupowane) z wykorzystaniem zasady maksymalizacji podobieństw wewnątrz klas oraz minimalizacji podobieństwa między klasami. Obiekty należące do jednego skupienia charakteryzują się wysokim podobieństwem do siebie, natomiast bardzo się różnią od obiektów z innych skupień. Analiza skupień może być przeprowadzona na klientach firmy w celu identyfikacji jednorodnych grup klientów. Grupy te mogą stanowić obiekty zainteresowań dla dedykowanych akcji marketingowych. (c) T. Pankowski, Eksploracja danych 16 Analiza skupień - przykład Analiza odchyleń (outlier analysis) 1. W bazie danych mogą być zawarte obiekty, które nie spełniają wymagań ogólnego modelu zachowań. Te obiekty nazywamy odchyleniami. W większości przypadków obiekty takie są odrzucane jako zakłócenia, śmieci lub wyjątki. Niekiedy jednak identyfikacja takich odchyleń może być bardzo interesująca, na przykład w systemach wykrywania oszustw (fraud detection). Odchylenia mogą być wykrywane z wykorzystaniem testów statystycznych, w których przyjmowany jest określony rozkład prawdopodobieństwa dla danych. Można też stosować miary odległości, a obiekty, których odległość od utworzonych skupień jest duża traktowane są jako odchylenia. 2. 3. Utworzone skupienia mogą odpowiadać miejscu zamieszkania klientów, np. w obrębie miasta. (c) T. Pankowski, Eksploracja danych Analiza odchyleń - przykład 1. 2. 18 Analiza ewolucji (evolution analysis) Analiza odchyleń może wykryć nieuczciwe korzystanie z kart płatniczych wtedy, gdy stwierdzi zakupy na wyjątkowo dużą kwotę w porównaniu ze zwykle dokonywanymi zakupami z wykorzystaniem analizowanej karty. Odchylenia mogą być również wykryte poprzez analizę lokalizacji lub typu dokonywanych zakupów. (c) T. Pankowski, Eksploracja danych (c) T. Pankowski, Eksploracja danych 17 19 1. 2. Analiza ewolucji danych opisuje i modeluje regularności lub trendy dla obiektów, których zachowanie zmienia się w czasie. Analiza ewolucji obejmuje: • analizę szeregów czasowych, • odkrywanie sekwencji lub periodyczności, • analiza podobieństwa. (c) T. Pankowski, Eksploracja danych 20 Podsumowanie – etapy odkrywania wiedzy w bazach danych Analiza ewolucji - przykład 1. 2. 3. Przypuśćmy, że dysponujemy danymi z Warszawskiej Giełdy w postaci szeregów czasowych z okresu ostatnich siedmiu lat i chcemy zainwestować w akcje firm branży budowlanej. Analiza zmian na giełdzie może wykazać istnienie pewnych regularności w ewolucji zmian wartości akcji w ogóle i akcji pewnych firm. Regularności te mogą pomóc przewidzieć przyszłe trendy cen akcji i tym samym mogą pomóc nam w podjęciu decyzji inwestycyjnych. (c) T. Pankowski, Eksploracja danych Increasing potential to support business decisions Data Presentation Visualization Techniques Data Mining Information Discovery 2. 3. 4. Data Warehouses / Data Marts OLAP, MDA Data Sources Paper, Files, Information Providers, Database Systems, OLTP Business Analyst Data Analyst DBA 21 Podsumowanie – funkcjonalność metody odkrywania wiedzy (c.d.) Charakteryzacja i dyskryminacja • uogólnia i kontrastuje dane, np. klienci dobrzy kontra klienci słabi. Asocjacje • pozwala wykryć istotne i/lub przypadkowe współwystępowanie danych, np. monitor → CD-RW [1%, 50%] Klasyfikacja i predykcja • pozwala przypisywać obiekty do klas, przewiduje nieznane wartości w tym przyszłe trendy. Analiza skupień • grupuje obiekty tworząc nowe klasy. (c) T. Pankowski, Eksploracja danych End User Data Exploration Statistical Analysis, Querying and Reporting Podsumowanie – funkcjonalność metody odkrywania wiedzy 1. Making Decisions 23 5. 6. 7. 8. Analiza odchyleń • odchylenia są często traktowane jako wyjątki lub śmieci, często jednak mogą być istotne, np. w wykrywaniu oszustw. Analiza ewolucji i trendów • pozwala analizować i przewidywać zachowanie się danych zależnych od czasu. Inne – np. analiza statystyczna oraz metody zorientowane na odkrywanie wiedzy w danych multimedialnych (w obrazach, dźwięku, ...) Ocena przydatności odkrytych zależności. (c) T. Pankowski, Eksploracja danych 24