pobierz plik referatu

Transkrypt

pobierz plik referatu
Rozdział monografii: 'Bazy Danych: Rozwój metod i technologii', Kozielski S., Małysiak B., Kasprowski P., Mrozek D. (red.), WKŁ 2008
Rozdział 33
w
Konstrukcja wielostrumieniowych drzew
decyzyjnych
w
1 Wstęp
da
.b
w
Streszczenie. W rozdziale wprowadzono metodę konstrukcji wielostrumieniowych drzew decyzyjnych. Opracowano analizę, która stosuje się do zagadnień dużej próby, tj. do przypadku, gdy liczebność próby ze strumienia
danych jest dostatecznie wielka. Przy użyciu wprowadzonego algorytmu budowy wielostrumieniowych drzew decyzyjnych skonstruowano je, sprawdzając za każdym razem ich jakość. Przedstawiono przykład, który ilustruje
możliwość użycia proponowanej metody.
pl
s.
Jedną z bardziej interesujących metod klasyfikacji są drzewa decyzyjne, które zostały
wprowadzone przez Breimana i in. [1]. Łączą one ze sobą klasyfikację z aplikacją, w której
działają. Do najbardziej znanych spośród nich należą CART [1], ID3 [2] oraz C4.5 [3].
Metoda drzew decyzyjnych i regresyjnych została z powodzeniem zastosowana do
rozwiązywania dziesiątków problemów związanych z bazami danych [4], klasyfikacji
w eksploracji danych [5], [6], równolegle przeprowadzanej klasyfikacji [7] itp. Aktualnie
problematyka ta koncentruje się m.in. na nowym modelu przetwarzania danych, w którym
dane pojawiają się w postaci ciągłego strumienia. Dane te są generowane przez aplikacje,
których celem jest np. analiza sieci [8], monitorowanie obszaru nadzorowanego przez sieć
sensorową [9], obserwacja ruchomych obiektów [10], analiza danych finansowych generowanych w trakcie notowań giełdowych [11] itp. Cechą charakterystyczną strumieni danych
jest to, że zbyt duże intensywności zgłoszeń nie pozwalają na ich analizę w tradycyjnych
bazach danych. Ponadto, użytkownicy tego rodzaju systemów żądają natychmiastowej reakcji w przypadku odkrycia określonej danej w strumieniu danych, przekroczenia podanej
wartości, rozpoznania obiektu itp.
Dużą trudnością w analizie danych strumieniowych jest fakt ich wzajemnych korelacji.
Dotyczy to danych odnoszących się do tego samego obszaru obserwacji (np. pola sensorowego, informacji pochodzących z notowań na tej samej giełdzie itp.). Dodatkową trudnością jest istnienie trendów w strumieniu danych oraz zmiennych ukrytych, które wprawdzie wystąpiły w obserwowanym obiekcie, ale nie zostały z jakiegoś powodu umieszczone
w strumieniu danych, np. dzięki uszkodzeniu sensorów, wad łączy sieciowych itp.).
Jerzy Martyna
Uniwersytet Jagielloński, Instytut Informatyki, ul. Nawojki 11, 30-072 Kraków, Polska
email: [email protected]
(c) Copyright by Politechnika Śląska, Instytut Informatyki, Gliwice 2008
Rozdział monografii: 'Bazy Danych: Rozwój metod i technologii', Kozielski S., Małysiak B., Kasprowski P., Mrozek D. (red.), WKŁ 2008
J. Martyna
w
Celem tego rozdziału jest wprowadzenie nowej metody przetwarzania danych w strumieniu danych, która jest oparta o wielostrumieniowe drzewa decyzyjne. Pozwalają one na
analizę danych w strumieniu danych. Dzięki zastosowaniu oryginalnej metody analizy danych w strumieniu danych jest możliwa zarówno klasyfikacja danych, jak i reakcja na
określoną zmianę któregoś z nich.
W drugim podrozdziale zostanie przedstawiona zasada konstrukcji drzew decyzyjnych.
W trzecim podrozdziale wprowadza się metodę wielostrumieniowych drzew decyzyjnych.
Kolejny podrozdział ilustruje przydatność proponowanej analizy strumieni danych. We
wnioskach proponuje się dalszą rozbudowę algorytmów wielostrumieniowych drzew decyzyjnych.
w
2 Konstrukcja drzew decyzyjnych
Niech będzie dany zbiór danych D = {d1 , d 2 ,..., d N } , gdzie d i = 〈 X , c〉 ∈ X × C .
w
Przyjmuje się, że X = 〈 X 1 , X 2 ,..., X m 〉 jest zbiorem krotek danej relacji, który nazywa
się instancją relacji, a c jest jedną z m etykiet klas c1 , c 2 ,..., cm . X jest dziedziną
da
.b
instancji danych, C jest dziedziną etykiet klas, przy czym dopuszcza się tu dwie klasy:
numeryczną oraz wyliczeniową.
Problem klasyfikacji przy użyciu drzewa decyzyjnego polega na znalezieniu estymatora,
mającego strukturę grafu skierowanego bez pętli (drzewo), tworzącego ostatecznie podział
dziedziny na wystarczające małe pola, na których uznaje się, że obserwacje do nich
należące pochodzą z jednej klasy. Ogólnie, drzewo decyzyjne jest klasyfikatorem regułowym, dostarczającym reguły pozwalające na zaklasyfikowanie obserwacji do jednej z przyjętych klas.
Jednym z używanych kryteriów dzielenia przestrzeni rozpiętej przez zbiór danych
wejściowych jest zastosowanie kryterium entropii dla danego zbioru uczącego
atrybutu S = {g ( X 1 ), g ( X 2 ),..., g ( X m )} . Zastosowanie entropii do tworzenia drzew
pl
s.
decyzyjnych polega na zastosowaniu takiego podziału X i , który dzieli zbiór S na takie
podzbiory, by zysk informacji (redukcja entropii) dla podanego atrybutu X i , określony tu
przez g ( X i ) , był jak największy [12], co zapisuje się w postaci
g( X i ) ≥
max
j∈{1,..., m}−{i }
g(X j )
(1)
Zysk informacji może też być wyrażony przy użyciu entropii, a mianowicie
g( X i ) = H ( X m ) − H S ( X m )
(2)
gdzie H S ( X m ) jest średnim zapotrzebowaniem na informację i może być obliczone jako
ważona suma entropii dla pojedynczych podzbiorów atrybutów zgodnie z możliwym podziałem S . H ( X m ) jest entropią przed podziałem S i może być zdefiniowane jako
H ( X m ) = − ∑ p j ⋅ log 2 ( p j )
j
422
(c) Copyright by Politechnika Śląska, Instytut Informatyki, Gliwice 2008
(3)
Rozdział monografii: 'Bazy Danych: Rozwój metod i technologii', Kozielski S., Małysiak B., Kasprowski P., Mrozek D. (red.), WKŁ 2008
Konstrukcja wielostrumieniowych drzew decyzyjnych
gdzie p j jest prawdopodobieństwem instancji relacji X .
w
Opisany powyżej proces maksymalizacji zysku informacji może być kontynuowany aż do
chwili, gdy każdy liść drzewa będzie składał się z jednego elementu danych uczących lub,
gdy każdy liść będzie zawierał elementy danych uczących z identycznymi wartościami
zmiennych wejściowych. Może to prowadzić do nadmiernego dopasowania zbioru uczącego. Jedną z metod uniknięcia tego zjawiska jest uśrednianie przewidywań otrzymanych
przez liście i wierzchołki prowadzące do liści. Druga metoda opiera się na przewidywaniach uśrednionych z kilku drzew. Takie uśrednianie modeli sprowadza się dość dobrze
w przypadku drzew, które zwykle charakteryzują się bardzo dobrym dopasowaniem do
nieraz całkowicie odmiennej struktury (innego korzenia drzewa).
w
3 Wielostrumieniowe drzewa decyzyjne
da
.b
w
W podrozdziale wprowadza się nową, oryginalną metodę budowy wielostrumieniowych
drzew decyzyjnych.
Podstawowym problemem występującym w tworzeniu strumieniowych drzew decyzyjnych jest skalowalność. Istniejące drzewa decyzyjne, takie jak ID3, C4.5 czy CART zostały
opracowane dla stosunkowo małego zbioru danych. Tymczasem stosowane strumienie danych są wielkimi plikami, często nie mieszczącymi się w pamięci operacyjnej. Stąd istotnym jest znalezienie takiego zbioru uczącego, który mieściłby się w pamięci oraz posiadał
przy tym dostatecznie dobre własności dla indukowania drzewa decyzyjnego. A ponadto,
z uwagi na ciągły przepływ danych strumieniowe drzewo decyzyjne musi być budowane
przez jedno- lub dwuprzebiegowy algorytm, który ma określone ograniczenia czasu wykonywania, wynikające z narzuconego przedziału czasu pomiędzy dwoma kolejnymi analizami porcji danych strumieniowych. Budowa samego drzewa decyzyjnego dla danych strumieniowych jest także skomplikowanym przedsięwzięciem. Jest to związane z decyzją, czy
przedstawiona do analizy próbka danych jest wystarczająca, aby rozstrzygnąć o spełnieniu,
lub nie, danego kryterium rozdzielenia danych.
Uogólniając, budowa wielostrumieniowych drzew decyzyjnych wymaga zbadania rozkładów danych strumieniowych oraz ustalenia reprezentatywnej liczebności prób, określenia metody indukcyjności drzew decyzyjnych oraz opracowania efektywnego algorytmu
budowy wielostrumieniowych drzew decyzyjnych. Poniżej zostaną przedstawione proponowane rozwiązania tych problemów.
pl
s.
3.1 Badanie rozkładu danych strumieniowych oraz ustalenie liczebności próby
Pierwsze zagadnienie, jakie musi być rozwiązane w analizie strumieniowych danych, to
zbadanie rozkładów danych strumieniowych. Proponuje się tutaj otrzymanie rozkładu
granicznego obszernej klasy statystyk występujących w danym strumieniu. Przypomina się,
że zastosowanie rozkładów granicznych opiera się na tym, że liczebność próby n jest
dostatecznie wielka, to rozkład badanej statystyki jest zbliżony do rozkładu granicznego,
jaki otrzymuje się przy n → ∞ . Podstawowe pytanie, przy jakim n można uważać
badaną próbę za dużą, jest tu nierozstrzygnięte. Wynika to z faktu, że w przypadku
rozkładu granicznego zależy to od szybkości z jaką zmierza rozkład rozważanej statystyki
do rozkładu granicznego.
423
(c) Copyright by Politechnika Śląska, Instytut Informatyki, Gliwice 2008
Rozdział monografii: 'Bazy Danych: Rozwój metod i technologii', Kozielski S., Małysiak B., Kasprowski P., Mrozek D. (red.), WKŁ 2008
J. Martyna
j
j
j
Niech X 1 , X 2 ,..., X n będą niezależnymi zmiennymi losowymi pojedynczego strumienia danych j o rozkładzie jednakowym – takim samym, jak rozkład zmiennej losowej
X j w populacji generalnej. Zakłada się, że istnieje moment rzędu k : mkj = E ( X
j ,k
).
Weźmy pod uwagę statystykę
w
Akj =
1 n k
∑ Xr
n r =1
(4)
Można zauważyć, że
1 n
j ,k
∑ E( X r )
n r =1
j ,k
j ,k
Ponieważ dla r = 1,2,..., n jest spełnione E ( X r ) = E ( X ) , to
1 n
E ( Akj ) = ∑ E ( X rk ) = mk
n r =1
j
Statystykę Ak nazywa się momentem rzędu k z próby j-tego strumienia danych.
E ( Akj ) =
(5)
w
w
(6)
j
Z prawa wielkich liczb Chinczyna [13] wynika, że dla każdego k ciąg { Ak } momenj
da
.b
tów z próby jest stochastycznie zbieżny do momentu mk z populacji generalnej, gdy
n j → ∞. Z twierdzenia Słuckiego [14] wynika, że {Bkj } momentów centralnych z próby
określonych wzorem
1 nj
B = j ∑ ( X rj − Arj ) k
n r =1
j
k
(7)
przy n → ∞ jest stochastycznie zbieżny do momentu centralnego
j
µ kj
z populacji
generalnej. A zatem, wariancja z próby jest przy n → ∞ stochastycznie zbieżna do
wariancji z populacji generalnej.
j
m2jk rzędu 2k zmiennej losowej X j ,
Przyjmując, że istnieje moment skończony
można też wyprowadzić wzór na wariancję zmiennej losowej Ak . Dla r = 1,2,..., n zachodzi związek
Var ( X rj ,k ) = E ( X
j ,2k
) − [E( X
j
j
j ,k
pl
s.
j
)]2 = m2jk − (mkj ) 2
(8)
j
A zatem przy niezależności zmiennych X 1 , X 2 ,..., X n zachodzi zależność
Var ( Akj ) =
1 nj
nj
j ,k
(
)
=
Var ( X
Var
X
∑
r
(n j ) 2 r =1
(n j ) 2
j ,k
)=
m2jk − (mkj ) 2
nj
(9)
Z twierdzenia granicznego Lindberga-Lèvy’ego [14] wynika, że gdy n → ∞ , ciąg dystrybuant standaryzowanych zmiennych losowych
j
424
(c) Copyright by Politechnika Śląska, Instytut Informatyki, Gliwice 2008
Rozdział monografii: 'Bazy Danych: Rozwój metod i technologii', Kozielski S., Małysiak B., Kasprowski P., Mrozek D. (red.), WKŁ 2008
Konstrukcja wielostrumieniowych drzew decyzyjnych
nj
Yn =
j
j ,k
j
j
∑ X r − n ⋅ mk
r =1
n ⋅ Var ( X
j
j ,k
)
Akj − mkj
=
m − (m )
j
2k
j 2
k
nj
(10)
zmierza do dystrybuanty granicznej Φ ( X ) . Można zatem stwierdzić, że jeżeli skończoj
j
j
ny moment m2 k populacji generalnej, to rozkład momentu Ak rzędu k z próby prostej
w
⎛
jest asymptotycznie normalny N ⎜ mk ;
j
⎜
⎝
m2jk − (mkj ) 2
nj
⎞
⎟.
⎟
⎠
j
w
Podstawowym problemem, jaki musi być też rozwiązany, jest ustalenie n – liczebności
próby j -tego strumienia danych. Niech prawdopodobieństwo, że dana z próby wskazuje
na określoną cechę wynosi
⎛
⎜
⎝
j
ma rozkład asymptotycznie
⎞
⎟ poszukuje się prawdopodobieństwa P A j − α ≥ ε
k
⎟
⎠
(
m2jk − (mkj ) 2
nj
w
normalny N ⎜ mk ;
α . Wówczas przyjmując, że Akj
)
da
.b
gdzie ε jest przyjętą stałą. Przyjmuje się tutaj, że ε jest różnicą pomiędzy największym
zyskiem informacji a najmniejszym zyskiem informacji, lub inaczej największą możliwą do
uzyskania redukcją entropii. Korzystając z tablic rozkładu normalnego można znaleźć
(
)
prawdopodobieństwo F = P Ak − α ≥ ε . Wówczas liczebność próby n dla j -tego
j
j
j
strumienia danych wynosi
nj =
(F j )2
m2jk − (mkj ) 2
(11)
3.2 Indukcja strumieniowego drzewa decyzyjnego
Tabela 1. Przykładowe dane strumienia danych
Identyfikator
Wiek
1
2
3
4
5
6
7
8
9
10
młody
średni
starszy
średni
młody
młody
średni
starszy
starszy
średni
Stan
oszczędności
niewielki
znaczny
niewielki
średni
znaczny
niewielki
niewielki
średni
znaczny
niewielki
pl
s.
W przypadku strumieniowych danych musi być zastosowana skalowalna indukcja drzew
decyzyjnych. Jako jedną z najlepszych tego rodzaju technik wybrano tu metodę AVC (ang.
Attribute-Value, Classlabel), którą opisano m.in. w pracy [12].
Zdolność
kredytowa
zła
dobra
zła
dobra
dobra
zła
zła
zła
Dobra
Dobra
Uzyskał
kredyt
nie
tak
nie
tak
tak
nie
nie
nie
tak.
tak.
425
(c) Copyright by Politechnika Śląska, Instytut Informatyki, Gliwice 2008
Rozdział monografii: 'Bazy Danych: Rozwój metod i technologii', Kozielski S., Małysiak B., Kasprowski P., Mrozek D. (red.), WKŁ 2008
J. Martyna
Tabela 2. Zbiory AVC dla przykładowych danych z tabeli 1
młody
średni
starszy
Uzyskał kredyt
tak
Nie
1
2
3
1
1
2
Stan
oszczędności
niewielki
średni
znaczny
Uzyskał kredyt
tak
Nie
1
4
1
1
3
0
Wiek
w
w
w
Uzyskał kredyt
tak
nie
5
0
0
5
da
.b
Zdolność
kredytowa
dobra
zła
Główną ideą tej metody jest utworzenie zbioru AVC dla atrybutu w węźle N . Dla przykładowych danych przedstawionych w tabeli 1 zbiory AVC, opisujące te dane, podano w tabeli 2.
Rozmiar zbiorów AVC zależy od liczby wyszczególnionych wartości atrybutów oraz
liczby klas w zbiorze krotek. Dla każdej z wyszczególnionych klas etykiet można zastosować dowolne miary wyboru atrybutów, w tym także te, które są oparte na zysku informacji.
Przyjęto tutaj następującą metodę znajdowania zysku informacji.
Niech S będzie zbiorem przykładów uczących, które umożliwiają wybór atrybutu a
dla stworzenia drzewa decyzyjnego. Niech S 0 będzie podzbiorem przykładów uczących,
g ( S | a) =
pl
s.
dla których wartości atrybutu a są niezdefiniowane. Jako miarę zysku informacji przyjmuje się tu
| S − S0 |
g ( S − S 0 | a)
|S|
(12)
Jeżeli atrybut a został wybrany do przeprowadzenia testu w węźle N , to podzbiór przy-
kładów uczących S 0 podlega podziałowi. Wówczas przypisuje się wagę odpowiadającą
prawdopodobieństwu wystąpienia określonej wartości atrybutu a . Prawdopodobieństwa te
są obliczane na podstawie częstości występowania różnych wartości atrybutu wśród
przykładów w węźle. Na przykład dla podzbioru S j waga ta będzie wynosić
wj =
|Sj |
| S − S0 |
426
(c) Copyright by Politechnika Śląska, Instytut Informatyki, Gliwice 2008
(13)
Rozdział monografii: 'Bazy Danych: Rozwój metod i technologii', Kozielski S., Małysiak B., Kasprowski P., Mrozek D. (red.), WKŁ 2008
Konstrukcja wielostrumieniowych drzew decyzyjnych
3.3 Algorytm budowy wielostrumieniowych drzew decyzyjnych
w
Podstawowym problemem konstrukcji algorytmu drzew decyzyjnych dla strumieniowych
danych jest konieczność jednoczesnej skalowalności oraz minimalizacji przebiegów. Także
wyszczególnienie bardzo dużej liczby atrybutów będzie powodować znaczną zajętość pamięci i bardzo często konieczność przeprowadzenia fazy wstępnego przetwarzania danych
celem ich posortowania. Innym rozwiązaniem jest zastępowanie już skonstruowanego drzewa (poddrzewa) decyzyjnego dla określonej próbki danych strumieniowych przez lepiej dopasowane drzewo (poddrzewo) utworzone dla kolejnej próbki. Metoda ta po raz pierwszy
została wprowadzona przez Hultona [15].
Przedstawiony tu algorytm jest dwuprzebiegowy. W pierwszym z nich ustala się liczebność próby oraz liczbę klas etykiet. W drugim przebiegu tworzy się histogramy dla wszystkich wyszczególnionych klas etykiet, biorąc pod uwagę atrybuty każdej z nich. Użycie
histogramów dla oszacowania liczby wyszczególnionych wartości atrybutów jest jedną
z technik stosowanych w analizie danych strumieniowych, co opisano m.in. w pracy [16].
Następnie oblicza się tutaj zysk informacji dla każdej z klas uwzględniając atrybuty. Wybiera się tę klasę etykiet, dla której znaleziono największy zysk informacji. Korzystając
z zależności (13) oblicza się wagę każdej wartości atrybutu w aktualnym zbiorze przykładów. Na podstawie wag dla poszczególnych wartości atrybutu ustala się ten spośród nich,
który ma największą wagę. Jest on wyłonionym liściem, dla którego tworzy się regułę.
Utworzone drzewo podlega tu uproszczeniu. Przyjęto, że jest to uproszczenie w pełni
zbudowanego drzewa (ang. post-pruning). Decyzję o przycięciu węzła (korzenia poddrzewa) podejmuje się na podstawie heurystycznego oszacowania błędu przycinanego węzła.
Przyjęto tu, że dla każdego liścia (poddrzewa) jest liczony koszt złożoności drzewa jako
funkcji liczby liści w drzewie. Jeśli koszt złożoności jest zbyt duży (tu większy niż 20%),
to poddrzewo to jest zastępowane przez pojedynczy liść. Pozwala to na redukcję rozmiarów
drzewa.
W każdej analizie próby jest dokonywana ocena zbudowanego drzewa decyzyjnego, którą jest intensywność błędu. Przyjęto tu, że intensywność błędu jest procentem źle sklasyfikowanych krotek przez dane drzewo. Jeśli w kolejnej analizie próby intensywność błędu
skonstruowanego drzewa ma mniejszą intensywność błędu niż poprzednio zbudowane
drzewo, to zgodnie z metodą Hultona [15], zastępuje się je.
Jako kryterium stopu przyjęto tu następujące sytuacje:
1) aktualny zbiór przykładów jest pusty,
2) wszystkie przykłady należą do tej samej klasy etykiet,
3) zbiór możliwych do użycia przykładów uczących jest pusty.
4) Po spełnieniu któregoś z tych warunków konstrukcja drzewa zostaje wstrzymana.
Algorytm tworzenia drzew decyzyjnych dla strumieni danych przedstawia rys. 1.
da
.b
w
w
pl
s.
procedure eksploracja_strumienia;
begin
for j := 1 to J do
while not spełniony_warunek_stopu_dla_strumienia(j) do
begin
if pierwszy_przebieg(j) then
begin
znajdź_liczebność_próby(n(j));
ustal_klasy_etykiet(k(j));
end;
if drugi_przebieg(j) then
begin
for each k(j) oblicz histogram h(k, j);
znajdź g:= max[g(h(k, j))];
427
(c) Copyright by Politechnika Śląska, Instytut Informatyki, Gliwice 2008
Rozdział monografii: 'Bazy Danych: Rozwój metod i technologii', Kozielski S., Małysiak B., Kasprowski P., Mrozek D. (red.), WKŁ 2008
J. Martyna
for g oblicz w(k, j);
znajdź a = max[w(k, j)];
sformułuj regułę podziału w liściu;
end;
przeprowadź_upraszczanie_drzewa;
oblicz intensywność_błędu drzewa(bieżące);
if intensywność_błędu(poprzednie) < intensywność_błędu(bieżące) then
drzewo(j, poprzednie) else drzewo(j, bieżące);
end;
w
end;
Rys. 1. Pseudokod procedury eksploracji wielokrotnych strumieni danych
w
4 Eksperyment obliczeniowy
da
.b
w
Do eksperymentu przygotowano podwójny strumień danych. Wszystkie dane zostały odznaczone identyfikatorem, który pozwala na określenie ich przynależności do danego strumienia. Przyjęto, że pierwszy strumień opisuje dane dotyczące notowań giełdowych spółki
giełdowej KGHM notowanej na GPW w Warszawie od 1.01.2007 r. do 15.03.2008 r. [17].
Dane te obejmują w danym dniu kurs otwarcia i zamknięcia, zmianę kursu akcji podawaną
w złotych oraz w procentach, kursy: otwarcia, najwyższy, najniższy, obroty w postaci:
wolumenu (liczba akcji) oraz wartości w złotych, aktualną liczbę wyemitowanych akcji
KGHM. Dane drugiego strumienia danych dotyczą liczby akcji KGHM znajdujących się
w obrocie danego dnia, zysku na akcję (Z/E) oraz stopy dywidendy. Przyjmując, że dla
akcji KGHM wskaźnik C/Z (cena do zysku) jest określony jako 3.5 < C/Z < 6.0 - co
wskazuje na zakup akcji. Miara C/Z ≥ 6.0 oznacza tu sprzedaż akcji KGHM. Znalezione
atrybuty pozwalają na ustalenie zakupu i sprzedaży tych akcji.
Przy użyciu zależności (11) oraz przyjęciu parametru α = 0.6 zostały wyznaczone liczebności próby obydwu strumieni danych. Liczebność próby dla pierwszego strumienia wynosi 53, a dla drugiego 47. Dla pierwszego strumienia wyznaczono także 7 klas etykiet,
a dla drugiego tylko trzy klasy. Przykładowy histogram dla drzewa decyzyjnego
pierwszego strumienia, odnoszący się do jego wszystkich klas, przedstawiono na rys. 2.
Analogicznie, przykładowy histogram dla drzewa decyzyjnego drugiego strumienia zaprezentowano na rys. 3.
Cechą charakterystyczną tak budowanych drzew decyzyjnych jest to, że różnią się one
między sobą zarówno rozmiarami, jak i liczbą węzłów. Tym niemniej intensywność błędu
obliczona dla każdego z nich ulegała zmniejszeniu, co ilustruje rys. 4.
pl
s.
428
(c) Copyright by Politechnika Śląska, Instytut Informatyki, Gliwice 2008
Rozdział monografii: 'Bazy Danych: Rozwój metod i technologii', Kozielski S., Małysiak B., Kasprowski P., Mrozek D. (red.), WKŁ 2008
Konstrukcja wielostrumieniowych drzew decyzyjnych
w
w
w
da
.b
Rys. 2. Przykładowy histogram dla 7 klas etykiet jednej próby pierwszego strumienia
danych
pl
s.
Rys. 3. Przykładowy histogram dla 3 klas etykiet jednej próby drugiego strumienia danych
429
(c) Copyright by Politechnika Śląska, Instytut Informatyki, Gliwice 2008
Rozdział monografii: 'Bazy Danych: Rozwój metod i technologii', Kozielski S., Małysiak B., Kasprowski P., Mrozek D. (red.), WKŁ 2008
J. Martyna
w
da
.b
w
w
Rys. 4. Procent błędu klasyfikacji strumieniowego drzewa decyzyjnego dla poszczególnych
prób
5 Wnioski
Literatura
1.
2.
3.
4.
pl
s.
W rozdziale wprowadzono nowy algorytm budowy drzew decyzyjnych dla danych strumieniowych. Jego cechą charakterystyczną jest dwuprzebiegowość oraz stosunkowo niezbyt
duża złożoność pamięciowa. Dodatkowo, została przedstawiona metoda znajdowania liczebności próby oraz zasada budowy wielostrumieniowych drzew decyzyjnych.
Przewiduje się, że przedstawiony algorytm będzie sprawdzony w wielu zastosowaniach,
w tym do analizy danych sieci sensorowej oraz badania sygnałów EKG. Kolejnym etapem
badań będzie poprawienie wskaźników efektywności działania algorytmu budowy wielostrumieniowych drzew decyzyjnych oraz opracowanie jego nowej wersji, która będzie wyłącznie jednoprzebiegowa.
Breiman Breiman L., Frieidman J.H., Olshen R.A., Stone C.J., Classification and Regression
Tress, Wadsworth, Belmont CA, 1984.
Quinlan J.R., Introduction of Decision Trees, Machine Learning, Vol. 1, No. 1, 1986, 81 – 106.
Quinlan J.R.,C4.5:Programs for Machine Learning, Morgan Kauffman, 1993.
Gehrke J., Ramakrishnan R., Ganti V., Rainforest – a Framework for Fast Decision Tree
Construction of Large Datasets, in: Proceedings of the 24th International Conference on Very
Large Databases (VLDB), 1998.
430
(c) Copyright by Politechnika Śląska, Instytut Informatyki, Gliwice 2008
Rozdział monografii: 'Bazy Danych: Rozwój metod i technologii', Kozielski S., Małysiak B., Kasprowski P., Mrozek D. (red.), WKŁ 2008
Konstrukcja wielostrumieniowych drzew decyzyjnych
5.
6.
7.
8.
w
Kennedy Runy L., Lee Y., Van Roy Benjamin, Reed Ch. D., Lipman R.P., Solving Data Mining
Problems through Pattern Recognition, Pearson Education, Upper Saddle River, NJ 1995.
Mehta M., Agrawal R., Rissanen J., Sliq: A Fast Scalable Classifier for Data Mining, in: Proc. of
the Fifth International Conference on Extending Database Technology, Avignon, France 1996.
Shafer J., Agrawal R., Mehta M., SPRINT: A Scalable Parallel Classifier for Data Mining, in:
Proceedings of the 22nd International Conference on Very Large Databases (VLDB), 1996, 544
– 555.
Cranor C., Johnson T., Spatascek O., Shkapenyuk V., Gigascope: A Stream Database for
Network Applications, in: SIGMOD, 2003.
Yao Y., Gehrke J., Query Processing in SensorNetworks, in: CIDR, 2003.
Aggarwal G.C., A Framework for Diagnosing Changes in Evolving Data Streams, in: SIGMOD,
2003.
Zhu Y., Shasha D., StatStream: Statistical Monitoring of Thousand of Data Streams in Real
Time, in: Proceedings of the 28th International Conference on Very Large Databases (VLDB),
2002.
Han J., Kamber M., Data Mining. Concepts and Techniques, Second Edition, Morgan Kaufmann
Publishers/Elsevier, 2006.
Feller W., Wstęp do rachunku prawdopodobieństwa, Tom II, PWN, Warszawa 1978.
Magiera R., Modele i metody statystyki matematycznej, Wyd. drugie rozszerzone, Część II:
Wnioskowanie, Oficyna Wydawnicza GiS, Wrocław 2007.
Hulton G., Spencer L., Domingos P., Mining Time-Changing Data Streams, in: Proceedings of
KDD 2001.
Haas P., Naughton J., Seshadri P., Stokes L., Sampling-based Estimation of the Number of
Distinct Values of an Attribute, in: Proceedings of the 1995 International Conference on Very
Large Databases (VLDB), 1995, 311 – 366.
Dom Maklerski Banku Ochrony Środowiska SA [http://bossa.pl/dmbos/].
9.
10.
11.
13.
14.
15.
16.
da
.b
17.
w
w
12.
pl
s.
431
(c) Copyright by Politechnika Śląska, Instytut Informatyki, Gliwice 2008
Rozdział monografii: 'Bazy Danych: Rozwój metod i technologii', Kozielski S., Małysiak B., Kasprowski P., Mrozek D. (red.), WKŁ 2008
w
da
.b
w
w
pl
s.
(c) Copyright by Politechnika Śląska, Instytut Informatyki, Gliwice 2008