Upload
others
View
7
Download
0
Embed Size (px)
Citation preview
Drzewa klasyfikacyjneLasy losowe
Wprowadzenie
Konstrukcja binarnych drzew klasyfikacyjnych polega nasekwencyjnym dzieleniu podzbiorów przestrzeni próby X na dwarozłączne i dopełniające się podzbiory, rozpoczynając od całegozbioru X . W każdym kroku podział dokonywany jest tak, abyuzyskane części były możliwie „ jednorodne”. Podzbiory które niepodlegają dalszemu podziałowi nazywać będziemy końcowymi. Dokażdego podzbioru końcowego przypisana jest dokładnie jednaetykieta klasy.
Tomasz Górecki Statystyczne systemy uczące (W12)
Drzewa klasyfikacyjneLasy losowe
Wprowadzenie
Idea konstrukcji drzew klasyfikacyjnych jest bardzo podobna dometody stosowanej w diagnostyce medycznej. Lekarz pragnącyzdiagnozować pacjenta zadaje mu szereg pytań. Kolejność pytańnie jest przypadkowa, a następne pytanie jest często uzależnione oduzyskanej odpowiedzi na pytanie poprzednie. Przykładowo, lekarzzaczyna od pytania najważniejszego ze względu na diagnozę, np.pytania o wiek pacjenta. Załóżmy, że istotne jest czy pacjentprzekroczył 60 rok życia. Sam wiek nie jest wystarczający dopodjęcia decyzji. Zatem lekarz zadaje następne pytanie. Zwróćmyuwagę, że być może w grupie osób starszych (wiek > 60) będzieono dotyczyło poziomu cholesterolu we krwi, bo ta właśnieinformacja jest najważniejsza w tej grupie wiekowej. Z kolei wgrupie osób młodszych (wiek ≤ 60) pytanie będzie dotyczyłociśnienia tętniczego krwi. Postępując w ten sposób, po kilkukrokach, lekarz jest w stanie podjąć decyzję.
Tomasz Górecki Statystyczne systemy uczące (W12)
Drzewa klasyfikacyjneLasy losowe
Wprowadzenie
Opisany powyżej proces można przedstawić graficznie przy pomocydrzewa (stąd nazwa metody). Niech T oznacza drzewoklasyfikacyjne. Węzły (wierzchołki) drzewa T utożsamiać będziemyz podzbiorami przestrzeni próby X i oznaczać literą t. Węzłyodpowiadające podzbiorom końcowym nazywać będziemy liśćmi, azbiór wszystkich liści drzewa T oznaczać będziemy przez T .
Tomasz Górecki Statystyczne systemy uczące (W12)
Drzewa klasyfikacyjneLasy losowe
Wprowadzenie
Tomasz Górecki Statystyczne systemy uczące (W12)
Drzewa klasyfikacyjneLasy losowe
Wprowadzenie
Cechą charakterystyczną drzewa klasyfikacyjnego są związane znim dwie funkcje. Określona na zbiorze liści T funkcja indprzyporządkowująca każdemu z nich etykietę klasy oraz określonadla każdego węzła wewnętrznego funkcja podziału s. Funkcja takażdemu elementowi węzła t przyporządkowuje jedną z dwóchwartości – prawda lub fałsz. Wszystkie elementy z węzła t dlaktórych podział s przyjmuje wartość prawda sąprzyporządkowywane do węzła potomka tL, a te elementy dlaktórych podział s przyjmuje wartość fałsz do węzła potomka tR .
Tomasz Górecki Statystyczne systemy uczące (W12)
Drzewa klasyfikacyjneLasy losowe
Wprowadzenie
Prezentując graficznie drzewo klasyfikacyjne wygodnie jest nanieśćw węzłach wewnętrznych drzewa kryteria podziału s, a liściomprzyporządkować etykiety klas.
Tomasz Górecki Statystyczne systemy uczące (W12)
Drzewa klasyfikacyjneLasy losowe
Wprowadzenie
Podsumowując, każdy klasyfikator zbudowany w oparciu o drzewoklasyfikacyjne T ma następującą postać:
dT (x) =∑t∈T
ind(t)I (x ∈ t).
Tomasz Górecki Statystyczne systemy uczące (W12)
Drzewa klasyfikacyjneLasy losowe
Wprowadzenie
Najpopularniejsze metody konstrukcji drzew klasyfikacyjnych to:
CHAID,
CART,
C4.5,
QUEST,
CRUISE.
Tomasz Górecki Statystyczne systemy uczące (W12)
Drzewa klasyfikacyjneLasy losowe
Konstrukcja
Konstrukcja drzewa klasyfikacyjnego oparta jest na próbie uczącejLn = {(x1, y1), . . . , (xn, yn)}, gdzie x j jest wektoremobserwowanych cech, a yj etykietą klasy (j = 1, 2, . . . , n).Składa się ona z trzech podstawowych elementów:
1 wyboru metody „optymalnego” podziału węzłów,2 doboru optymalnej wielkości drzewa klasyfikacyjnego, czyli
reguły decydującej o tym czy dany węzeł ma być węzłemkońcowym, czy ma podlegać dalszemu podziałowi,
3 sposobu w jaki każdemu węzłowi końcowemuprzyporządkowujemy etykietę klasy.
Tomasz Górecki Statystyczne systemy uczące (W12)
Drzewa klasyfikacyjneLasy losowe
Konstrukcja
Wprowadźmy następujące oznaczenia: ni to liczba obserwacji wpróbie uczącej Ln należących do i–tej klasy, ni (t) liczba obserwacjiw węźle t należących do i–tej klasy (i = 1, . . . ,K ). Wtedyn = n1 + · · ·+ nK jest liczbą obserwacji uczących, an(t) = n1(t) + · · ·+ nK (t) jest liczbą obserwacji uczących w węźlet.Dla dowolnego obiektu Z = (X ,Y ) określmy następująceprawdopodobieństwa:
p(t) = P(X ∈ t),
p(t|i) = P(X ∈ t|Y = i),
p(t) =K∑i=1
πip(t|i),
gdzie πi jest prawdopodobieństwem a priori tego, że obiekt należydo i–tej klasy (i = 1, . . . ,K ).
Tomasz Górecki Statystyczne systemy uczące (W12)
Drzewa klasyfikacyjneLasy losowe
Konstrukcja
Przyjmując estymator częstościowy prawdopodobieństwa p(t|i)postaci
p(t|i) = ni (t)
ni
oraz jeżeli prawdopodobieństwa a priori πi oszacujemy przez ni/nto otrzymujemy następujący estymatory:
p(t) =K∑i=1
πini (t)
ni=
n(t)
n,
p(i |t) = πip(t|i)p(t)
=ni (t)
n(t).
Tomasz Górecki Statystyczne systemy uczące (W12)
Drzewa klasyfikacyjneLasy losowe
Konstrukcja
Ogólnie rzecz biorąc, każdy podział s generowany jest przezodpowiadające mu pytanie postaci:
czy x ∈ A, A ⊂ X ?
Postać powyższego pytania jest bardzo ogólna. Może ona dotyczyćjedynie jednej cechy (podziały jednowymiarowe) lub wielu cech(podziały wielowymiarowe). Poszukując optymalnego podziału srozważyć powinniśmy możliwie duży zbiór pytań. Im jednak będzieon większy tym bardziej skomplikowana i długa będzie drogawyboru optymalnego podziału s.
Tomasz Górecki Statystyczne systemy uczące (W12)
Drzewa klasyfikacyjneLasy losowe
Konstrukcja
Każdy podział s jest uwarunkowany przez obserwacje ze zbioruuczącego Ln, należące do danego węzła t. Praktycznie trzebazatem rozdzielić je na dwa podzbiory możliwie jednorodne zewzględu na etykietę klasy. Gdyby zatem w węźle t znajdowały sięobserwacje tylko z dwóch klas, to idealnym byłby taki podział,który przypisałby obserwacje uczące z jednej klasy do węzła tL, a zdrugiej klasy do węzła tR . Dla każdego węzła t określmy pewnąmiarę i(t) niejednorodności elementów w tym węźle. Stąd, dlakażdego podziału s węzła t będziemy mogli zmierzyćniejednorodność elementów w tym węźle oraz w jego potomkach tLi tR .
Tomasz Górecki Statystyczne systemy uczące (W12)
Drzewa klasyfikacyjneLasy losowe
Konstrukcja
Niech φ oznacza funkcję określoną dla wszystkich K -elementowychciągów prawdopodobieństw (p1, p2, . . . , pK ) takich, że∑K
i=1 pi = 1, pi ≥ 0 (i = 1, 2, . . . ,K ), spełniającą następującewarunki:
1 funkcja φ osiąga maksimum tylko w punkcie ( 1K ,1K , . . . ,
1K ),
2 funkcja φ osiąga minimum tylko w punktach: (1, 0, . . . , 0),(0, 1, . . . , 0), . . . , (0, 0, . . . , 1),
3 funkcja φ jest symetryczną funkcją swoich argumentów.
Miarę niejednorodności i(t) w węźle t definiujemy następująco:
i(t) = φ(p(1|t), . . . , p(K |t)).
Tomasz Górecki Statystyczne systemy uczące (W12)
Drzewa klasyfikacyjneLasy losowe
Konstrukcja
1
φ1(p1, . . . , pK ) = 1−max{p1, . . . , pK}.Miara niejednorodności oparta o tę funkcję określa błądklasyfikacji.
2
φ2(p1, . . . , pK ) = −K∑i=1
pi log pi .
Funkcja ta nazywana jest funkcją entropii.3
φ3(p1, . . . , pK ) = 1−K∑i=1
p2i .
Funkcja ta nazywana jest indeksem Giniego.
Wybierany jest taki podział, który daje maksymalną redukcjęniejednorodności indeksu przynależności do klasy w węźle.
Tomasz Górecki Statystyczne systemy uczące (W12)
Drzewa klasyfikacyjneLasy losowe
Konstrukcja
Tomasz Górecki Statystyczne systemy uczące (W12)
Drzewa klasyfikacyjneLasy losowe
Konstrukcja
Wybór optymalnej wielkości drzewa klasyfikacyjnego jestrównoważny z podaniem reguły decydującej o tym czy dany węzełma podlegać podziałowi czy ma być liściem drzewa. Zwróćmyuwagę, że stosując metodę ponownego podstawiania do szacowaniapoprawności klasyfikacji za pomocą drzewa klasyfikacyjnego Tdochodzimy do następującego wniosku: jeżeli drzewoklasyfikacyjne T ′ powstało z drzewa klasyfikacyjnego T poprzezpodział dowolnego węzła końcowego, to
eR(T′) ≤ eR(T ).
Co więcej, kontynuując odpowiednio długo proces dzielenia węzłówotrzymamy maksymalne drzewo klasyfikacyjne Tmax, dla którego wkażdym węźle końcowym znajdować się będą tylko te obiekty zpróby uczącej Ln, które należą do tej samej klasy.
Tomasz Górecki Statystyczne systemy uczące (W12)
Drzewa klasyfikacyjneLasy losowe
Konstrukcja
Budując jednak zbyt duże drzewo klasyfikacyjne mamy doczynienia z tzw. efektem przetrenowania. Polega on na tym, żedrzewo doskonale klasyfikuje obiekty z próby uczącej Ln lecz corazsłabiej (w miarę zwiększania liczby liści) nowe elementy.
Tomasz Górecki Statystyczne systemy uczące (W12)
Drzewa klasyfikacyjneLasy losowe
Konstrukcja
Pojawia się zatem problem optymalnego wyboru wielkości drzewaklasyfikacyjnego. Prostym rozwiązaniem (niestety dającym zwyklesłabe rezultaty) jest wprowadzenie tzw. reguły stopu. Najprostszareguła tego typu, każe nie dzielić dalej węzła t, gdy liczbaprzyporządkowanych mu obserwacji ze zbioru uczącego Ln jestodpowiednio mała. Inna reguła stopu każe uznać węzeł t zakońcowy, po uzyskaniu odpowiedniej jednorodności drzewaklasyfikacyjnego T .
Tomasz Górecki Statystyczne systemy uczące (W12)
Drzewa klasyfikacyjneLasy losowe
Konstrukcja
Bardziej efektywnym podejściem (choć zwiększającym znaczącoczasochłonność procesu konstrukcji optymalnego drzewaklasyfikacyjnego) jest procedura polegająca na wstępnym tworzeniudrzewa maksymalnego, a następnie na selektywnym przycinaniujego krawędzi. Proces przycinania ma na celu modyfikację postacimaksymalnego drzewa klasyfikacyjnego w ten sposób, aby uzyskaćnowe drzewo, które daje możliwie minimalne prawdopodobieństwobłędnej klasyfikacji. Prowadzi on do redukcji wielkości drzewa –wyeliminowane zostają te podziały, które nie mają istotnegoznaczenia dla poprawności klasyfikacji.
Tomasz Górecki Statystyczne systemy uczące (W12)
Drzewa klasyfikacyjneLasy losowe
Konstrukcja
Ocena błędu dla poddrzewa jest sumą ważoną błędów jego liści.Ocena błędu (e) dla węzła (liścia) ma postać:
e =f + z2
2N + z√
fN −
f 2
N + z2
4N2
1 + z2
N
,
gdzie
f jest błędem na zbiorze uczącym,
N jest liczbą obserwacji w węźle (liściu),
z jest kwantylem z rozkładu normalnego, odpowiadającympoziomowi ufności 1− α (w poniższym przykładzie α = 25%).
Tomasz Górecki Statystyczne systemy uczące (W12)
Drzewa klasyfikacyjneLasy losowe
Konstrukcja
Błąd w węźlerodzicu wynosi0,46, a w węźlepotomku 0,51.Czyli ten podziałzwiększa błąd,zatem powinniśmyprzyciąć.
Tomasz Górecki Statystyczne systemy uczące (W12)
Drzewa klasyfikacyjneLasy losowe
Konstrukcja
Jednym z podstawowych elementów drzewa klasyfikacyjnego jestokreślona na liściach drzewa funkcja ind. Przyporządkowuje onaetykietę klasy każdemu z węzłów końcowych. Zdefiniujmy jąnastępująco:
ind(t) = arg max1≤i≤K
p(i |t).
Jeżeli maksimum wypada dla dwóch lub więcej klas, wybór jednej znich jest dowolny.
Tomasz Górecki Statystyczne systemy uczące (W12)
Drzewa klasyfikacyjneLasy losowe
Drzewa klasyfikacyjne – zalety
1 możliwość wykorzystania do klasyfikacji zarówno cechilościowych jak i jakościowych,
2 prosta forma końcowa drzewa klasyfikacyjnego umożliwiającaw szybki i efektywny sposób klasyfikację nowych obiektów,
3 odporność na obserwacje odstające i sytuacje, w którychniektóre zmienne są nieobserwowane,
4 intuicyjna interpretacja.
Tomasz Górecki Statystyczne systemy uczące (W12)
Drzewa klasyfikacyjneLasy losowe
Drzewa klasyfikacyjne – wady
1 niestabilność – nawet niewielkie zmiany próby uczącej mogąprowadzić do dużych różnic w końcowej postaci drzewa,
2 problemy z jakością klasyfikacji.
Tomasz Górecki Statystyczne systemy uczące (W12)
Drzewa klasyfikacyjneLasy losowe
Lasy losowe – idea
Obecnie bardzo coraz popularną metodą są lasy losowe,zaproponowane przez Breimana (1995). Jest to metoda łączeniawielu drzew klasyfikacyjnych. Wpierw losujemy K próbbootstrapowych, dla każdej z nich konstruujemy drzewoklasyfikacyjne w taki sposób, że w każdym węźle losujemy m(mniej niż liczba wszystkich cech) cech, które będą uczestniczyły wwyborze najlepszego podziału. Drzewa budowane są bezprzycinania. Ostatecznie obserwacja klasyfikowana jest poprzezmetodę głosowania. Jedynym parametrem metody jestwspółczynnik m, który powinien być znacznie mniejszy od wymiarudanych p, i przyjmuje się najczęściej (klasyfikacja) jego wartośćrówną m =
√p. Szybkość konstrukcji lasów losowych pozwala
używać je nawet dla bardzo dużych danych. Oprócz klasyfikacji lasylosowe mogą być wykorzystane w regresji oraz analizie przeżycia.
Tomasz Górecki Statystyczne systemy uczące (W12)
Drzewa klasyfikacyjneLasy losowe
Top R Packages for Machine Learning (2017) – KDnuggets
Tomasz Górecki Statystyczne systemy uczące (W12)
Drzewa klasyfikacyjneLasy losowe
Machine Learning Workflow
Tomasz Górecki Statystyczne systemy uczące (W12)
Drzew
akla
syfika
cyjne
Lasy
loso
we
Sup
ervisedLearning
Tom
asz
Górecki
Sta
tystyczne
systemy
uczą
ce(W
12)
Drzewa klasyfikacyjneLasy losowe
Machine Learning Modelling in R
Machine Learning Modelling in R : : CHEAT SHEET
Standard Modelling Workflow Time Series View
CC BY SA Arnaud Amsellem • [email protected] • www.thertrader.com • Updated: 2018-03
Supervised & Unsupervised Learning Meta-Algorithm, Time Series & Model Validation
Tomasz Górecki Statystyczne systemy uczące (W12)