klasifikacija ansamblom metodapoincare.matf.bg.ac.rs/~nenad/ip2/ansambl.pdf · 2020. 10. 25. ·...

21
Klasifikacija ansamblom metoda Nenad Miti´ c Matematiˇ cki fakultet [email protected]

Upload: others

Post on 28-Jan-2021

4 views

Category:

Documents


0 download

TRANSCRIPT

  • Klasifikacija ansamblommetoda

    Nenad MitićMatematički fakultet

    [email protected]

  • 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