Klasifikacija ansamblom metodapoincare.matf.bg.ac.rs/~nenad/ip2/ansambl.pdf · 2020. 10. 25. ·...
Transcript of Klasifikacija ansamblom metodapoincare.matf.bg.ac.rs/~nenad/ip2/ansambl.pdf · 2020. 10. 25. ·...
-
Klasifikacija ansamblommetoda
Nenad MitićMatematički fakultet
-
UvodOsnovna ideja
Jaki i slabi klasifikatori
Greška kod ansamblametoda
Metode zakonstrukcijuansambla
Pakovanje
Pojačavanje
Nasumična šuma
Nebalansiraneklase
3.2
Ideja ansambla metoda
Osnovna ideja
• "Nema besplatnog ručka- ne postoji algoritamkoji se najbolje ponaša u svim mogućimsituacijama
• Kombinovanje skupa modela koji rešavaju (isti)originalni problem
• Cilj - dobijanje boljeg globalnog modela
• Veća preciznost i pouzdanost procene uodnosu na svaki pojedinačni model
-
UvodOsnovna ideja
Jaki i slabi klasifikatori
Greška kod ansamblametoda
Metode zakonstrukcijuansambla
Pakovanje
Pojačavanje
Nasumična šuma
Nebalansiraneklase
3.3
Ansambl metoda
• "Ansambl" metoda - skup metoda koje zajedno"nastupaju" da bi se dobio bolji rezultat
• Condorcet teorema žirija (porote) (Marie JeanAntoine Nicolas de Caritat, markiz deCondorcet (1743–1794))
• Neka grupa ljudi nezavisno jedan od drugogbira izmed̄u dve mogućnosti od kojih je samojedna ispravna, i neka je p verovatnoća da suizabrali ispravnu mogućnost. Njihovi glasovi sekombinuju po pravilu većine, i neka Moznačava verovatnoću da je većina napravilakorektan izbor. Ako je p > 0.5 tada M −→ 1ako broj glasanja teži ka beskonačnosti
-
UvodOsnovna ideja
Jaki i slabi klasifikatori
Greška kod ansamblametoda
Metode zakonstrukcijuansambla
Pakovanje
Pojačavanje
Nasumična šuma
Nebalansiraneklase
3.4
Ansambl metoda
• Posledica Condorcet teoreme: gomila jepametnija od pojedinca pod relativno slabimuslovima
• Svaki pojedinac mora da ispravno sudi saverovatnoćom p > 0.5 (nešto malo bolje odslučajnog nagad̄anja)
• Svaki pojedinac odluku donosi nezavisno odostalih
• Nedostaci: binarna klasifikacija + nezavisnost
-
UvodOsnovna ideja
Jaki i slabi klasifikatori
Greška kod ansamblametoda
Metode zakonstrukcijuansambla
Pakovanje
Pojačavanje
Nasumična šuma
Nebalansiraneklase
3.5
Jaki i slabi klasifikatori
• Jaki klasifikator: greška klasifikacije može dabude proizvoljno mala
• Slabi klasifikator: klasifikator koji je nešto boljiod običnog slučajnog nagad̄anja
• klasifikacija ansamblom metoda: umestokorišćenja jednog jakog klasifikatora formira seveliki skup slabih klasifikatora čiji se izlazikombinuju u jedno (finalno) rešenje
• Prema Condorcet teoremi, ako se obezbedeodgovarajući uslovi dobiće se model čija jegreška klasifikacije proizvoljno blizu nule
• Dodatni razlog za koriščćenje: lakše je napravitiviše slabijih klasifikatora nego jedan jak
-
UvodOsnovna ideja
Jaki i slabi klasifikatori
Greška kod ansamblametoda
Metode zakonstrukcijuansambla
Pakovanje
Pojačavanje
Nasumična šuma
Nebalansiraneklase
3.6
Logička struktura ansambla metoda
-
UvodOsnovna ideja
Jaki i slabi klasifikatori
Greška kod ansamblametoda
Metode zakonstrukcijuansambla
Pakovanje
Pojačavanje
Nasumična šuma
Nebalansiraneklase
3.7
Greška kod ansambla metoda
1 Neka ansambl čine 15 metoda koje imajugrešku klasifikacije od ε = 0.3.
2 Ansambl će napraviti pogrešno predvid̄anjeako više od polovine elemenata ansambal imapogrešno predvid̄anje
3 Zbog toga, greška predvid̄anja ansambla biće
εansambl =15∑
i=8
(15i
)εi(e − ε)15−i = 0.05
što je znatno manje od greške svakogpojedinačnog klasifikatora
-
UvodOsnovna ideja
Jaki i slabi klasifikatori
Greška kod ansamblametoda
Metode zakonstrukcijuansambla
Pakovanje
Pojačavanje
Nasumična šuma
Nebalansiraneklase
3.8
Metode za konstrukciju ansamblaklasifikatora
• Promenom skupa za trening
• Promenom skupa ulaznih atributa
• Promenom skupa oznaka klasa
• Menjenjem algoritma za klasifikaciju
Ansambl metoda bolje radi sa nestabilnimklasifikatorima (drveta odlučivanja, neuronskemreže, klasifikatori zasnovani na pravilima), tj.klasifikatorima koji su osetljivi na neznatne promeneu skupu za trening.
-
UvodOsnovna ideja
Jaki i slabi klasifikatori
Greška kod ansamblametoda
Metode zakonstrukcijuansambla
Pakovanje
Pojačavanje
Nasumična šuma
Nebalansiraneklase
3.9
Promena skupa za trening
• Formira se više skupova za trening izborom ipočetnog skupa podatka na osnovu nekogkriterijuma.
• Distribucija i izbor elemenata može da semenja pri svakom izboru
• Klasifikator se formira primenom (istog)algoritma klasifikacije na svaki od skupova zatrening.
• Predstavnici: algoritmi sa dodatnimpojačavanjem (eng. boosting) i pakovanjem(eng. bagging)
-
UvodOsnovna ideja
Jaki i slabi klasifikatori
Greška kod ansamblametoda
Metode zakonstrukcijuansambla
Pakovanje
Pojačavanje
Nasumična šuma
Nebalansiraneklase
3.10
Promena skupa ulaznih atributa
• Za svaki skup podataka za trening bira sepodskup ulaznog skupa atributa.
• Izbor može biti slučajan, ali na osnovu datihdirektiva
• Pokazano je da pristup radi jako dobro uslučaju da ulazni skup sadrži redundantnepodatke.
• Predstavnici: nasumična šuma (eng. Randomforest)
-
UvodOsnovna ideja
Jaki i slabi klasifikatori
Greška kod ansamblametoda
Metode zakonstrukcijuansambla
Pakovanje
Pojačavanje
Nasumična šuma
Nebalansiraneklase
3.11
Promena skupa oznaka klasa
• Koristi se kada je skup klasa dovoljno veliki
• Trening skup se transformiše u binarni problem(0/1) slučajnim grupisanjem klasa u dvadisjunktna skupa
• Uzastopnim grupisanjima postiže se efekatansambla; pri testiranju ako klasifikatorpredvidi klasu 0, tada svi klasifikatori unjegovoj grupi dobijaju jedna glas i obratno.
• Klasa koja dobije najviše glasova se dodeljujetest primeru
• Primer: kodiranje izlaza sa otklanjanjemgrešaka
-
UvodOsnovna ideja
Jaki i slabi klasifikatori
Greška kod ansamblametoda
Metode zakonstrukcijuansambla
Pakovanje
Pojačavanje
Nasumična šuma
Nebalansiraneklase
3.12
Menjenje algoritma za klasifikaciju
• Neki klasifikacion algoritmi daju različitemodele u primeni na iste podatke (npr.neuroneske mreže u slučaju promenetopologije ili početnih težina za veze izmed̄uneurona
• Na primer, ansambl metoda sa drvetimaodlučivanja može da se konstruiše tako što seuključi slučajnost u proceduru rasta drveta(umesto biranja najboljeg atributa za podelu usvakom čvoru, slučajno može da se bira jedanod najboljih n atributa za podelu.
-
UvodOsnovna ideja
Jaki i slabi klasifikatori
Greška kod ansamblametoda
Metode zakonstrukcijuansambla
Pakovanje
Pojačavanje
Nasumična šuma
Nebalansiraneklase
3.13
Pakovanje
Pakovanje (Bagging, Bootstrap AGGregatING) jetehnika koja formira podatke za test uzastopnimuzorkovanjem (sa ponavljanjem) podataka izpočetnog skupa u skladu sa unformnomdistribucijom verovatnoća
• Svaki od tako formiranih inicijalnih (eng.bootstrap)skupova ima istu kardinalnost kao i originalni skup
• Zbog izbora sa ponavljanjem neki slogovi mogu da sejave više puta, dok neki mogu i da se ne pojavljuju
• U proseku inicijalni slog sadrži 63% početnog skupapodataka jer je svaki uzorak biran sa verovatnoćom1− (1− 1/N)N . Ako je N dovoljno veliko verovatnoćakonvergira ka 1− 1/e ≈ 0.632
-
UvodOsnovna ideja
Jaki i slabi klasifikatori
Greška kod ansamblametoda
Metode zakonstrukcijuansambla
Pakovanje
Pojačavanje
Nasumična šuma
Nebalansiraneklase
3.14
Pakovanje (algoritam)
Neka je D skup ulaznih podataka ik broj inicijalnih skupova
for i=1 to k doformiraj inicijalni uzorak Di velicine NTrenirati osnovni klasifikator Ci na skupu Di
end forC*(x)=klasa koja je dobila najveci broj glasova
-
UvodOsnovna ideja
Jaki i slabi klasifikatori
Greška kod ansamblametoda
Metode zakonstrukcijuansambla
Pakovanje
Pojačavanje
Nasumična šuma
Nebalansiraneklase
3.15
Pakovanje - primer
Neka su dati podaci za trening nad kojima je dobijensledeći rezultat klasifikacije
x 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1y 1 1 1 -1 -1 -1 -1 1 1 1
Na osnovu ovih rezultata podela sloga može biti nax ≤ 0.35 ili na x ≤ 0.75 što daje preciznostklasifikacije 70%.
Primenom metode pakovanja cilj je naći skup od 10
jednostavnih (slabih) klasifikatora koji u ansamblu korektno
klasifikuju ovaj skup. Svaki slabi klasifikator za x ≤ K odred̄ujeklasu +1 ili −1 u zavisnosti od toga koja vrednost dajenajmanju grešku, gde je K odred̄eno minimizacijom entropije
-
UvodOsnovna ideja
Jaki i slabi klasifikatori
Greška kod ansamblametoda
Metode zakonstrukcijuansambla
Pakovanje
Pojačavanje
Nasumična šuma
Nebalansiraneklase
3.16
Pakovanje - primer
x 0.1 0.2 0.2 0.3 0.4 0.4 0.5 0.6 0.9 0.9 xy=1y 1 1 1 1 -1 -1 -1 -1 1 1 x>0.35==>y=-1
x 0.1 0.2 0.3 0.4 0.5 0.8 0.9 1 1 1 xy=1y 1 1 1 -1 -1 1 1 1 1 1 x>0.65==>y=1
x 0.1 0.2 0.3 0.4 0.4 0.5 0.7 0.7 0.8 0.9 xy=1y 1 1 1 -1 -1 -1 -1 -1 1 1 x>0.35==>y=-1
x 0.1 0.1 0.2 0.4 0.4 0.5 0.5 0.7 0.8 0.9 xy=1y 1 1 1 -1 -1 -1 -1 -1 1 1 x>0.3==>y=-1
x 0.1 0.1 0.2 0.5 0.6 0.6 0.6 1 1 1 xy=1y 1 1 1 -1 -1 -1 -1 1 1 1 x>0.35==>y=1
x 0.2 0.4 0.5 0.6 0.7 0.7 0.7 0.8 0.9 1 xy=-1y 1 -1 -1 -1 -1 -1 -1 1 1 1 x>0.75==>y=1
x 0.1 0.4 0.4 0.6 0.7 0.8 0.9 0.9 0.9 1 xy=-1y 1 -1 -1 -1 -1 1 1 1 1 1 x>0.75==>y=1
x 0.1 0.2 0.5 0.5 0.5 0.7 0.7 0.8 0.9 1 xy=-1y 1 1 -1 -1 -1 -1 -1 1 1 1 x>0.75==>y=1x 0.1 0.3 0.4 0.4 0.6 0.7 0.7 0.8 1 1 xy=-1y 1 1 -1 -1 -1 -1 -1 1 1 1 x>0.75==>y=1
x 0.1 0.1 0.1 0.1 0.3 0.3 0.8 0.8 0.9 0.9 xy=-1y 1 1 1 1 1 1 1 1 1 1 x>0.05==>y=1
-
UvodOsnovna ideja
Jaki i slabi klasifikatori
Greška kod ansamblametoda
Metode zakonstrukcijuansambla
Pakovanje
Pojačavanje
Nasumična šuma
Nebalansiraneklase
3.17
Pakovanje - primer
Korak x= 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 11 1 1 1 -1 -1 -1 -1 -1 -1 -12 1 1 1 1 1 1 1 1 1 13 1 1 1 -1 -1 -1 -1 -1 -1 -14 1 1 1 -1 -1 -1 -1 -1 -1 -15 1 1 1 -1 -1 -1 -1 -1 -1 -16 -1 -1 -1 -1 -1 -1 -1 1 1 17 -1 -1 -1 -1 -1 -1 -1 1 1 18 -1 -1 -1 -1 -1 -1 -1 1 1 19 -1 -1 -1 -1 -1 -1 -1 1 1 1
10 1 1 1 1 1 1 1 1 1 1
Zbir 2 2 2 -6 -6 -6 -6 2 2 2Znak 1 1 1 -1 -1 -1 -1 1 1 1
Koretna klasa 1 1 1 -1 -1 -1 -1 1 1 1
-
UvodOsnovna ideja
Jaki i slabi klasifikatori
Greška kod ansamblametoda
Metode zakonstrukcijuansambla
Pakovanje
Pojačavanje
Nasumična šuma
Nebalansiraneklase
3.18
Pojačavanje
Pojačavanje (Boosting) je tehnika adaptivnepromene distribucije trening podataka u zavisnostiod prethodnih grešaka klasifikacije
• Inicijalno, svakom od N slogova se dodeli jednaka težina
• Težina se menja na kraju svakog ciklusa - težina slogovakoji su pogrešno klasifikovani se povećava, a tačnihsmanjuje
• Finalni klasifikator kombinuje glasove svih klasifikatora uciklusu
Jedan od najpopularnijih algoritama jeAdaBoost (Adaptive Boost). Videti SPSSmodeler Algorithm Guide
-
UvodOsnovna ideja
Jaki i slabi klasifikatori
Greška kod ansamblametoda
Metode zakonstrukcijuansambla
Pakovanje
Pojačavanje
Nasumična šuma
Nebalansiraneklase
3.19
Nasumična šuma
Posebno konstruisana metoda za ansambl drvetaodlučivanja
• Konstruiše se više drveta
• Ansambl nepotkresanih drveta odlučivanja
• Svaki osnovni klasifikator konstruiše novi vektor atributaiz originalnih podataka
• Svako drvo koristi slučajni vektor generisan sa fiksnomdistribucijom raspodele)
• Konačan rezultat se dobija glasanjem (preko svih drvetau šumi)
-
UvodOsnovna ideja
Jaki i slabi klasifikatori
Greška kod ansamblametoda
Metode zakonstrukcijuansambla
Pakovanje
Pojačavanje
Nasumična šuma
Nebalansiraneklase
3.20
Nasumična šumaSlučajni vektor može da se formira na više načina
• Slučajno se bira F ulaznih karakteristika za podelu usvakom čvoru drveta (ForestRI - Random Inputselection)
• U svakom čvoru formira se novi atribut na osnovuslučajno izabranih L atributa. Novi atribut je linearnakombinacija izabranih atributa sa koeficijentimagenerisanim uniformnom distribucijom u intevalu [−1,1].Zatim se u svakom čvoru generiše F takvih slučajnokombinovanih atributa, od kojih se najbolji bira za podeluu čvoru (ForestRC)
• U svakom čvoru najbolja podela se dobija slučajnimizborom izmed̄u F najboljih atributa umesto izmed̄u svihatributa
-
UvodOsnovna ideja
Jaki i slabi klasifikatori
Greška kod ansamblametoda
Metode zakonstrukcijuansambla
Pakovanje
Pojačavanje
Nasumična šuma
Nebalansiraneklase
3.21
Problem nebalansiranih klasa
• Alternativne metrike (odziv, preciznostF-mera)• Receiver Operating Charactersistic
(ROC) kriva• AUC (area under curve)
• Matrica cene• Različiti uzorci
UvodOsnovna idejaJaki i slabi klasifikatoriGreška kod ansambla metoda
Metode za konstrukciju ansamblaPakovanjePojacavanjeNasumicna šumaNebalansirane klase