Feature selectie: Waarom meer data niet altijd beter is!

blog-header

Door de informatie-explosie die de laatste decennia heeft plaatsgevonden is er een analysekloof ontstaan. Dit betekent dat de productie van gegevens veel sneller is toegenomen dan ons vermogen om het te analyseren.

Daarnaast ontstaat er in een hoge dimensie de vloek van dimensionaliteit. Wanneer je dataset een groot aantal variabelen bevat loop je bijvoorbeeld het risico op overfitting. Dit verschijnsel treedt op wanneer algoritmen in staat zijn de train data perfect te fitten. Hierdoor wordt het voor Machine Learning algoritmen lastig om patronen in de data te ontdekken, zonder dat er enorm veel trainingsdata is.

Door de grote hoeveelheid data die tegenwoordig beschikbaar is, en de bijbehorende nadelen van een hoge dimensie is er een focus ontstaan op het verminderen van het aantal features in de data. Je wilt enkel de relevante variabelen in je dataset houden, en de irrelevante variabelen weglaten. Om dit te realiseren zijn er verschillende feature-selectie methoden ontwikkeld.

 

Wat is feature selectie?

Zoals eerder benoemd wil je als Data Scientist enkel de meeste relevante variabelen in je model gebruiken. Feature selectie is het proces van het selecteren van deze variabelen.
Hierdoor zal je model beter presteren en zullen de rekenkosten verlagen. Daarnaast kun je de uitkomsten van het model beter analyseren.

Er bestaan verschillende type feature selectie methoden, die kunnen worden geclassificeerd onder wrapper methoden, filter methoden en embedded methoden. Daarnaast bestaan er feature projectie methoden. Deze hebben ook als doel om de dimensie van de dataset te reduceren, maar doen dit door de oorspronkelijke set variabelen de transformeren naar een lagere dimensie, in plaats van het selecteren van de meest relevante variabelen.

 

Wrapper methoden

Bij wrapper methoden is het de bedoeling dat je al een algoritme en prestatiemaatstaf hebt gekozen die je wilt gaan gebruiken. Met wrapper methoden test je de prestatie van je model voor alle mogelijke verschillende feature subsets. Vervolgens wordt die feature subset gekozen waarbij de prestatie van het model optimaal is. Er zijn diverste wrapper technieken die verschillen in het samenstellen van de set aan feature subsets die geëvalueerd moeten worden:

  • Forward feature selection: Hierbij start je met de variabele die het beste de target variabele kan verklaren. Vervolgens selecteer je de volgende variabele die in combinatie met de al gekozen variabele de beste modelprestatie oplevert. Dit proces blijft doorgaan totdat de prestatie niet meer stijgt, of totdat je maximum is bereikt van het aantal features dat je in je model wilt hebben.
  • Backward feature eliminatie: Hier start je met alle variabelen in je model. Daarna verwijder je die variabele waarvoor de prestatie van de overgebleven features het best is. Dit blijf je doen totdat de prestatie stagneert.
  • Exhaustive feature selection: Hierbij worden alle mogelijke subsets geëvalueerd en vergeleken. Dit is de meest robuuste methode, maar kost ook de meeste tijd omdat alle mogelijke combinaties moeten worden geëvalueerd. De subset die het best presteert wordt gekozen.
Een voordeel van wrapper methoden is dat er rekening gehouden wordt met met de prestatie van combinaties van features. Echter, voor grote datasets kan dit een langdurig proces zijn. Stel je hebt meer dan 50 features in je data, dan zou je ten minste 1275 keer je model moeten trainen om elke mogelijke feature subset te testen. Dit laatste is een groot nadeel van wrapper methoden.

 

Filter methoden

Filter methoden gebruiken statistische technieken om het belang van features in de dataset te meten. Voorbeelden van zulke statistische techieken zijn de correlatie met de output variabele, de variantie van de features en de chi-square test. Een voordeel is dat deze methoden rekenkundig snel en goedkoop zijn. Echter, deze statistische technieken worden op individuele features toegepast waardoor geen rekening wordt gehouden met interacties tussen variabelen. Dit laatste is een nadeel van filter methoden.

 

Embedded methoden

Embedded methoden beschikken over de voordelen van zowel wrapper als filter methoden. Naast lage rekenkosten houden deze methoden rekening met effecten van feature combinaties. Met behulp van algoritmen worden de meest relevante features uit de data gehaald. Hierbij worden bepaalde criteria gebruikt om te bepalen welke features het meest bijdragen in het trainen van het model. Twee populaire embedded feature selection methoden zijn:

  • Lasso regularisatie: Regularisatie algoritmen voegen een penalty term toe aan een model. Hierdoor worden parameters van irrelevante features op nul gezet, waardoor enkel de meest belangrijke variabelen over blijven. Hierdoor is dit algoritme goed geschikt voor feature selectie.
  • Random Forest: Random Forest maakt gebruik van meerdere beslisbomen om voorspellingen te maken. De splitsingen in de bomen worden bepaald aan de hand van de impurity van de features. Bij het bepalen van het belang van de variabelen kan de gemiddelde afname in knooppunt impurity gebruikt worden. Hoe groter de daling in de impurity, hoe belangrijker de variabele is voor het trainen van het model. Variabelen met slechts een kleine daling in de impurity worden dus als irrelevant gezien en kunnen uit de dataset worden verwijderd.

Feature projectie methoden

Voor bovengenoemde feature selectie methoden was er meestal een uitkomstvariabele nodig in de dataset. Oftewel, deze methoden zijn geschikt voor supervised learning problemen. Naast supervised learning bestaat er unsupervised learning, waarbij er geen uitkomstvariabele in de data aanwezig is. Denk hierbij bijvoorbeeld aan clustering problemen. Ook binnen de unsupervised learning is een overschot aan features nadelig.

Een alternatief voor unsupervised learning om het aantal variabelen te verminderen is het inzetten van feature projectie methoden, ook wel dimensie reductietechnieken genoemd. In plaats van het zoeken naar de beste variabelen om in je model te behouden, vinden dimension reductietechnieken juist een combinatie van nieuwe variabelen, terwijl ze zo veel mogelijk van de variantie in de originele dataset proberen te behouden. Het transformeert de oorspronkelijke set verklarende variabelen naar een lagere dimensie.

Feature selectie voor unsupervised learning wordt daarom ook wel feature projection genoemd. De twee meest gebruikte projectie methoden zijn Principal Component Analysis (PCA), Linear Discriminant Analysis (LDA).

Dimensie_reductieConclusie

In deze blog hebben we verschillende feature selectie methoden beschreven waarmee het aantal dimensies in een dataset gereduceerd kan worden. Afhankelijk van het Data Science probleem en de beschikbare tijd kan met behulp van deze blog een goede keuze gemaakt worden welke feature selectie methode geschikt is voor het specifieke probleem. Voor supervised learning kunnen wrapper, filter en embedded methoden overwogen worden. Gebruik je unsupervised learning? Ga dan voor een feature projectie methode

Meer weten?

Wil je meer weten over feature selectie in een Data Science project? Download dan de whitepaper "De 6 basisprincipes van een Data Science Project".

De 6 Basisprincipes van een Data Science Project