Kenmerkselectie in machine learning

Hallo, Habr!

Bij 'Rexoft' hebben we een artikel naar het Nederlands vertaald Kenmerkselectie in Machine Learning. We hopen dat het nuttig zal zijn voor iedereen die geĆÆnteresseerd is in het onderwerp.

In de echte wereld zijn gegevens niet altijd zo schoon als vaak gedacht wordt door zakelijke opdrachtgevers. Dat is precies de reden waarom er vraag is naar intellectuele data-analyse (data mining en data wrangling). Het helpt bij het identificeren van ontbrekende waarden en patronen in gestructureerde gegevens via queries die door mensen niet kunnen worden herkend. Om deze patronen te vinden en te gebruiken voor het voorspellen van uitkomsten, door middel van de ontdekte relaties in de gegevens, is machine learning (Machine Learning) nuttig.

Om een algoritme te begrijpen, is het noodzakelijk om alle variabelen in de gegevens te bekijken en te begrijpen wat deze variabelen vertegenwoordigen. Dit is van cruciaal belang omdat de verantwoording van de resultaten afhankelijk is van het begrip van de gegevens. Als de gegevens 5 of zelfs 50 variabelen bevatten, kun je ze allemaal bestuderen. Maar wat als het er 200 zijn? Dan heb je gewoon niet genoeg tijd om elke afzonderlijke variabele te bestuderen. Bovendien werken sommige algoritmen niet voor categorische gegevens, en dan moeten alle categorische kolommen worden omgevormd naar kwantitatieve variabelen (ze kunnen er kwantitatief uitzien, maar de metrics zullen tonen dat ze categorisch zijn) om ze in het model op te nemen. Op deze manier neemt het aantal variabelen toe, en zijn er ongeveer 500. Wat nu te doen? Je zou kunnen denken dat de oplossing het verlagen van de dimensie is. Dimensionaliteitsreductie-algoritmen verminderen het aantal parameters, maar hebben een negatieve invloed op de interpreteerbaarheid. Wat als er andere technieken bestaan die kenmerken uitsluiten en tegelijkertijd het gemakkelijk maken om de overblijvende te begrijpen en te interpreteren?

Afhankelijk van of de analyse is gebaseerd op regressie of classificatie, kunnen de algoritmen voor kenmerkselectie verschillen, maar het belangrijkste idee van hun uitvoering blijft hetzelfde.

Sterk gecorreleerde variabelen

Sterk gecorreleerde variabelen geven hetzelfde informatie aan het model, daarom is het niet nodig om ze alle te gebruiken voor de analyse. Als een dataset kenmerken bevat zoals 'Tijd online' en 'Gebruikt dataverkeer', kan worden aangenomen dat ze in zekere mate gecorreleerd zijn, en we zullen een sterke correlatie zien, zelfs als we een onpartijdige steekproef van gegevens kiezen. In dat geval heeft het model slechts ƩƩn van deze variabelen nodig. Als beide worden gebruikt, loopt het model het risico op overfitting en is het bevooroordeeld ten opzichte van ƩƩn specifiek kenmerk.

P-waarden

In algoritmes zoals lineaire regressie is een initiƫle statistische model altijd een goed idee. Het helpt de belangrijkheid van kenmerken aan te geven met behulp van hun p-waarden die door dit model zijn verkregen. Door een significantieniveau vast te stellen, controleren we de verkregen p-waarden, en als een waarde onder het vastgestelde significantieniveau ligt, wordt dit kenmerk als significant beschouwd, wat betekent dat wijziging in de waarde waarschijnlijk zal leiden tot een wijziging in de doelwaarde.

Forward Selection

Forward selection is een techniek die gebruikmaakt van een stapsgewijze regressie. Het bouwen van het model begint vanaf nul, dat wil zeggen een leeg model, en vervolgens voegt elke iteratie een variabele toe die de opbouw van het model verbetert. Welke variabele aan het model wordt toegevoegd, wordt bepaald door de significantie ervan. Dit kan worden berekend met behulp van verschillende metrics. De meest voorkomende manier is het toepassen van p-waarden verkregen in het initiƫle statistische model met gebruik van alle variabelen. Soms kan forward selection leiden tot overfitting van het model, omdat er sterk gecorreleerde variabelen in het model kunnen zijn, zelfs als ze dezelfde informatie aan het model bieden (ook al toont het model verbetering).

Backward Selection

