Presentation is loading. Please wait.

Presentation is loading. Please wait.

Otkrivanje znanja u skupovima podataka

Similar presentations


Presentation on theme: "Otkrivanje znanja u skupovima podataka"— Presentation transcript:

1 Otkrivanje znanja u skupovima podataka
Priprema podataka za dubinsku analizu Provođenje analize Mjerenje uspješnosti Rukovanje atributima

2 Otkrivanje znanja u skupovima podataka
Pripremio: Prof.dr.sc. Nikola Bogunović Sveučilište u Zagrebu Fakultet elektrotehnike i računarstva Temeljem izvornih dokumenata (autori zadržavaju sva prava): I.H.Witten, E.Frank DATA MINING, Practical Machine Learning Tools and Techniques Morgan Kaufmann, 2011. T.Michell MACHINE LEARNING McGraw Hill, 1997

3 Otkrivanje znanja u skupovima podataka

4 Otkrivanje znanja u skupovima podataka
Priprema podataka za dubinsku analizu

5 Otkrivanje znanja u skupovima podataka
Priprema podataka za dubinsku analizu Za problem klasifikacije, u principu postoje tri skupa podataka: Podaci za učenje (za koje se npr. zna klasifikacija). Podaci za testiranje modela (za koje se zna klasifikacija). Novi podaci s nepoznatom klasifikacijom. Podaci za učenje i podaci za testiranje moraju biti izabrani slučajno i nezavisno, t.j. moraju biti strattificirani.To znači da u skupu za učenje i u skupu za testiranje mora biti približno podjednak broj pripadnika svakog razreda. Temeljem uočene pogreške klasifikacije na podacima za testiranje nastojimo procijeniti pogrešku klasifikacije novih podataka.

6 Otkrivanje znanja u skupovima podataka
Koliko je potrebno podataka za testiranje da bi uočena pogreška bila blizu stvarnoj pogrešci novih podataka ? Potrebno je s matematičkom izvjesnošću odrediti interval u kojem se može očekivati razlika između uočene (test) i stvarne pogreške. S 95% izvjesnosti može se tvrditi: Za 100 primjera razlika pogreške testnih i novih je unutar 5%. Za 1000 primjera razlika pogreške testnih i novih je unutar 1%. Podaci za učenje: barem 3 do 10 puta više. Preuzeto iz: dms.irb.hr

7 Otkrivanje znanja u skupovima podataka
Kako razdijeliti ukupnu dostupnu populaciju primjera na skup za učenje i skup za testiranje ? Pretpostavka: postoji dovoljno velika populacija (npr. više od 1000 primjera). Skup za učenje i skup za testiranje treba biti slučajno generiran iz populacije uzimajući u obzir stratifikaciju. Neka je: n = ukupan broj primjera u populaciji, t = broj primjera za testiranje. Tradicijski postupak: Slučajno se odabere skup {t}, tako da je |t| oko 1/3 populacije, pa se računa pogreška. Poboljšani tradicijski postupak: određivanje skupa {t} i ocjena pogreške izvede se kroz i iteracija. Broj i (slučajnih izbora) je mnogo manji od n. Pogreška je srednja vrijednost pogrešaka dobivenih u pojedinim iteracijama.

8 Otkrivanje znanja u skupovima podataka
Kako razdijeliti ukupnu dostupnu populaciju primjera na skup za učenje i skup za testiranje ? Pretpostavka: postoji dovoljno velika populacija (npr. više od 1000 primjera). Postupci međuvalidacije (unakrsne validacije , engl. cross validation) Postupak tradicijske međuvalidacije: Populacija se slučajno ali stratificirano podijeli na tri podskupa A, B, C. Postupak izračuna pogreške ponavlja se tri puta tako da se svaki puta koristi jedan različit podskup za testiranje a ostatak (dva podskupa) za učenje. Pogreška je srednja vrijednost tri izračuna. 10-struka međuvalidacija: Populacija se slučajno ali stratificirano podijeli na 10 podskupova. Postupak izračuna pogreške ponavlja se 10i puta tako da se svaki puta za učenje koristi jedan različit podskup za testiranje a ostatak od devet podskupova za učenje. Pogreška je srednja vrijednost 10 izračuna. 10 puta 10-struka međuvalidacija: Postupak 10-struke međuvalidacije se ponavlja 10 puta. Pogreška je srednja vrijednost 100 izračuna.

