Wat is Overfitting In Machine Learning en hoe dit te vermijden?

het bouwen van een Machine Learning model gaat niet alleen over het voeden van de gegevens, er zijn veel tekortkomingen die de nauwkeurigheid van elk model beïnvloeden. Overvoegen in Machine Learning is een dergelijke tekortkoming in Machine Learning dat de nauwkeurigheid en de prestaties van het model belemmert. De volgende onderwerpen worden behandeld in dit artikel:

  • Wat is Overfitting in Machine Learning?
  • voorbeelden van Overfitting
  • signaal vs ruis
  • Wat is Onderfitting?
  • Hoe kan overbevissing worden opgespoord?
  • Hoe overbevissing in Machine Learning te voorkomen
  • Wat is Goodness Of Fit?
  • de trade-off tussen Bias en variantie

Wat is overbevissing In Machine Learning?

van een statistisch model wordt gezegd dat het veel meer gegevens bevat dan nodig is. Om het relateerbaar te maken, Stel je voor dat je probeert te passen in oversized kleding.

overfitting in machine learning - edureka

wanneer een model meer gegevens past dan het daadwerkelijk nodig heeft, begint het de lawaaierige gegevens en onnauwkeurige waarden in de gegevens op te vangen. Hierdoor neemt de efficiëntie en nauwkeurigheid van het model af. Laten we eens kijken naar een paar voorbeelden van overbevissing om te begrijpen hoe het eigenlijk gebeurt.

voorbeelden van overbevissing

Voorbeeld 1

als we een voorbeeld nemen van eenvoudige lineaire regressie, gaat de training van de gegevens over het vinden van de minimale kosten tussen de best passende lijn en de gegevenspunten. Het gaat door een aantal iteraties om uit te vinden de optimale beste pasvorm, het minimaliseren van de kosten. Dit is waar overbevissing in beeld komt.

lineaire regressie - overfitting in machine learning - edureka

De Lijn in de afbeelding hierboven kan een zeer efficiënte uitkomst geven voor een nieuw gegevenspunt. In het geval van overbevissing, wanneer we het trainingsalgoritme op de dataset uitvoeren, laten we de kosten met elk aantal iteraties verminderen.

het te lang uitvoeren van dit algoritme betekent lagere kosten, maar het past ook bij de lawaaierige gegevens uit de dataset. Het resultaat zou er ongeveer uitzien als in de grafiek hieronder.

overfitting in machine learning - edureka

Dit lijkt misschien efficiënt, maar is niet echt. Het belangrijkste doel van een algoritme zoals lineaire regressie is om een dominante trend te vinden en de datapunten dienovereenkomstig aan te passen. Maar in dit geval past de lijn op alle datapunten, wat niet relevant is voor de efficiëntie van het model bij het voorspellen van optimale resultaten voor nieuwe datapunten.

laten we nu een meer beschrijvend voorbeeld bekijken met behulp van een probleemverklaring.

Voorbeeld 2

probleemstelling: Laten we eens overwegen we willen voorspellen of een voetballer zal een slot in een Tier 1 voetbalclub op basis van zijn/haar huidige prestaties in de tier 2 league.

stel je nu voor, we trainen en passen het model aan met 10.000 van zulke spelers met uitkomsten. Wanneer we proberen om de uitkomst te voorspellen op de oorspronkelijke dataset, laten we zeggen dat we een 99% nauwkeurigheid hebben. Maar de nauwkeurigheid van een andere dataset komt rond de 50 procent. Dit betekent dat het model niet goed generaliseert uit onze trainingsdata en unseen data.

zo ziet overbevissing eruit. Het is een veel voorkomend probleem in Machine Learning en zelfs Data science. Laten we nu het signaal en de ruis begrijpen.

signaal vs ruis

in voorspellende modellering verwijst signaal naar het ware onderliggende patroon dat het model helpt om de gegevens te leren. Aan de andere kant, ruis is irrelevant en willekeurige gegevens in de dataset. Om het concept van ruis en signaal te begrijpen, nemen we een real-life voorbeeld.

laten we aannemen dat we leeftijd vs geletterdheid onder volwassenen willen modelleren. Als we een zeer groot deel van de bevolking nemen, zullen we een duidelijke relatie vinden. Dit is het signaal, terwijl ruis het signaal verstoort. Als we hetzelfde doen op een lokale bevolking, zal de relatie modderig worden. Het zou worden beïnvloed door uitschieters en willekeur, bijvoorbeeld, één volwassene ging vroeg naar school of een VOLWASSENE kon zich geen onderwijs veroorloven, enz.

als we het hebben over ruis en signaal in termen van Machine Learning, zal een goed machine Learning algoritme automatisch signalen van de ruis scheiden. Als het algoritme te complex of inefficiënt is, kan het ook de ruis leren. Vandaar, overfitting het model. Laten we ook begrijpen underfitting in Machine Learning ook.

Wat is Underfitting?