Terugwaarts elimineren houdt ook in dat kenmerken stap voor stap worden uitgesloten, maar in de tegenovergestelde richting in vergelijking met voorwaarts elimineren. In dit geval omvat het initiƫle model alle onafhankelijke variabelen. Vervolgens worden variabelen uitgesloten (ƩƩn per iteratie) als ze geen waarde toevoegen aan het nieuwe regressiemodel in elke iteratie. De basis voor het uitsluiten van kenmerken is de p-waarde van het initiƫle model. Ook in deze methode is er onzekerheid bij het verwijderen van sterk gecorreleerde variabelen.

Recursieve uitsluiting van kenmerken

RFE is een veelgebruikte techniek/algoritme voor het selecteren van een exact aantal significante kenmerken. Soms wordt de methode gebruikt om een aantal 'belangrijkste' kenmerken uit te leggen die van invloed zijn op de resultaten; en soms om een zeer groot aantal variabelen (ongeveer 200-400) te verminderen, waarbij alleen diegenen worden behouden die op de een of andere manier bijdragen aan het model, terwijl de rest wordt uitgesloten. RFE gebruikt een rangordesysteem. Kenmerken in de dataset krijgen rangordes. Vervolgens worden deze rangordes gebruikt voor de recursieve uitsluiting van kenmerken, afhankelijk van de collineariteit tussen hen en de significantie van deze kenmerken in het model. Naast het rangschikken van kenmerken, kan RFE ook laten zien of deze kenmerken belangrijk zijn of niet, zelfs voor een bepaald aantal kenmerken (omdat het zeer waarschijnlijk is dat het gekozen aantal kenmerken niet optimaal kan zijn en het optimale aantal zowel groter als kleiner kan zijn dan het gekozen).

Diagram van de belangrijkheid van kenmerken

Als we het hebben over de interpreteerbaarheid van machine learning-algoritmen, wordt meestal gesproken over lineaire regressies (die de significantie van kenmerken kunnen analyseren met behulp van p-waarden) en beslissingsbomen (die letterlijk de belangrijkheid van kenmerken tonen in de vorm van een boom, evenals hun hiƫrarchie). Aan de andere kant, in algoritmen zoals Random Forest, LightGBM en XG Boost, wordt vaak een diagram van de belangrijkheid van kenmerken gebruikt, dat wil zeggen, er wordt een diagram gebouwd dat de variabelen en hun 'belangrijkheid' weergeeft. Dit is bijzonder nuttig wanneer het nodig is om een gestructureerde rechtvaardiging te bieden voor de belangrijkheid van kenmerken in termen van hun impact op het bedrijf.

Regularisatie

Regularisatie is er om de balans tussen bias en variantie te beheersen. Bias geeft aan in hoeverre het model overfit op de trainingsdataset. Variantie toont aan hoe verschillend de voorspellingen zijn tussen de trainings- en testdatasets. Idealiter moeten zowel bias als variantie klein zijn. Hier komt regularisatie om de hoek kijken! Er zijn twee hoofdtechnieken:

L1 Regularisatie – Lasso: Lasso legt een straf op de gewichten van het model om hun belang voor het model te veranderen en kan ze zelfs op nul zetten (d.w.z. deze variabelen uit het eindmodel verwijderen). Gewoonlijk wordt Lasso gebruikt als de dataset veel variabelen bevat en sommige daarvan moeten worden uitgesloten om beter te begrijpen hoe belangrijke kenmerken het model beĆÆnvloeden (d.w.z. de kenmerken die door Lasso zijn geselecteerd en waarvan het belang is vastgesteld).

L2 Regularisatie – Ridge-methode: Het doel van Ridge is om alle variabelen te behouden en tegelijkertijd belang toe te wijzen op basis van hun bijdrage aan de effectiviteit van het model. Ridge is een goede keuze als de dataset een klein aantal variabelen bevat en alle nodig zijn voor de interpretatie van de conclusies en resultaten.

Aangezien Ridge alle variabelen behoudt en Lasso beter hun belang vaststelt, is er een algoritme ontwikkeld dat de beste eigenschappen van beide regularisaties combineert en bekend staat als Elastic-Net.

Er zijn veel andere manieren voor kenmerkselectie in machine learning, maar het belangrijkste idee blijft altijd hetzelfde: de belangrijkheid van variabelen aantonen en vervolgens sommige uitsluiten op basis van de verkregen belangrijkheid. Belangrijkheid is een zeer subjectieve term, omdat het niet ƩƩn, maar een hele set metrische gegevens en diagrammen is die kan worden gebruikt om sleutelkenmerken te vinden.

Bedankt voor het lezen! Veel leerplezier!

Bron: habr.com

Koop betrouwbare webhosting met bescherming tegen DDoS, VPS VDS servers šŸ”„ Koop betrouwbare webhosting met bescherming tegen DDoS, VPS VDS servers | ProHoster