9 Otkrivanje znanja u skupovima podataka
Kako razdijeliti ukupnu dostupnu populaciju primjera na skup za učenje i skup za testiranje ? Pretpostavka: postoji mali broj primjera (npr. oko 100 ). Postupak izostavljanja jednog primjera: (engl. leave one out) Sustav se uči s (n-1) primjerom, a jedan primjer se ostavlja za testiranje. To se ponavlja n puta tako da se iskoriste svi primjeri za testiranje. Pogreška je broj krivo klasificiranih pojedinačnih primjera podijeljen s (n). Postupak je računalno skup pa je zato i primjeren za populacije s malim brojem primjera.

10 Otkrivanje znanja u skupovima podataka
Kako razdijeliti ukupnu dostupnu populaciju primjera na skup za učenje i skup za testiranje ? Pretpostavka: postoji vrlo mali broj primjera (npr. 30 do 50 ). “Bootstrap” postupak ( postupak samopodizanja): Neka je broj primjera u populaciji n. Generiraj skup za učenje tako da se slučajno n puta izvlače primjeri, ali se nakon izvlačenja vraćaju natrag u početni skup. Na taj način neki primjeri u n pokušaja biti će izvučeni nekoliko puta (jer postoji vraćanje) a neki uopće neće bit izvučeni. Neizvučeni primjeri služe za testiranje. Očekivani postotak tih primjera prema cijeloj populaciji je 36.8%. Vjerojatnost da se izvuče jedan konkretan primjer je 1/n, a da se taj ne izvuče je (1 – 1/n). Za n izvlačenja (1 – 1/n)n = x n. Za dobu procjenu potrebno je postupak ponoviti oko 100 puta i izračunati srednju pogrešku. Postupak je računalno vrlo skup.

11 Otkrivanje znanja u skupovima podataka
Izražavanje pogrešaka i uspješnosti u postupcima dubinske analize podataka

12 Otkrivanje znanja u skupovima podataka
Pogreške u postupcima dubinske analize podataka Pogreška (engl. error) je krivo klasificiranje primjera generaliziranim (induciranim) modelom (konceptom). Učestalost pogreške (engl. error rate) = broj_pogrešaka/broj_primjera To je vrlo grubi način izražavanja pogrešaka jer npr.: Pogreška u dijagnosticiranju neke osobe kao zdrave iako je teško bolesna smatra se mnogo ozbiljnijom pogreškom nego dijagnosticiranju nekoga kao bolesnog iako je zdrav. Uvodi se razlikovanje pogrešaka po konfuzijskoj matrici (engl. confusion matrix)

13 Otkrivanje znanja u skupovima podataka
Konfuzijska matrica u izražavanje pogrešaka u postupcima dubinske analize podataka Primjer konfuzijske matrice za klasifikaciju u tri razreda: Stvarni razredi Razredi po klasifikatoru Ovaj primjer stvarno pripada razredu 1, a klasifikator ga je svrstao u razred 2. Broj ispravno klasificiranih primjera – duž dijagonale Pogrešne klasifikacije - ostalo 1 2 3 30 43 5 75

14 Otkrivanje znanja u skupovima podataka
Konfuzijska matrica za klasifikaciju dva razreda To je najčešći slučaj; klasifikacija u više razreda može se svesti na seriju klasifikacije u dva razreda. Odgovara predikciji pojavljivanja ili ne događaja (hipoteze), tzv. razred pozitivnih i razred negativnih primjera. Postoje dva moguća tipa pogreške: Krivo klasificiranje primjera u pozitivne iako to nisu - krivi pozitivni primjeri (FP – engl. false positives). Krivo klasificiranje primjera u negativne iako to nisu - - krivi negativni primjeri (FN – engl. false neagtives). Stvarni razredi Razred pozitivnih (C+) Razred negativnih (C-) Predikacija pozitivnih (R+) Pravi pozitivni (TP) Krivi pozitivni (FP) Predikcija negativnih (R-) Krivi negativni (FN) Pravi negativni (TN)

15 Otkrivanje znanja u skupovima podataka
Definicije indikatora pogreške za klasifikaciju u dva razreda Domena medicine: Osjetljivost – engl. sensitivity = broj_pozitivnih / broj_stvarnih_P Specifičnost – engl. specificity = broj_negativnih / broj_stvarnih_N Visoka osjetljivost (sensitivity) u dijagnostici bolesti: ispravno klasificiranje pacijenata koji imaju bolest. (pozitivni) Visoka specifičnost (specificity) u dijagnostici bolesti: ispravno klasificiranje pacijenata koji nemaju bolest (negativni). Teško je postići oboje ! T = ispravno F = krivo klasificirani svi stvarni P svi stvarni N