om overbevissing te voorkomen, zouden we de training in een eerder stadium kunnen stoppen. Maar het kan er ook toe leiden dat het model niet genoeg kan leren van trainingsgegevens, dat het moeilijk kan vinden om de dominante trend vast te leggen. Dit staat bekend als onderbouw. Het resultaat is hetzelfde als overbevissing, inefficiëntie bij het voorspellen van resultaten.

underfitting - overfitting in machine learning - edureka

nu we hebben begrepen wat underfitting en overfitting in Machine Learning werkelijk is, laten we proberen te begrijpen hoe we overfitting in Machine Learning kunnen detecteren.

Hoe kan overbevissing worden opgespoord?

de grootste uitdaging bij overbevissing is het schatten van de nauwkeurigheid van de prestaties van ons model met nieuwe gegevens. We zouden niet in staat zijn om de nauwkeurigheid te schatten totdat we het daadwerkelijk testen.

om dit probleem aan te pakken, kunnen we de initiële gegevensverzameling splitsen in afzonderlijke gegevensverzamelingen voor training en testen. Met deze techniek kunnen we benaderen hoe goed ons model zal presteren met de nieuwe gegevens.

laten we dit met een voorbeeld begrijpen, stel je voor dat we een nauwkeurigheid van 90+ procent krijgen op de trainingsset en een nauwkeurigheid van 50 procent op de testset. Dan, automatisch zou het een rode vlag voor het model.

een andere manier om overbevissing te detecteren is door te beginnen met een simplistisch model dat als benchmark zal dienen.

met deze aanpak, als je complexere algoritmen probeert zul je in staat zijn om te begrijpen of de extra complexiteit zelfs de moeite waard is voor het model of niet. Het is ook bekend als Occam ‘ s razor test, het kiest in principe het simplistische model in het geval van vergelijkbare prestaties in het geval van twee modellen. Hoewel het opsporen van overbevissing een goede praktijk is, zijn er verschillende technieken om overbevissing te voorkomen. Laten we eens kijken hoe we overfitting in Machine Learning kunnen voorkomen.

Hoe kan overbevissing in Machine Learning worden voorkomen?

Er zijn verschillende technieken om overbevissing in Machine Learning te voorkomen.

  1. kruisvalidatie

  2. Training met meer gegevens

  3. verwijderen van functies

  4. vroeg stoppen

  5. regularisatie

  6. Ensembling

1. Kruisvalidatie

een van de krachtigste functies om overbevissing te voorkomen is kruisvalidatie. Het idee hierachter is om de initiële trainingsgegevens te gebruiken om mini train-test-splits te genereren, en deze splits vervolgens te gebruiken om je model af te stemmen.

in een standaard K-vouwvalidatie worden de gegevens verdeeld in K-subsets, ook wel vouwen genoemd. Hierna wordt het algoritme iteratief getraind op k-1 plooien terwijl de resterende plooien worden gebruikt als testset, ook wel holdout fold genoemd.

cross-validation - overfitting in machine learning - edurekade cross-validation helpt ons om de hyperparameters af te stemmen op alleen de originele trainingsset. Het houdt in principe de testset apart als een echte ongeziene dataset voor het selecteren van het uiteindelijke model. Dus, het vermijden van overbevissing helemaal.

2. Training met meer gegevens

deze techniek werkt mogelijk niet elke keer, zoals we ook hebben besproken in het voorbeeld hierboven, waar training met een aanzienlijke hoeveelheid bevolking helpt het model. Het helpt het model om het signaal beter te identificeren.

maar in sommige gevallen kunnen de verhoogde gegevens ook betekenen dat het model meer ruis krijgt. Wanneer we het model trainen met meer gegevens, moeten we ervoor zorgen dat de gegevens schoon zijn en vrij zijn van willekeur en inconsistenties.

3. Functies

verwijderen hoewel sommige algoritmen een automatische selectie van functies hebben. Voor een aanzienlijk aantal van degenen die geen ingebouwde functieselectie hebben, kunnen we handmatig een paar irrelevante functies uit de invoerfuncties verwijderen om de generalisatie te verbeteren.

een manier om dit te doen is door een conclusie te trekken over hoe een functie in het model past. Het is vrij vergelijkbaar met het debuggen van de code regel-voor-regel.

in het geval dat een functie de relevantie in het model niet kan verklaren, kunnen we deze functies eenvoudig identificeren. We kunnen zelfs gebruik maken van een paar functie selectie heuristiek voor een goed uitgangspunt.

4. Vroeg stoppen

wanneer het model aan het trainen is, kunt u daadwerkelijk meten hoe goed het model presteert op basis van elke iteratie. We kunnen dit doen tot een punt waarop de iteraties de prestaties van het model verbeteren. Hierna overstijgt het model de trainingsgegevens omdat de generalisatie na elke iteratie verzwakt.

vroeg stoppen - overfitting in machine learning - edureka

