Huis Persoonlijke financiën Python gebruiken om de juiste variabelen voor gegevenswetenschap te selecteren - dummies

Python gebruiken om de juiste variabelen voor gegevenswetenschap te selecteren - dummies

Inhoudsopgave:

Video: Cursus programmeren Python - Operators en loop #cursus #programmeren #coderen #ProgrammeerPlaats 2024

Video: Cursus programmeren Python - Operators en loop #cursus #programmeren #coderen #ProgrammeerPlaats 2024
Anonim

Het selecteren van de juiste variabelen in Python kan het leerproces in de gegevenswetenschap verbeteren door de hoeveelheid ruis te verminderen (nutteloos informatie) die de schattingen van de leerling kan beïnvloeden. Variabele selectie kan daarom de variantie van voorspellingen effectief verminderen. Om alleen de bruikbare variabelen in de training te betrekken en de overtollige weg te laten, kunt u de volgende technieken gebruiken:

  • Univariate aanpak: Selecteer de variabelen die het meest gerelateerd zijn aan het doelresultaat.

  • Greedy of backward approach: Bewaar alleen de variabelen die u uit het leerproces kunt verwijderen zonder de prestaties te schaden.

Selecteren op univariate waarden

Als u besluit een variabele te selecteren op basis van het associatieniveau van het doel, biedt de klasse SelectPercentile een automatische procedure om slechts een bepaald percentage van de beste gekoppelde functies te behouden. De beschikbare statistieken voor associatie zijn

  • f_regressie: wordt alleen gebruikt voor numerieke doelen en is gebaseerd op lineaire regressieprestaties.

  • f_classif: wordt alleen gebruikt voor categorische doelen en is gebaseerd op de statistische analyse van de variantieanalyse (ANOVA).

  • chi2: voert de chikwadraatstatistiek uit voor categorische doelen, wat minder gevoelig is voor de niet-lineaire relatie tussen de voorspellende variabele en zijn doel.

Bij het evalueren van kandidaten voor een classificatieprobleem, hebben f_classif en chi2 dezelfde reeks topvariabelen. Het is nog steeds een goede gewoonte om de selecties uit beide associatie-statistieken te testen.

Naast het toepassen van een directe selectie van de toppercentielassociaties, kan SelectPercentile ook de beste variabelen rangschikken om het gemakkelijker te maken om te bepalen bij welk percentiel een functie wordt uitgesloten van deelname aan het leerproces. De klasse SelectKBest is analoog qua functionaliteit, maar selecteert de top k-variabelen, waarbij k een getal is, geen percentiel.

van sklearn. feature_selection Import SelectPercentile van sklearn. feature_selection import f_regression Selector_f = SelectPercentile (f_regression, percentile = 25) Selector_f. fit (X, y) voor n, s in zip (boston. feature_names, Selector_f. scores_): print 'F-score:% 3. 2ft voor kenmerk% s '% (s, n) F-score: 88. 15 voor functie CRIM F-score: 75. 26 voor kenmerk ZN F-score: 153. 95 voor kenmerk INDUS F-score: 15. 97 voor feature CHAS F-score: 112. 59 voor feature NOX F-score: 471. 85 voor feature RM F-score: 83.48 voor feature AGE F-score: 33. 58 voor feature DIS F-score: 85. 91 voor feature RAD F-score: 141. 76 voor feature TAX F-score: 175. 11 voor feature PTRATIO F-score: 63. 05 voor kenmerk B F-score: 601. 62 voor kenmerk LSTAT

Met behulp van het niveau van associatie-uitvoer kunt u de belangrijkste variabelen voor uw machine-leermodel kiezen, maar let op voor deze mogelijke problemen: > Sommige variabelen met een hoge associatie kunnen ook sterk gecorreleerd zijn, waarbij dubbele informatie wordt geïntroduceerd, die fungeert als ruis in het leerproces.

  • Sommige variabelen kunnen worden bestraft, met name binaire (variabelen die een status of kenmerk aangeven met de waarde 1 wanneer deze aanwezig is, 0 wanneer dit niet het geval is). Merk bijvoorbeeld op dat de uitvoer de binaire variabele CHAS als de minst geassocieerde met de doelvariabele toont (maar u weet uit vorige voorbeelden dat deze invloedrijk is vanuit de kruisvalidatiefase).

  • Het univariate selectieproces kan u een echt voordeel geven wanneer u een groot aantal variabelen hebt om uit te kiezen en alle andere methoden worden rekenbaar voor de computer. De beste procedure is om de waarde van SelectPercentile met de helft of meer van de beschikbare variabelen te verminderen, het aantal variabelen te reduceren tot een beheersbaar getal en bijgevolg het gebruik van een geavanceerdere en nauwkeurigere methode zoals een hebzuchtige zoekopdracht toe te staan.

Een hebzuchtige zoekopdracht gebruiken

Wanneer u een univariate selectie gebruikt, moet u zelf bepalen hoeveel variabelen u moet behouden: Greedy selection vermindert automatisch het aantal functies van een leermodel op basis van hun effectieve bijdrage aan de prestaties gemeten door de foutmaatregel.

De RFECV-klasse, die de gegevens aanpast, kan u informatie geven over het aantal nuttige functies, u hierop wijzen en de X-gegevens automatisch transformeren, door de methodetransformatie, in een gereduceerde variabele reeks, zoals weergegeven in het volgende voorbeeld:

van sklearn. feature_selection import RFECV selector = RFECV (schatter = regressie, cv = 10, scoring = "mean_squared_error") selector. fit (X, y) print ("Optimaal aantal functies:% d"% selector. n_features_) Optimaal aantal functies: 6

Het is mogelijk om een ​​index te verkrijgen voor de optimale variabele set door het attribuut support_ van de RFECV aan te roepen klasse nadat je hem hebt geplaatst.