16 Otkrivanje znanja u skupovima podataka
Definicije indikatora pogreške za klasifikaciju u dva razreda Domena informacijski sustavi za dohvat podataka: Fokus na pozitivnom primjerima. Odziv (Opoziv) - engl. recall – kao i osjetljivost u medicini Preciznost – engl. precision = broj_pozitivnih / broj_svrstanih_u_P Neke dodatne izvedene mjere: kao u domeni medicine

17 Otkrivanje znanja u skupovima podataka
Definicije indikatora pogreške za klasifikaciju u dva razreda Učinkovitost sustava obično se mjeri frekvencijskim omjerima: C – stvarna pripadnost razredu (C+ = TP + FN, C- = FP + TN) R – pripadnost po klasifikatoru (R+ = TP + FP. R- = FN + TN) Nedostatak ovih mjera: različiti indikatori s različitim pridruženim značenjima. Cilj: vizualizirati više indikatora odjednom. Osjetljivost (sensitivity) TP / C+ Specifičnost (specificity) TN / C- Prediktivna vrijednost pozitivnih (+) TP / R+ Prediktivna vrijednost negativnih (-) TN / R- Točnost (accuracy), Uspješnost (success) (TP + TN) / ((C+) + (C-)) Pogreška (error rate) = 1 - točnost 1 ̶ [(TP + TN) / ((C+) + (C-))]

18 Otkrivanje znanja u skupovima podataka
Kappa statistika Primjer izvorne konfuzijske matrice za tri razreda: Testni skup ima 200 primjera. Od toga =140 je ispravno klasificirano (uspješnost je 140/200=0.7 , ili 70%). Klasifikator je svrstao (predvidio) 120 u razred “a”, 60 u razred “b” i 20 u razred “c”. Kako bi izgledala konfuzijska matrica za slučajan klasifikator koji bi svrstao isti broj primjera ( l) u pojedine razrde (a, b, c) u omjeru kao i promatrani klasifikator ?

19 Otkrivanje znanja u skupovima podataka
Kappa statistika Primjer konfuzijske matrice za tri razreda, slučajan klasifikator u istim omjerima: U takvom slučajnom klasifikatoru (koji je uzeo u obzir i omjere u izvornom klasificiranju) ispravno je klasificirano =82 primjera. Kappa oduzima tih 82 od uspješnosti izvornog klasifikatora (140-82=58) i stavlja u omjer prema oduzimanju tih 82 od idealnog klasifikatora (200). Kappa = (140 – 82) / (200 – 82) = 58/118, ili 49.2 %. Kappa statistika (maks=100%) izražava mjeru uspješnosti promatranog klasifikatora (140) prema idealnom (200) uz korekciju slučajnog izbora (82). Veći Kappa = bolji promatrani klasifikator prema slučajnom odabiru. Slučajni klasifikator: zadržava ukupno 100 ali je u omjeru (podijelimo s 2)

20 Otkrivanje znanja u skupovima podataka
Izražavanje pogrešaka ROC krivuljom (engl. Receiver operating characteristic) Cilj svakog klasifikatora je odrediti što veći postotak pravih pozitivnih primjera i što manji postotak krivih pozitivnih primjera. Grafički prikazujemo: na ordinati učestalost pravih pozitivnih (jednako kao osjetljivost ili odziv) = broj_pravih_pozitivnih / ukupan_broj_pozitivnih na apscisi učestalost krivih pozitivnih (to nije specifičnost) = broj_krivih_pozitivnih / ukupan_broj_negativnih

21 Otkrivanje znanja u skupovima podataka
Izražavanje pogrešaka ROC krivuljom Pretpostavimo mjerenje neke značajke (npr. očni tlak) u zdravih i bolesnih osoba (kontinuirane vrijednosti, normalna razdioba): Površina TN – sigurno nemaju bolest Površina TP – sigurno imaju bolest Površina FN – krivo svrstani da nemaju bolest Površina FP – krivo svrstani da imaju bolest Populacija (broj osoba na kojima je mjereno, normalna razdioba) Kontinuiranevrijednosti značajke Za neki prag: Kriterijska vrijednost (diskriminacijski prag) "Svi iznad praga su bolesni a ispod nisu."