dus in principe betekent vroeg stoppen het trainingsproces stoppen voordat het model het punt passeert waar het model begint de trainingsgegevens te overschrijden. Deze techniek wordt meestal gebruikt in diep leren.

5. Regularisatie

het betekent in principe dat je model kunstmatig wordt geforceerd om eenvoudiger te zijn door een breder scala aan technieken te gebruiken. Het hangt volledig af van het type leerling dat we gebruiken. We kunnen bijvoorbeeld een beslissingsboom snoeien, een uitval gebruiken op een neuraal netwerk of een strafparameter toevoegen aan de kostenfunctie in regressie.

vaak is regularisatie ook een hyperparameter. Het betekent dat het ook kan worden afgestemd door middel van cross-validatie.

6. Ensembling

deze techniek combineert in principe voorspellingen van verschillende Machine Learning modellen. Twee van de meest voorkomende methoden voor ensembling worden hieronder opgesomd:

  • Bagging pogingen om de kans op overfitting van de modellen te verkleinen

  • Boosting pogingen om de voorspellende flexibiliteit van eenvoudigere modellen te verbeteren

hoewel het beide ensemble methoden zijn, begint de aanpak volledig vanuit tegengestelde richtingen. Bagging maakt gebruik van complexe basismodellen en probeert hun voorspellingen glad te strijken, terwijl het stimuleren gebruik maakt van eenvoudige basismodellen en probeert de totale complexiteit ervan te stimuleren.

Wat is Goodness of Fit?

in statistische modellering verwijst de goedheid van fit naar de mate waarin de uitkomsten of voorspelde waarden overeenkomen met de waargenomen of ware waarden. Een model dat ruis heeft geleerd in plaats van het signaal wordt overgezet omdat het in de trainingsgegevensreeks past, maar met de nieuwe dataset minder efficiënt zal zijn.

de Trade-off tussen Bias en variantie

zowel variantie als bias zijn vormen van voorspellingsfout in Machine Learning. De trade-off tussen hoge variantie en hoge bias is een zeer belangrijk concept in statistieken en Machine Learning. Dit is een concept dat alle gecontroleerde Machine Learning algoritmen beà nvloedt.

De bias-variance trade-off heeft een zeer significante impact op het bepalen van de complexiteit, te weinig fitting en overfitting voor elk Machine Learning model.

Bias

Het is niets anders dan het verschil tussen de voorspelde waarden en de werkelijke of ware waarden in het model. Het is niet altijd gemakkelijk voor het model om te leren van vrij complexe signalen.

stel je voor dat een lineaire regressie wordt aangepast aan een model met niet-lineaire gegevens. Het maakt niet uit hoe efficiënt het model de waarnemingen leert, het zal de curven niet efficiënt modelleren. Het staat bekend als te weinig fitting.

variantie

het verwijst naar de gevoeligheid van het model voor specifieke sets in de trainingsgegevens. Een algoritme met hoge variantie zal een bizar model produceren dat drastisch verschilt van de trainingsset.

stel je een algoritme voor dat past bij het onbelemmerde en superflexibele model, het zal ook leren van het lawaai in de trainingsset dat overfitting veroorzaakt.

Bias-Variance Trade-off

een algoritme voor Machine Learning kan niet worden gezien als een eenmalige methode voor het trainen van het model, in plaats daarvan is het een repetitief proces.

low variance-high bias algoritmes zijn minder complex, met een eenvoudige en stijve structuur.

  • zij zullen de modellen trainen die consistent zijn, maar gemiddeld onnauwkeurig.

  • Deze omvatten lineaire of parametrische algoritmen, zoals regressie, naïeve Bayes, enz.

hoge variantie-lage bias algoritmen zijn vaak complexer, met een flexibele structuur.

  • zij zullen de modellen trainen die inconsistent maar gemiddeld accuraat zijn.

  • Deze omvatten niet-lineaire of niet-parametrische algoritmen zoals beslissingsbomen, dichtstbijzijnde buur, enz.

Dit brengt ons bij het einde van dit artikel waar we geleerd hebben overfitting in Machine learning en over verschillende technieken om dit te vermijden. Ik hoop dat je duidelijk bent met alles wat met je is gedeeld in deze tutorial.

Als u dit artikel over “Overfitting in Machine Learning” relevant vond, bekijk dan de Edureka Machine Learning Certification Training, een vertrouwd online leerbedrijf met een netwerk van meer dan 250.000 tevreden leerlingen verspreid over de hele wereld.

wij zijn hier om u te helpen bij elke stap op uw reis en komen met een curriculum dat is ontworpen voor studenten en professionals die Machine Learning Engineer willen worden. De cursus is ontworpen om u een voorsprong in Python programmeren en trainen u voor zowel de kern en geavanceerde Python concepten samen met verschillende Machine learning algoritmen zoals SVM, besluit boom, enz.

Geef een antwoord

Het e-mailadres wordt niet gepubliceerd.