Izbor značilnosti v strojnega učenja

Hello, Habr!

Mi v 'Rexoft' smo preveli članek v slovenščino Izbira funkcij v strojnih učenju. Upamo, da bo vsem, ki jih zanima ta tema, v pomoč.

V resničnem svetu podatki niso vedno tako čisti, kot si pogosto mislijo poslovni naročniki. Zato je povpraševanje po inteligentni analizi podatkov (data mining in data wrangling) vse večje. Pomaga odkrivati manjkajoče vrednosti in vzorce v strukturiranih podatkih z zahtevami, ki jih človek ne more ugotoviti. Da bi našli in uporabili te vzorce za napovedovanje rezultatov z uporabo odkritih povezav v podatkih, bo uporabno strojno učenje (Machine Learning).

Za razumevanje katerega koli algoritma je potrebno pregledati vse spremenljivke v podatkih in ugotoviti, kaj te spremenljivke predstavljajo. To je izjemno pomembno, ker so rezultati upravičeni na podlagi razumevanja podatkov. Če podatki vsebujejo 5 ali celo 50 spremenljivk, je mogoče vse preučiti. Kaj pa, če jih je 200? Takrat časa za preučitev vsake posamezne spremenljivke preprosto ne bo dovolj. Poleg tega nekateri algoritmi ne delujejo na kategorijskih podatkih, zato bo treba vse kategorijske stolpce pretvoriti v kvantitativne spremenljivke (morda se zdi, da so kvantitativni, a metrični podatki bodo pokazali, da so kategorijski), da jih vključimo v model. Tako se število spremenljivk poveča, kar pomeni približno 500. Kaj storiti zdaj? Morda bo odgovor zmanjšanje dimenzionalnosti. Algoritmi za zmanjšanje dimenzionalnosti zmanjšajo število parametrov, vendar negativno vplivajo na interpretacijo. Kaj pa, če obstajajo druge tehnike, ki izključijo spremenljivke in hkrati omogočajo enostavno razumevanje in interpretacijo preostalih?

Glede na to, ali je analiza osnovana na regresiji ali klasifikaciji, se lahko algoritmi za izbiro funkcij razlikujejo, toda osnovna ideja njihove implementacije ostaja enaka.

Močno korelirane spremenljivke

Močno korelirane spremenljivke med seboj dajejo modelu enake informacije, zato ni potrebno uporabiti vseh za analizo. Na primer, če podatkovni niz vsebuje značilnosti "Čas v omrežju" in "Porabljen promet", lahko domnevamo, da bosta nekako korelirani, in videli bomo močno korelacijo, tudi če izberemo nepristransko vzorčenje podatkov. V tem primeru je v modelu potrebna le ena od teh spremenljivk. Če uporabimo obe, bo model preveč usposobljen (overfit) in pristranski glede na eno samo značilnost.

P-vrednosti

V takšnih algoritmih, kot je linearna regresija, je začetni statistični model vedno dobra ideja. Pomaga pokazati pomembnost značilnosti s pomočjo njihovih p-vrednosti, pridobljenih s tem modelom. Z določitvijo nivoja pomembnosti preverjamo pridobljene p-vrednosti, in če se izkaže, da je katera koli vrednost pod določenim nivojem pomembnosti, se ta značilnost razglasi za pomembno, kar pomeni, da bo sprememba njene vrednosti verjetno vodila do spremembe vrednosti cilja (target).

Neposredna izbira

Neposredna izbira je tehnika, ki vključuje korak po koraku regresijo. Gradnja modela se začne iz popolne ničle, torej praznega modela, nato pa vsaka iteracija doda spremenljivko, ki prispeva k izboljšanju gradnjenega modela. To, katera spremenljivka se doda v model, je določeno njena pomembnostjo. To lahko izračunamo z uporabo različnih metrik. Najpogostejša metoda je uporaba p-vrednosti, pridobljenih v izvorni statistični obliki z uporabo vseh spremenljivk. Včasih lahko neposredna izbira privede do preusposobitve modela, ker se v modelu lahko znajdejo močno korelirane spremenljivke, čeprav nudijo enake informacije modelu (pri tem pa model kaže izboljšanje).

Obratna izbira