22 Otkrivanje znanja u skupovima podataka
Izražavanje pogrešaka ROC krivuljom Svaki diskriminacijski prag daje neku vrijednost za tp i fp. Neka je to za naš primjer diskriminacijskog praga točka . Mjerenje na većem broju pragova daje tp-fp točke = ROC krivulja. Ako povećavamo diskriminacijski prag – slijedi manja učestalost krivih pozitivnih (smjer ) i naravno manja učestalost pravih.

23 Otkrivanje znanja u skupovima podataka
Izražavanje pogrešaka ROC krivuljom Dobar klasifikator nastoji s povećanjem diskriminacijskog praga znatno više smanjiti učestalost krivih pozitivnih nego što smanjuje učestalost pravih pozitivnih (razdiobe populacija pozitivnih i negativnih su više razdvojene). Što je klasifikator bolji (koncept je bolje naučen-generaliziran) to se njegova ROC krivulja približava gornjem lijevom uglu. Klasifikator s ROC krivuljom po dijagonali je slučajan izbor (nema kvalitete u određivanju pravih prema krivih pozitivnih). ROC krivulja je dobila ime iz područja detekcije signala gdje nastojimo razdvojiti prijam dva signala. Ocjenjivanje dva klasifikatora prema obliku ROC krivulje može slijediti i druge kriterije – vidi slijedeću sliku.

24 Otkrivanje znanja u skupovima podataka
Izražavanje pogrešaka ROC krivuljom Neka ROC krivulje za klasifikatore A i B imaju oblik kao na slici: Klasifikator A je bolji ako analiziramo mali uzorak pozitivnih primjera (npr. 40% pravih pozitivnih) i daje samo oko 5% krivih pozitivnih (klasifikator B bi dao više od 25% krivih pozitivnih) Klasifikator B je bolji ako analiziramo veći uzorak pozitivnih primjera (npr. 80% pravih pozitivnih) i daje 60% krivih pozitivnih (klasifikator A bi dao tek nešto manje od 80% krivih pozitivnih).

25 Otkrivanje znanja u skupovima podataka
Izražavanje pogrešaka ROC krivuljom U prethodnom primjeru za analizu pozitivnih uzoraka između 40% i 80% treba slučajno kombinirati klasifikatore A i B s odgovarajućim vjerojatnostima kako bi se ostvarile vanjske točke na osjenčanom području (konveksnoj plohi). Neka: A daje: tA (true rate), fA (false rate) pozitivnih B daje: tB (true rate), fB (false rate) pozitivnih Ako se sheme A i B koriste slučajnim izborom s vjerojatnošću p + q = 1 slijedi učestalost pravih i krivih pozitivnih primjera: p ٠ tA + q ٠ tB (true positive rate) p ٠ fA + q ٠ fB (false positive rate) To predstavlja točku na pravcu koji spaja: (tA, fA) i (tB, fB) Varijacija p i q pomiče točku duž pravca.

26 Otkrivanje znanja u skupovima podataka
Izražavanje pogrešaka krivuljom izdizanja (engl. lift chart) Vrlo česta primjena u području marketinga. Neka za klasifikaciju u dva razreda postupak učenja generira skup svih testnih primjera uređenih po predikciji vjerojatnosti pripadanja pozitivnom razredu (dakle ne po stvarnoj pripadnosti DA/NE nego po vjerojatnosti pripadanja koju je dao neki nesavršeni klasifikator). Za taj testni skup poznato je koji su pravi pozitivni primjeri. Odnos predikcijom po vjerojatnosti uređenih primjera i pravih pozitivnih je krivulja izdizanja. Tražimo klasifikator koji bi za neki podskup po vjerojatnosti uređenih primjera dao što više pravih pozitivnih primjera. Npr. postoji predikacija po vjerojatnosti uređenog testnog skupa osoba koje bi mogle odgovoriti na našu promotivnu akciju. Poznati su i pravi pozitivni (odgovorili su na akciju) u tom testnom skupu. Iz krivulje izdizanja za izgrađeni klasifikator i skup novih osoba uređenih po vjerojatnosti pripadanja pozitivnom razredu očekujemo koliko bi osoba u manjem skupu pripadalo pozitivnom razredu – npr odgovorilo na promotivnu akciju.