print boston. feature_names [selector. support_] ['CHAS "NOX" RM "DIS" PTRATIO "LSTAT']

Merk op dat CHAS nu tot de meest voorspellende kenmerken behoort, wat contrasteert met het resultaat van de univariate zoekopdracht. De RFECV-methode kan detecteren of een variabele is belangrijk, ongeacht of het binair, categorisch of numeriek is, omdat het rechtstreeks de rol evalueert die de functie in de voorspelling speelt.

De RFECV-methode is zeker efficiënter in vergelijking met de -univariate aanpak, omdat het houdt rekening met sterk gecorreleerde kenmerken en is afgestemd om de evaluatiemaatstaf te optimaliseren (wat meestal geen Chi-kwadraat of F-score is).Het is een hebberig proces en vereist veel rekenwerk en kan alleen de beste reeks voorspellers benaderen.

Aangezien RFECV de beste set variabelen uit gegevens leert, kan de selectie te hoog worden, wat gebeurt met alle andere algoritmen voor het leren van apparaten. Door RFECV te testen op verschillende voorbeelden van de trainingsgegevens, kunnen de beste variabelen worden bevestigd die moeten worden gebruikt.

Python gebruiken om de juiste variabelen voor gegevenswetenschap te selecteren - dummies

Bewerkers keuze

Hoe u uw LinkedIn-profiel kunt vermarkten voor de markt - dummies

Hoe u uw LinkedIn-profiel kunt vermarkten voor de markt - dummies

Wanneer het komt om het voordeel dat u van LinkedIn krijgt te maximaliseren, bent u uw grootste pleitbezorger. Hoewel je netwerk van connecties je helpt te groeien, gebeurt veel van je marketing zonder dat je erbij betrokken bent. Nadat je je profiel hebt aangemaakt, worden die en andere LinkedIn-activiteit van je gelezen en beoordeeld door de ...

Hoe u uw LinkedIn-netwerk kunt bouwen voordat u naar een nieuwe stad gaat - dummies

Hoe u uw LinkedIn-netwerk kunt bouwen voordat u naar een nieuwe stad gaat - dummies

Deze dagen, wanneer u naar een nieuwe stad moet verhuizen, kunt u er veel plannen voor maken op LinkedIn en op internet. Je kunt de buurten onderzoeken, de schoolsystemen bekijken en online naar huizen gaan. Je kunt een stap verder gaan als je van plan bent om naar een andere ...

Hoe u uw LinkedIn-contactinstellingen controleert - dummies

Hoe u uw LinkedIn-contactinstellingen controleert - dummies

U zeker wilt dat u de juiste instellingen selecteert contactinstellingen voor uw LinkedIn-profiel. Als u bijvoorbeeld op zoek bent naar een nieuwe baan, wilt u er zeker van zijn dat de optie voor Carrièremogelijkheden is gecontroleerd. Wanneer u klaar bent om uw contactinstellingen te controleren, volgt u deze stappen: Ga naar ...

Bewerkers keuze

Canon EOS Rebel XS / 1000D voor Dummy's Cheat Sheet - dummies

Canon EOS Rebel XS / 1000D voor Dummy's Cheat Sheet - dummies

Uw Canon EOS Rebel XS / 1000D heeft alle functies die u kunt gebruiken om fantastische foto's te maken. Je moet de beeldmodus instellen op het onderwerp van je foto en de Canon EOS Rebel XS / 1000D laat je volledig of gedeeltelijk automatisch gaan met de belichtingsinstellingen.

Canon Rebel T3-serie camera's: Live-modus Autofocus in Live View - dummies

Canon Rebel T3-serie camera's: Live-modus Autofocus in Live View - dummies

Live-modus Met autofocus kunt u de focus instellen op uw Canon EOS Rebel T3 of T3i zonder tijdelijk het voorbeeld van de monitor te verliezen. Bovendien, in plaats van het selecteren van negen autofocuspunten, verplaatst u eenvoudig een enkel scherpstelpunt over uw onderwerp. Aan de andere kant is de autofocus van de Live-modus merkbaar langzamer dan in de Quick-modus, en ...

Bewerkers keuze

Wijzigt Hoe tekstgrootte te wijzigen in Word 2016 - dummies

Wijzigt Hoe tekstgrootte te wijzigen in Word 2016 - dummies

Tekstgrootte wordt ingesteld in uw Word 2016 document gebaseerd over de meting van de oude letterzetter, ook wel punten genoemd. Hier zijn enkele aandachtspunten waarmee u rekening moet houden bij het opmaken van tekst in Word: hoe groter de puntgrootte, hoe groter de tekst. De meeste gedrukte tekst is 10 of 12 punten lang. Koppen zijn meestal 14 ...

Grammatica controleren in Word 2007 - dummies

Grammatica controleren in Word 2007 - dummies

Naast het controleren op correcte spelling, kunt u met Word 2007 ook om uw documenten te bewijzen om grammaticale fouten te voorkomen. U kunt de grammaticasuggesties van Word bekijken terwijl u door het document bladert, of u kunt een traditionele spellingcontrole uitvoeren. Word biedt u zelfs de kans om de gemarkeerde fout te onderzoeken en meer te leren van ...

Spelling controleren terwijl u typt in Word 2013 - dummies

Spelling controleren terwijl u typt in Word 2013 - dummies

Woord 2013 heeft een interne bibliotheek vol met ontelbare woorden, allemaal correct gespeld. Telkens wanneer u een woord typt, wordt het vergeleken met dat woordenboek. Wanneer het woord niet wordt gevonden, wordt dit als verdacht gemarkeerd in uw document. Het merk is een rode zigzaglijn. Mijn advies: blijf typen. Laat de "rode zigzag van een ...