Ominaisuuden valinta koneoppimisessa

Hei Habr!

Me Reksoftilla käänsimme artikkelin venäjäksi Ominaisuuden valinta koneoppimisessa. Toivomme, että siitä on hyötyä kaikille aiheesta kiinnostuneille.

Todellisessa maailmassa data ei aina ole niin puhdasta kuin yritysasiakkaat joskus ajattelevat. Siksi tiedon louhinta ja datariita ovat kysyttyjä. Se auttaa tunnistamaan kyselyrakenteisista tiedoista puuttuvat arvot ja mallit, joita ihmiset eivät voi tunnistaa. Koneoppiminen on hyödyllistä, jotta voit löytää ja käyttää näitä malleja tulosten ennustamiseen käyttämällä tiedosta löydettyjä suhteita.

Ymmärtääksesi minkä tahansa algoritmin, sinun on tarkasteltava kaikkia datan muuttujia ja selvitettävä, mitä nämä muuttujat edustavat. Tämä on kriittistä, koska tulosten taustalla oleva perustelu perustuu tietojen ymmärtämiseen. Jos data sisältää 5 tai jopa 50 muuttujaa, voit tarkastella niitä kaikkia. Entä jos niitä on 200? Silloin ei yksinkertaisesti ole tarpeeksi aikaa tutkia jokaista muuttujaa. Lisäksi jotkin algoritmit eivät toimi kategorisille tiedoille, ja sitten sinun on muutettava kaikki kategorialliset sarakkeet kvantitatiivisiksi muuttujiksi (ne voivat näyttää kvantitatiivisilta, mutta mittarit osoittavat, että ne ovat kategorisia) lisätäksesi ne malliin. Näin ollen muuttujien määrä kasvaa, ja niitä on noin 500. Mitä tehdä nyt? Voidaan ajatella, että vastaus olisi ulottuvuuden vähentäminen. Dimensioiden vähentämisalgoritmit vähentävät parametrien määrää, mutta niillä on negatiivinen vaikutus tulkittavuuteen. Entä jos on olemassa muita tekniikoita, jotka poistavat ominaisuuksia ja tekevät lopuista helppo ymmärtää ja tulkita?

Sen mukaan, perustuuko analyysi regressioon vai luokitukseen, ominaisuuden valintaalgoritmit voivat vaihdella, mutta niiden toteutuksen pääidea pysyy samana.

Erittäin korreloidut muuttujat

Muuttujat, jotka korreloivat voimakkaasti keskenään, antavat mallille saman tiedon, joten niitä kaikkia ei tarvitse käyttää analysointiin. Jos tietojoukko sisältää esimerkiksi ominaisuudet "Online Time" ja " Traffic Used", voimme olettaa, että ne korreloivat jossain määrin, ja näemme vahvan korrelaation, vaikka valitsisimme puolueettoman datanäytteen. Tässä tapauksessa mallissa tarvitaan vain yksi näistä muuttujista. Jos käytät molempia, malli on ylisovitettu ja painottuu yhteen tiettyyn ominaisuuteen.

P-arvot

Algoritmeissa, kuten lineaarisessa regressiossa, alkuperäinen tilastollinen malli on aina hyvä idea. Se auttaa osoittamaan ominaisuuksien tärkeyden niiden p-arvojen kautta, jotka saatiin tällä mallilla. Kun merkitsevyystaso on asetettu, tarkistamme saadut p-arvot, ja jos jokin arvo on määritellyn merkitsevyystason alapuolella, tämä ominaisuus julistetaan merkittäväksi, eli sen arvon muutos johtaa todennäköisesti arvon muutokseen. kohde.

Suora valinta

Eteenpäinvalinta on tekniikka, joka sisältää vaiheittaisen regression soveltamisen. Mallin rakentaminen alkaa täydellisestä nollasta, eli tyhjästä mallista, ja sitten jokainen iteraatio lisää muuttujan, joka parantaa rakennettavaa mallia. Se, mikä muuttuja malliin lisätään, määräytyy sen merkityksen mukaan. Tämä voidaan laskea eri mittareilla. Yleisin tapa on käyttää alkuperäisessä tilastomallissa saatuja p-arvoja käyttäen kaikkia muuttujia. Joskus eteenpäinvalinta voi johtaa mallin ylisovittamiseen, koska mallissa voi olla erittäin korreloituja muuttujia, vaikka ne antaisivatkin mallille saman tiedon (mutta mallissa on silti parannusta).

Käänteinen valinta