27 Otkrivanje znanja u skupovima podataka
Izražavanje pogrešaka krivuljom izdizanja Primjer krivulje izdizanja za skup testnih primjera (poznata klasifikacija) Na x osi su svi testni primjeri uređeni po padajućoj vjerojatnosti pripadanja pozitivnom razredu kako je dao klasifikator. Na y osi je broj poznatih (testnih) pravih pozitivnih primjera (od 0 do npr. 1000). Bez klasifikatora možemo tvrditi da ako slučajno uzmemo 40% svih primjera da će među njima vjerojatno biti 40% pravih pozitivnih (t.j 400). To je izbor po dijagonali na slici (slučajan izbor). S klasifikatorom ako uzmemo 40% prvih uređenih po vjerojatnosti, među njima će biti 80% pravih pozitivnih (t.j. 800), što je izdizanje 2 puta.

28 Otkrivanje znanja u skupovima podataka
Izražavanje pogrešaka krivuljom Odziv-Preciznost Primjer iz područje rukovanja dokumentima: Treba odabrati jedan od dva sustava A i B. A: na upit dohvaća 100 dokumenata u kojima je 40 relevantno. B: na upit dohvaća 400 dokumenata od kojih je 80 relevantno. Odgovor ovisi o relativnoj cijeni krivih pozitivnih (dokumenti koji su dohvaćeni ali nisu relevantni) i o relativnoj cijeni krivih negativnih (dokumenti koje sustav nije dohvatio a relevantni su). Primjena ranije definiranih mjera: broj_dohvaćenih_i_relevantnih_dokumenata Odziv = svi_relevantni_u_skupu (ne samo dohvaćeni) broj_dohvaćenih_i_relevantnih_dokumenata Preciznost = = (za A) svi_dohvaćeni Odnos Odziv-Preciznost za razne brojeve dokumenata čini krivulju koja govori o kakvoći sustava za dohvaćanje.

29 Otkrivanje znanja u skupovima podataka
Modificirani indikatori pogreške Umjesto minimizacije pogreške (ili omjera temeljenih na pogrešci) minimizira se cijena koštanja pogreške. Svakom tipu pogreške pridružena je težina pogrešne klasifikacije (kazna). Pojedinačna cijena je umnožak pogreške i njenog težinskog faktora. Iz pojedinačnih slijedi srednja i sumarna cijena. Za konfuzijsku matricu (za n razreda) postoji n2 vrijednosti. Ako je Eij broj pogrešaka za pojedini tip i Cij pridružena cijena, totalna cijena za krivu klasifikaciju je: U analizi rizika i analizi odluka treba koristiti cijenu (kaznu) i dobit. Racionalan cilj klasifikatora je u maksimiziranju dobiti, t.j.: maksimiziranje razlike u dobiti zbog ispravne klasifikacije i gubitaka zbog pogrešne klasifikacije.

30 Otkrivanje znanja u skupovima podataka
Pogreške u postupcima dubinske analize koji daju vjerojatnosti pripadnosti razredu Postupci dubinske analize podataka tipični klasificiraju primjere u jedan od unaprijed definiranih razreda. Neki postupci dubinske analize podataka (npr Bayes-ov) daju vjerojatnosti propadanja pojedinom razredu. Neka za k razreda postupak dubinske analize podataka generira za svaki primjer vektor vjerojatnosti: (p1 … pk), gdje je pj vjerojatnost pripadanja toga primjera j –tom razredu. Pri tome je za svaki primjer: j=1..k pj = 1 Analogno se može definirati vektor stvarnog pripadanja razredu za svaki primjer: (a1 … ak ), gdje je ai=1 za pripadnost i -tom razredu, a svi ostali a=0.

31 Otkrivanje znanja u skupovima podataka
Pogreške u postupcima dubinske analize koji daju vjerojatnosti pripadnosti razredu Pogreška temeljena na funkciji kvadrata gubitka (engl. quadratic loss function) Za pojedini primjer definiramo gubitak: j=1..k (pj – aj)2 Kako je samo jedan a=1 (ostali su 0), to u gornjoj sumi je doprinos krive klasifikacije (pj – 0)2 , odnosno (pi - 1 )2 je doprinos ispravne klasifikacije. Ako je i ispravan razred, gubitak za pojedini primjer iznosi: 1 – 2pi + j=1..k (pj) (gdje je k broj razreda) Formula slijedi uz (pi – 1)2 = 1 – 2pi + (pi)2 gdje je i ispravan razred, a član (pi)2 se uključuje u opću sumu. Naveden izraz se sumira po svim primjerima u testnom skupu.

