1
Eksploracja danych
Problemy analizy danych
Rozwój technologii systemów baz danych, hurtowni danych,
sieci komputerowych, automatycznych narzędzi do
gromadzenia danych, spowodowały nagromadzenie
olbrzymich wolumenów danych.
Przykłady:
Firma telekomunikacyjna AT&T obsługuje miliardy połączeń
dziennie. Okazuje się, że danych jest tyle, że ich analiza musi
być wykonywana w locie (on the fly) poprzez strumienie
danych.
Innym przykładem może być sieć sprzedaży Wal-Mart, która
gromadzi dane dotyczące ponad 20 milionów transakcji
dziennie.
Ośrodek badawczy Very Long Baseline Interferometry (VLBI)
posiada 16 teleskopów, z których każdy produkuje
1 Gigabit/sekundę danych astronomicznych w czasie
25-dniowej sesji obserwacyjnej.
Koncern Mobil Oil rozwija magazyn danych, który już w roku
1999 pozwalał na przechowywanie ponad 100 terabajtów
danych o wydobyciu ropy naftowej.
Rozwój sieci Web spowodował, iż stał sie on olbrzymią bazą
danych przechowującą terabajty danych. Przykładowo, Alexa
Internet Archiwum (7-letnie dane) - 500 TB, Google
8 miliardów stron, Yahoo 20 miliardów stron, IBM
WebFountain 160 TB (2003).
Uniwersytet Berkeley (2003) szacuje swoje zbiory na
5 exabaitów (czyli około 5 milionów terabajtów) nowych
danych wygenerowanych w samym roku 2002. Niewątpliwie
największym producentem danych w skali światowej są
2
Stany Zjednoczone, szacuje sie iż produkują aż 40% danych
światowych.
Nasze możliwości analizowania i rozumienia tak dużych
wolumenów danych są dużo mniejsze od możliwości ich
gromadzenia i przechowywania. Zaczynamy tonąć w
danych, ale brakuje nam wiedzy, która tkwi w
nagromadzonych danych.
Wiele firm, przedsiębiorstw, instytucji administracji
publicznej, ośrodków naukowych, stanęło przed problemem,
w jaki sposób efektywnie i racjonalnie wykorzystać
nagromadzona w tych danych wiedzę dla celów wspomagania
swojej działalności.
Tradycyjny sposób korzystania z baz danych, to jest
przetwarzanie transakcji w trybie on-line, sprowadza się,
najczęściej, do realizacji zapytań poprzez aplikacje lub
raporty. Jest on w pełni satysfakcjonujący w przypadku
bieżącej obsługi działalności danej firmy, to jest dla dobrze
zdefiniowanych procesów (obsługa klienta w banku,
rejestracja zamówień, obsługa sprzedaży, itp.).
Niestety, ten klasyczny model przetwarzania danych nie
wspomaga procesów analizy danych.
W niewielkim też stopniu systemy te wspomagają takie
operacje jak: agregacja danych, wykonywania podsumowań,
czy też optymalizacji złożonych zapytań formułowanych ad
hoc.
3
Analityczne przetwarzanie danych OLAP
Opisane w poprzednim rozdziale problemy doprowadziły, w
latach 90-tych, do opracowania nowego modelu przetwarzania
danych, którego podstawowym celem było wspomaganie
procesów podejmowania decyzji. Opracowano nowy typ
relacyjnej bazy danych tak zwane magazyny, lub hurtownie
danych (ang. data warehouse).
Model ten nazywamy również przetwarzaniem analitycznym
on-line (ang. On Line Analytical Processing - OLAP).
Dostarcza bowiem narzędzi umożliwiających analizę w wielu
wymiarach , i co jest bardzo istotne, wymiarach
definiowanych przez użytkownika (takich, jak: czas,
miejsce, klasyfikacja produktów, itp.). Analiza polega na
obliczaniu agregatów dla zadanych wymiarów magazynu.
Należy podkreślić, że proces analizy jest całkowicie
sterowany przez użytkownika. Mówimy czasami o analizie
danych sterowanej zapytaniami (ang. query-driven
exploration).
Metody eksploracji danych
W przeciwieństwie do technologii OLAP, technologia
eksploracji danych (ang. data mining) umożliwia
automatyczną analizę danych.
Ogólnie problem eksploracji danych polega na
efektywnym znajdowaniu nieznanych dotychczas
zależności i związków pomiędzy danymi.
Automatyczna eksploracja danych otwiera nowe możliwości
w zakresie interakcji użytkownika z systemem bazy danych
(lub magazynem danych). Przede wszystkim umożliwia
analizę na znacznie wyższym poziomie abstrakcji.
4
Analiza danych sterowana zapytaniami, charakterystyczna dla
technologii OLAP, zakłada, że użytkownik:
- posiada pełną wiedzę o przedmiocie analizy,
- potrafi sterować tym procesem.
Eksploracja danych umożliwia analizę danych dla problemów,
dla których użytkownik nie dysponuje taką wiedzą. Tę wiedzę
chcemy właśnie wydobyć z danych.
Eksploracja danych, nazywana często odkrywaniem wiedzy w
bazach danych (ang. knowledge discovery in databases -
KDD), jest jedną z najdynamiczniej i najintensywniej
rozwijanych dziedzin informatyki w ostatnim czasie. Integruje
wiele dyscyplin takich jak: statystyka, systemy baz danych,
sztuczna inteligencja, optymalizacja, obliczenia równoległe.
Bardzo ściśle z eksploracją danych wiąże się pojęcie tak
zwanej inteligencji biznesowej (ang. business intelligence).
Problem eksploracji danych wiąże się bezpośrednio z
problemem formułowania zapytań - w jaki sposób uzyskać
dostęp do danych w przypadku kiedy nie potrafimy
sformułować zapytania w terminach języka dostępu do bazy
danych?
Przykładowo, w jaki sposób zidentyfikować rekordy w bazie
danych firmy telekomunikacyjnej, które odpowiadają
fałszywym połączeniom? Podobnie, w przypadku kart
kredytowych interesuje nas wykrycie kradzieży tych kart i ich
niestandardowe wykorzystanie.
Oczywiście, można analizować rekord po rekordzie w bazie
danych rozpatrując oddzielnie każdy przypadek. Podejście
takie jest jednak nie wykonalne w przypadku giga- i tera-
bajtowych baz danych. Z drugiej strony, bardzo trudno
sformułować zapytanie w języku SQL, lub nawet zdefiniować
5
procedurę składowaną, które umożliwiłoby przeprowadzenie
takiej analizy.
Metody eksploracji danych można podzielić, bardzo ogólnie,
na 6 zasadniczych klas:
" Odkrywanie asocjacji
Najszersza klasa metod obejmująca, najogólniej
odkrywanie różnego rodzaju nieznanych zależności
(asocjacji) w bazie danych. Odkrywane zależności
posiadają pewne miary statystyczne określające ich
wsparcie i ufność.
" Analiza skupień (Klastrowanie)
Celem tych metod jest znajdowanie skończonego zbioru
klas obiektów (klastrów) w bazie danych posiadających
podobne cechy. Liczba klastrów jest nieznana, stąd proces
klastrowania przebiega najczęściej w dwóch cyklach: cykl
zewnętrzny przebiega po liczbie możliwych klastrów, cykl
wewnętrzny próbuje znalezć optymalny podział obiektów
pomiędzy klastry.
" Odkrywanie wzorców sekwencji
Odkrywanie czasowych wzorców zachowań, np.
znajdowanie sekwencji notowań giełdowych, zachowań
klientów ubezpieczalni, czy klientów supermarketów.
" Odkrywanie klasyfikacji
Celem tych metod jest znajdowanie zależności pomiędzy
klasyfikacją obiektów (klasyfikacja naturalna bądz
wprowadzona przez eksperta) a ich charakterystyką.
Zastosowanie: charakterystyka pacjentów, klientów kart
kredytowych, pożyczkobiorców.
" Odkrywanie podobieństw w przebiegach czasowych
Znajdowanie podobieństw w przebiegach czasowych
opisujących określone procesy.
6
" Wykrywanie zmian i odchyleń
Znajdowanie różnic pomiędzy aktualnymi a
oczekiwanymi wartościami danych: znajdowanie
anomalnych zachowań klientów ubezpieczalni, klientów
kart kredytowych, klientów firm telekomunikacyjnych.
Przykłady
(ilustrujące użycie poszczególnych metod eksploracji danych)
Odkrywanie asocjacji
Dane:
" I={i1, i2, ..., in} zbiór obiektów pewnego typu
" Transakcja T: zbiór obiektów takich, że T I
" Baza danych D: zbiór transakcji
" Transakcja T zawiera zbiór X (X I), jeżeli (X T)
" Reguła asocjacyjna:
implikacja postaci X Y, gdzie X, Y I
" Reguła X Y posiada wsparcie s% w bazie danych D
jeżeli s% transakcji należących do D zawiera X Y
" Reguła X Y posiada zaufanie c% w bazie danych D,
jeżeli c% transakcji, należących do D i zawierających X
zawiera również Y
Sformułowanie problemu:
Znajdz wszystkie reguły asocjacyjne w D, których wsparcie
s > minsup, i zaufanie c > minconf
gdzie:
minsup - jest minimalnym wsparciem,
minconf - minimalnym zaufaniem,
(obie wartości zadane przez użytkownika).
7
Przykład:
Transakcja Obiekty
1 A, B, C
2 A, C
3 A, D
4 B, E, F
Dla minsup=50% i minconf=50% następujące reguły
asocjacyjne są prawdziwe:
A C, reguła posiada 50% wsparcie i 66.6% zaufanie
C A, reguła posiada 50% wsparcie i 100% zaufanie
Zastosowania: analiza koszyka zakupów, bezpośredni
marketing.
Analiza skupień (Klastrowanie)
Sformułowanie problemu:
Dana jest baza danych zawierająca rekordy. Przypisz
poszczególne rekordy do klastrów.
Czym jest klaster rekordów? Najbardziej ogólnie - klaster jest
podzbiorem podobnych rekordów. Bardziej dokładnie -
klastrem nazywamy spójny obszar w wielowymiarowej
przestrzeni o dużej gęstości rekordów.
8
Istnieje wiele szczegółowych definicji klastra. Różnice
wynikają głównie z charakteru przechowywanych w
rekordach danych - czy są to dane ciągłe, numeryczne czy też
symboliczne. Oto jedna z definicji:
Klaster jest podzbiorem rekordów takich, że odległość
pomiędzy dwoma dowolnymi rekordami w klastrze jest
mniejsza aniżeli odległość pomiędzy dowolnym rekordem w
klastrze a rekordem z innego klastra.
Zastosowania: segmentacja rynku klientów (telekomunikacja,
ubezpieczenia), segmentacja obrazów, biologia, medycyna.
Odkrywanie wzorców sekwencji
Dane:
" I={i1, i2, ..., in} zbiór obiektów pewnego typu
" Transakcja T: zbiór obiektów takich, że T I
" Sekwencja: lista transakcji pojedynczego klienta
" Baza danych sekwencji D: zbiór sekwencji
Sformułowanie problemu:
ID klienta Data Obiekty
1 3 maja A
1 15 maja A
2 4 maja A
2 16 maja B
2 2 września C, E
3 4 kwietnia A, E
4 3 maja A
4 3 czerwca C, D, E
4 2 września A
5 5 września A
9
Dana jest baza danych sekwencji D. Znajdz wszystkie
maksymalne podsekwencje w D, których wsparcie s> minsup,
gdzie minsup jest wartością zadaną przez użytkownika.
Znalezione podsekwencje nazywamy wzorcami sekwencji.
Dla minsup=40% następujące wzorce sekwencji są spełnione:
A poprzedza A, wzorzec posiada wsparcie 40%
A poprzedza C i E, wzorzec posiada wsparcie 40%
Zastosowania: analiza dostępów do stron w Web, analiza
koszyka zakupów, bezpośredni marketing, medycyna,
ubezpieczenia, telekomunikacja
Odkrywanie klasyfikacji
Sformułowanie problemu:
Dana jest baza danych. Każdy rekord w bazie danych posiada
etykietę klasy, do której należy. Znajdz model każdej klasy, tj.
opis rekordów dla każdej z klas.
Wiek Typ samochodu Ryzyko wypadku
20 kombi duże
18 sportowy duże
40 sportowy duże
50 Kombi małe
35 minivan małe
30 kombi duże
Wynik klasyfikacji można najczęściej przedstawia się w
postaci drzewa decyzyjnego.
10
Dla powyższego zbioru rekordów drzewo decyzyjne będzie
miało następującą postać:
Wiek<31
duże typ samochodu (sportowy)
duże małe
Problem klasyfikacji jest problemem znanym i analizowanym
od wielu lat, szczególnie, w dziedzinie sztucznej inteligencji i
uczenia maszynowego. Na gruncie tych dziedzin opracowano
szereg metod odkrywania klasyfikacji takich jak: drzewa
decyzyjne, sieci neuronowe, algorytmy genetyczne, algorytmy
oparte o statystykę. Niestety wszystkie te metody
charakteryzują się słabą skalowalnością.
Zastosowania: klasyfikacja pacjentów, weryfikacja
kredytobiorców, lokalizacja sklepów, marketing bezpośredni.
Odkrywanie podobieństw w przebiegach czasowych
Dane:
" Baza danych przebiegów czasowych
Sformułowanie problemu:
Dana jest baza danych przebiegów czasowych. Pogrupuj
wszystkie podobne przebiegi czasowe.
Przedstawione na rysunku poniżej przebiegi czasowe różnią
się wartościami i są wzajemnie przesunięte w czasie, mają
jednak podobną charakterystykę czasową. Do znajdowania
11
podobieństw czasowych wykorzystuje się transformaty:
Fouriera i falkową.
Zyski z funduszu A Zyski z funduszu B
Zastosowania: znajdowanie klientów o podobnej strukturze
konsumpcji energii elektrycznej, identyfikacja firm na giełdzie
o podobnej dynamice wzrostu cen akcji, identyfikacja
surowców o podobnej charakterystyce sprzedaży.
Eksploracja danych jest dziedziną interdyscyplinarną. Jej
dalszy rozwój wymaga połączenia technik i metod
wypracowanych w różnych dziedzinach nauki: statystyce,
grafice komputerowej, technologii baz danych, systemach
równoległych, teorii optymalizacji, uczenia maszynowego, itd.
Część osób porównuje aktualny stan rozwoju tej dziedziny do
stanu, w jakim systemy baz danych znajdowały się na
początku swojej drogi. Brakuje nam standardu języka, w
którym użytkownicy mogliby definiować swoje zapytania ,
mechanizmów optymalizacji wykonywania takich zapytań,
zarządzania efektywnym, współbieżnym wykonywaniem
zapytań, narzędzi do budowy aplikacji, itd.
Olbrzymie bazy danych przypominają dzisiaj czasami wielkie
grobowce pełne danych, ale bez życia. Eksploracja danych jest
próbą wniesienia do tych grobowców trochę światła.
K o n i e c w y k ł a d u
Wyszukiwarka
Podobne podstrony:
Sztuczna inteligencja wykład cz 1Sztuczna inteligencja wykład cz2Sztuczna inteligencja wykład cz7Sztuczna inteligencja wykład cz 5 1E FILIPOWICZ I J KWIECIEă ANALIZA MO˝LIWO—CI ZASTOSOWANIA METOD SZTUCZNEJ INTELIGENCJI W MEDYCYNIEsztuczna inteligencja logik rozmyta 0Sztuczna Inteligencja 226 Podstawy filozoficzne sztucznej inteligencjisztuczna inteligencja cw3 synt ukl wnioskujLogiczne podejście do reprezentacji wiedzy w sztucznej inteligencjiMetody sztucznej inteligencjiMarciszewski Czy juz zyjemy w erze sztucznej inteligencjiSztuczna inteligencja we wspomaganiu procesu prognozowania w przedsiębiorstwieWykorzystanie sztucznej inteligencji w prognozowaniuwięcej podobnych podstron