Obratni izbor pomeni korak za korakom izključitev značilnosti, vendar v nasprotni smeri v primerjavi s neposrednim. V tem primeru začetni model vključuje vse neodvisne spremenljivke. Nato se spremenljivke izključijo (po eno na iteracijo), če ne prinašajo vrednosti za nov regresijski model v vsaki iteraciji. Osnova izključitve značilnosti so p-vrednosti začetnega modela. Tudi v tej metodi obstaja negotovost pri odstranjevanju močno koreliranih spremenljivk.

Rekurzivno izključevanje značilnosti

RFE je široko uporabljena tehnika/algoritem za izbiro natančnega števila pomembnih značilnosti. Včasih se metoda uporablja za razlago določenega števila 'najpomembnejših' značilnosti, ki vplivajo na rezultate; drugič pa za zmanjšanje zelo velikega števila spremenljivk (približno 200-400), pri čemer se obdržijo le tiste, ki prispevajo k modelu, vse ostale pa se izločijo. RFE uporablja sistem rangiranja. Znač ilnostim v podatkovnem naboru se dodelijo rangi. Ti rangi se nato uporabljajo za rekurzivno izključevanje značilnosti glede na kolinearnost med njimi in pomembnost teh značilnosti v modelu. Poleg rangiranja značilnosti lahko RFE pokaže, ali so te značilnosti pomembne ali ne celo za dano število značilnosti (saj je zelo verjetno, da je izbrano število značilnosti lahko suboptimalno, optimalno število značilnosti pa je lahko tako večje kot manjše od izbranega).

Diagram pomembnosti značilnosti

Ko govorimo o interpretabilnosti algoritmov strojnega učenja, običajno razpravljamo o linearnih regresijah (ki omogočajo analizo pomembnosti značilnosti z uporabo p-vrednosti) in drevesih odločitev (ki dobesedno prikazujejo pomembnost značilnosti v obliki drevesa, pa tudi njihovo hierarhijo). Po drugi strani pa algoritmi, kot so Random Forest, LightGBM in XG Boost, pogosto uporabljajo diagram pomembnosti značilnosti, torej se gradi diagram spremenljivk in 'števila njihove pomembnosti'. To je še posebej koristno, ko je treba zagotoviti strukturirano utemeljitev pomembnosti značilnosti glede na njihov vpliv na poslovanje.

Redukcija

Redukcija je potrebna za kontrolu ravnoteže između pristrasnosti (bias) i varijance (variance). Pristrasnost pokazuje koliko je model prekomerno prilagođen (overfit) podacima za obuku. Varijanca pokazuje koliko su predviđanja bila različita između trening i testnog skupa podataka. Idealno bi bilo da su i pristrasnost i varijanca mali. Tu dolazi do izražaja redukcija! Postoje dve osnovne tehnike:

L1 redukcija – Lasso: Lasso kažnjava težine modela kako bi promenio njihovu važnost za model i može čak i da ih nula (tj. da ukloni te varijable iz konačnog modela). Obično se Lasso koristi kad skup podataka sadrži veliki broj varijabli i potrebno je isključiti neke od njih kako bi se bolje razumele kako važni atributi utiču na model (tj. oni atributi koje je Lasso izabrao i kojima je dodeljena važnost).

L2 redukcija – Ridge metodom: Cilj Ridge-a je da sačuva sve varijable i istovremeno im dodeli važnost na osnovu doprinosa efikasnosti modela. Ridge će biti dobar izbor ako skup podataka sadrži mali broj varijabli i sve su potrebne za tumačenje zaključaka i dobijenih rezultata.

Pošto Ridge zadržava sve varijable, dok Lasso bolje definiše njihovu važnost, razvijen je algoritam koji kombinuje najbolje osobine oba pristupa i poznat je kao Elastic-Net.

Postoji još mnogo načina za odabir osobina za mašinsko učenje, ali glavna ideja uvek ostaje ista: pokazati važnost varijabli, a zatim isključiti neke od njih na osnovu dobijene važnosti. Važnost je veoma subjektivan termin, jer to nije samo jedna, već čitav niz metrika i dijagrama koji se mogu koristiti za pronalaženje ključnih osobina.

Hvala na čitanju! Srećno u učenju!

Izvor: habr.com

Kupite zanesljivo gostovanje za spletne strani z zaščito pred DDoS, VPS VDS strežniki 🔥 Kupite zanesljivo gostovanje za spletne strani z zaščito pred DDoS, VPS VDS strežniki | ProHoster