32 Otkrivanje znanja u skupovima podataka
Pogreške u postupci dubinske analize koji daju vjerojatnosti pripadnosti razredu Pogreška temeljena na funkciji gubitka informacije (engl. information loss) Funkciju gubitka informacije definiramo: ̶ log2 pi gdje je i stvaran razred (ne uzima u obzir vjerojatnosti ostalih razreda). Jako penalizira male vjerojatnosti. Funkcija se izražava u bitovima i daje najmanji broj bitova s kojima se može izraziti (kodirati) informacija o ispravnoj klasifikaciji primjera u odnosu na razdiobu (p1 … pk ). Npr. bacanje novčića, dva razreda s jednakom vjerojatnosti, pojava “pisma” treba 1 bit jer: -log2 (1/2) = 1 (1/2 je vjerojatnost stvarnog razreda) Problem ako neka vjerojatnost = 0 (vidi Bayesov klasifikator).

33 Otkrivanje znanja u skupovima podataka
Pogreške u predviđanju numeričkih vrijednosti Mnogi postupci strojnog učenja predviđaju numeričke vrijednosti skupa primjera (a ne pripadnost razredu). Ranije definicije pogrešaka (pojedina pogreška postoji kao kriva klasifikacija) nisu u ovim slučajevima adekvatne. Pogreška ne samo da postoji ili ne nego ima i svoju numeričku mjeru. Neka za testni skup od n primjera (poznata je točna vrijednost svakog primjera) označimo: (p1, …, pn) - predviđene (strojno naučene) vrijednosti u skupu n primjera (to nisu vjerojatnosti) (a1, …, an) – stvarne vrijednosti u skupu n primjera Za pojedinu metodu (postupak) strojnog učenja definiraju se razne mjere za pogrešku za n primjera.

34 Otkrivanje znanja u skupovima podataka
Pogreške u predviđanju numeričkih vrijednosti

35 Otkrivanje znanja u skupovima podataka
Pogreške u predviđanju numeričkih vrijednosti Objašnjenje oznaka s prethodne slike (n primjera): Mean squared error - Srednja kvadratna pogreška. Root mean squared error – Korijen iz srednje kvadratne pogreške. Mean absolute error – Srednja apsolutna pogreška (ne uzima u obzir predznak, ne izdiže izuzetke (outliers) kao srednja kvadratna. Relative squared error – Relativna kvadratna pogreška. Relativno (normalizirano) prema jednostavnom prediktoru (t.j. srednjoj vrijednosti). Srednja vrijednost: Root relative squared error - Korijen iz relativne kvadratne pogreške. Relative absolute error – Relativna apsolutna pogreška. Također normalizirano prema jednostavnom prediktoru – srednjoj vrijednosti.

36 Otkrivanje znanja u skupovima podataka
Pogreške u predviđanju numeričkih vrijednosti Objašnjenje oznaka s prethodne slike: Correlation coefficient – Korelacijski koeficijent ( ap ) Mjeri statističku korelaciju između a-ova i p-ova. ap = 1 za potpuno korelirane, ap = 0 za nekorelirane, ap = -1 za negativno (suprotno) korelirane rezultate. ap se razlikuje od drugih mjera koje mijenjaju pogrešku ako se generirane (naučene) vrijednosti pi pomnože s istim faktorom a vrijednosti ai se ostave neizmijenjene . ap je neosjetljiv na skaliranje. Veći ap označuje bolji postupak strojnog učenja (kod ostalih mjera manje vrijednosti označuju bolji postupak strojnog učenja).

37 Otkrivanje znanja u skupovima podataka
Ispravna usporedba više postupaka dubinske analize podataka Pri predlaganju novog postupka strojnog učenja potrebno je usporediti njegovu učinkovitost s uobičajenim postupcima na istom problemu (skupu podataka). Za veliki skup podataka (vid ranije graf mogućeg odstupanja pogreške) provodi se međuvalidacija s približno jednako velikim skupovima slučajno odabranim iz domene kao i u postupku s kojim se komparira, te računa srednja pogreška. Međutim, traži se usporedba postupaka za cijelu domenu, t.j. za sve moguće podskupove za učenje i testiranje. Međuvalidacijom se slučajno odabiru primjeri pa je potrebno utvrditi da li se dobivena srednja pogreška statistički signifikantno razlikuje za npr. dva postupka koja uspoređujemo. Za utvrđivanje signifikantne razlike koristi se t-test (Student t-test), odnosno Udvojeni (engl paired) t-test) jer se radi o usporedbi dva postupka s istim mađuvalidacijskim eksperimentom.