Käänteinen valinta sisältää myös ominaisuuksien vaiheittaisen eliminoinnin, mutta päinvastaiseen suuntaan kuin eteenpäin. Tässä tapauksessa alkuperäinen malli sisältää kaikki riippumattomat muuttujat. Muuttujat eliminoidaan sitten (yksi per iteraatio), jos ne eivät anna arvoa uudelle regressiomallille kussakin iteraatiossa. Ominaisuuden poissulkeminen perustuu alkuperäisen mallin p-arvoihin. Tällä menetelmällä on myös epävarmuutta poistettaessa erittäin korreloituja muuttujia.

Rekursiivisen ominaisuuden eliminointi

RFE on laajalti käytetty tekniikka/algoritmi merkittävien ominaisuuksien tarkan määrän valitsemiseen. Joskus menetelmää käytetään selittämään useita "tärkeimpiä" ominaisuuksia, jotka vaikuttavat tuloksiin; ja joskus pienentää hyvin suurta määrää muuttujia (noin 200-400), ja vain ne, jotka edesauttavat mallia, säilytetään, ja kaikki muut jätetään pois. RFE käyttää luokitusjärjestelmää. Tietojoukon ominaisuuksille on määritetty arvoja. Näitä arvoja käytetään sitten ominaisuuksien rekursiiviseen eliminointiin perustuen niiden väliseen kollineaarisuuteen ja näiden ominaisuuksien tärkeyteen mallissa. Ominaisuuksien luokittelun lisäksi RFE voi näyttää, ovatko nämä ominaisuudet tärkeitä vai eivät edes tietylle määrälle ominaisuuksia (koska on hyvin todennäköistä, että valittu ominaisuuksien määrä ei ehkä ole optimaalinen, ja optimaalinen ominaisuuksien määrä voi olla joko enemmän tai pienempi kuin valittu numero).

Ominaisuuden tärkeyskaavio

Koneoppimisalgoritmien tulkittavuudesta puhuttaessa keskustelemme yleensä lineaarisista regressioista (joiden avulla voit analysoida ominaisuuksien tärkeyttä p-arvojen avulla) ja päätöspuista (kirjaimellisesti osoittavat ominaisuuksien tärkeyden puun muodossa, ja samalla niiden hierarkia). Toisaalta algoritmit, kuten Random Forest, LightGBM ja XG Boost, käyttävät usein ominaisuuden tärkeyskaaviota, toisin sanoen piirretään kaavio muuttujista ja "niiden tärkeysnumeroista". Tämä on erityisen hyödyllistä, kun sinun on esitettävä jäsennelty perustelu attribuuttien tärkeydelle niiden vaikutuksen kannalta liiketoimintaan.

Laillistaminen

Regularisointi tehdään harhan ja varianssin välisen tasapainon hallitsemiseksi. Bias näyttää kuinka paljon malli on ylisovitettu harjoitustietojoukossa. Poikkeama osoittaa, kuinka erilaiset ennusteet olivat koulutus- ja testiaineistojen välillä. Ihannetapauksessa sekä harhan että varianssin tulisi olla pieniä. Tässä laillistaminen tulee apuun! On olemassa kaksi päätekniikkaa:

L1-regulointi - Lasso: Lasso rankaisee mallin painotuksia muuttaakseen niiden tärkeyttä mallille ja voi jopa nollata ne (eli poistaa kyseiset muuttujat lopullisesta mallista). Tyypillisesti Lassoa käytetään, kun tietojoukko sisältää suuren määrän muuttujia ja haluat sulkea pois osan niistä ymmärtääksesi paremmin, kuinka tärkeät ominaisuudet vaikuttavat malliin (eli ne ominaisuudet, jotka Lasso on valinnut ja joille on annettu tärkeys).

L2 Regularisointi - Ridge-menetelmä: Ridgen tehtävänä on tallentaa kaikki muuttujat ja samalla antaa niille merkitys sen mukaan, miten ne vaikuttavat mallin suorituskykyyn. Ridge on hyvä valinta, jos aineisto sisältää pienen määrän muuttujia ja ne kaikki ovat välttämättömiä havaintojen ja saatujen tulosten tulkitsemiseksi.

Koska Ridge säilyttää kaikki muuttujat ja Lasso pystyy paremmin määrittämään niiden tärkeyden, kehitettiin algoritmi, joka yhdistää molempien regularisaatioiden parhaat ominaisuudet, joka tunnetaan nimellä Elastic-Net.

On monia muitakin tapoja valita ominaisuuksia koneoppimiseen, mutta pääidea on aina sama: näytä muuttujien tärkeys ja sitten eliminoi osa niistä saadun tärkeyden perusteella. Tärkeys on hyvin subjektiivinen termi, koska se ei ole vain yksi, vaan koko joukko mittareita ja kaavioita, joita voidaan käyttää tärkeimpien attribuuttien löytämiseen.

Kiitos, että luit! Hyvää oppimista!

Lähde: will.com

Lisää kommentti