38 Otkrivanje znanja u skupovima podataka
Rukovanje skupom atributa (značajki) Odabir relevantnih atributa Konstrukcija novih atributa Smanjenje dimenzionalnosti

39 Otkrivanje znanja u skupovima podataka
Uvodno: Svi atributi nisu jednako relevantni za uspješnost klasifikacije ili predikcije Atribut s vrlo malo vrijednosti u svojoj koloni je irelevantan Atribut čija se numerička vrijednost vrlo malo mijenja je irelevantan Atribut koji predstavlja dupliranje drugog atributa je irelevantan Atributi koji su korelirani međusobno a nisu korelirani s ciljnim atributom su irelevantni Irelevantni atributi usporavaju postupke analize i negativno utječu na rezultat Vrlo jednostavan algoritam One_R izdvaja najznačajniji atribut i često se upotrebljava u ocjeni atributa

40 Otkrivanje znanja u skupovima podataka
Proces odabira relevantnih atributa (engl. feature selection, attribute selection, variable selection) Reducira broj potrebnih atributa u skupu podataka. Otkriva i izbacuje nepotrebne, irelevantne i redundantne atribute koji ne doprinose točnosti predikcije. Proces odabira rezultira u podskupu izvornih atributa Ciljevi procesa odabira samo relevantnih atributa: povećati točnost, ubrzati rad, povećati bolje razumijevanje procesa koji je generirao podatke Odabir relevantnih atributa može se promatrati kao kombinacija pretraživanja prostora atributa i ocjene uspješnosti postupka dubinske analize svakog podskupa (npr. učestalost pogreške)

41 Otkrivanje znanja u skupovima podataka
Prema pristupu evaluacijskoj metrici u procesu odabira podskupa relevantnih atributa razlikujemo: Postupci omotača (engl. wrapper) Filtarski postupci (engl. filters) Ugrađeni postupci (engl. embedded) Odabir atributa postupcima omotača Koriste odabrani klasifikacijski/prediktivni model za evaluaciju podskupova atributa. Svaki podskup atributa sudjeluje u učenju modela te se mjeri uspješnost na skupu primjera za testiranje. Budući da svaki podskup sudjeluje u učenju, postupak je računalno dugotrajan ali daje najbolji podskup za odabrani prediktivni model Postoji opasnost od prevelikog slaganja s podacima za učenje (engl. overfitting)

42 Otkrivanje znanja u skupovima podataka
Filtarski postupci odabira atributa Slični su postupcima omotača ali za evaluaciju ne koriste odabrani prediktivni model već neku drugu mjeru koja ubrzava postupak Uobičajene mjere uključuju: Informacijska dobit (entropija) ili GINI „nečistoća” Korelacijski koeficijent Udaljenost razreda u klasifikaciji Test signifikantnosti za svaku kombinaciju razred/atributi Filtarski postupci nisu prilagođeni pojedinom prediktivnom modelu pa se rabe u fazi pred-procesiranja Podskup atributa izdvojen filtarskom metodom je općenitiji od skupa izdvojenog postupkom omotača Neki filtri daju prioritetni slijed atributa umjesto najboljeg podskupa a odabir broja atributa s vrha liste izvodi se mađuvalidacijom

43 Otkrivanje znanja u skupovima podataka
Ugrađeni postupci odabira atributa Ova grupa postupaka uključena je u tehnike koje se koriste tijekom procesa izgradnje klasifikacijskog/prediktivnog modela Posebno se koriste u regresijskoj analizi (LASSO, RIDGE, …) gdje se regresijski koeficijenti penaliziraju po nekoj metrici,, zatim u klasifikaciji slučajnim šumama (engl. random forest), i sl. Ugrađen postupak vrijedi samo za odabrani algoritam (npr. za Suppot Vector Machine – SVM, nije uporabiv za stabla odlučivanja) Postupak vraća skup atributa + klasifikator/prediktor Nije podložan prevelikom slaganju s podacima za učenje (engl. overfitting) Po brzini je između filtarskih i postupaka omotača

44 Otkrivanje znanja u skupovima podataka
Svaki postupak odabira relevantnog podskupa atributa sastoji se iz dva stupnja: Pretraživanje prostora atributa i formiranje podskupa Ocjena kvalitete podskupa atributa Iscrpno pretraživanje (engl. Exhaustive) Prvi najbolji (engl. Best first) Simulirano napuštanje (enl. Simulated annealing) Genetski algoritam Pohlepno pretraživanje prema naprijed (Greedy forward selection) Pohlepno pretraživanje prema natrag G(reedy backward elimination) Optimizacija rojem čestica (engl. Particle swarm optimization) Raspršenoo pretraživanje (engl. Scatter Search) . . .

45 Otkrivanje znanja u skupovima podataka
Neki postupci pretraživanja Iscrpno pretraživanje Uzima sve kombinacije atributa (sve podskupove) Računalno nije izvedivo osim za male podskupove; (2n ) Pohlepna pretraživanja (prema naprijed i prema natrag, kombinacija) Jednostavan heuristički algoritam (heuristički = ne garantira najbolje rješenje) Prema naprijed: Na svaki pojedinačni atribut primijeni se odabrana mjera uspješnosti klasifikacije. Uzima se najbolji. Najbolji atribut se uparuje s svim ostalima pojedinačno i mjeri se uspješnost. Najbolji par proširuje se s preostalim pojedinačnim atributima Nastavlja se sve dok se ne postigne kriterij završetka (npr. stagniranje uspješnosti klasifikacije ili utvrđeni broj atributa)

46 Otkrivanje znanja u skupovima podataka
Pohlepno pretraživanje prema natrag (eliminacija): Započinje se s punim skupom atributa Oduzima se pojedinačni atribut i mjeri (ne)uspješnost Odbacuje se najneuspješniji atribut ili skup najneuspješnijih Postupak se rekurzivno ponavlja do kriterija završetka (najčešće konačan broj atributa) Pohlepno pretraživanje prema naprijed i natrag može se kombinirati u bidirekcijsko pretraživanje Ako se u postupku u svakom koraku pamti nekoliko najuspješnijih podskupova radi se o zrakastom pretraživanju (engl. Beam search) Pretraživanje prema prvom najboljem (engl. Best first) Pretraživanje se ne zaustavlja kada uspješnost predikcije/klasifikacije pada (kao kod pohlepnog pretraživanja) Čuva se lista podskupova anaiziranih do tada i uređenih po uspješnosti na koje se pretraživanje može vratiti

47 Otkrivanje znanja u skupovima podataka
Ocjena kvalitete podskupa atributa Informacijska dobit (engl. Information gain) Omjer informacijske dobiti (engl. Gain ratio) Simetrična neizvjesnost (engl. Symetrical uncerainty) Međusobna informacija (engl. Mutual information) GINI indeks Chi-Square Euklidska udaljenost T-test Minimum redundancije i maksimum relevantnosti (mRmR) Fisher-ova mjera Korelacijski zasnovana mjera Las Vegas filter . . .

48 Otkrivanje znanja u skupovima podataka
Neki postupci ocjene kvalitete podskupa atributa Informacijska dobit - vidi stabla odlučivanja GINI indeks – vidi slučajne šume Euklidska udaljenost – vidi Učenje i klasifikacija temeljena na pohranjenim primjerima (engl. Instance based learning) Korelacijski zasnovana mjera – vidi CoiL_natjecanje

49 Otkrivanje znanja u skupovima podataka
Procesi kreiranja atributa (engl. Feature extraction) To su procesi u kojima temeljem izvornih atributa nastojimo kreirati novi manji, informativniji, neredundantni skup s ciljem točnijeg i lakše shvatljivog rješenja zadatka predikcije/klasifikacije. Rezultira u manjem skupu atributa ali ovisi o primjeni. Proces se često naziva i smanjenje dimenzzionalnosti. Neke tehnike: Independent component analysis Stroj potpornih vektora (SVM) Partial least squares Principal component analysis (PCA) Multifactor dimensionality reduction Nonlinear dimensionality reduction Multilinear Principal Component Analysis Multilinear subspace learning


Download ppt "Otkrivanje znanja u skupovima podataka"

Similar presentations


Ads by Google