Boosting Algoritm - Typer øker algoritmen med deres arbeid

Innholdsfortegnelse:

Anonim

Hva er den boostende algoritmen?

Boosting er metoden i algoritmer som konverterer svak elev til sterk elev. Det er en teknikk som legger til nye modeller for å rette opp eksisterende feil.

Eksempel:

La oss forstå dette konseptet ved hjelp av følgende eksempel. La oss ta et eksempel på e-posten. Hvordan vil du gjenkjenne e-posten din om det er spam eller ikke? Du kan gjenkjenne det ved følgende forhold:

  • Hvis en e-post inneholder mye kilde som det, betyr det at det er spam.
  • Hvis en e-post bare inneholder ett filbilde, er det spam.
  • Hvis en e-post inneholder meldingen "Du eier et lotteri på $ xxxxx" betyr det at det er spam.
  • Hvis en e-postadresse inneholder en kjent kilde, er det ikke spam.
  • Hvis det inneholder det offisielle domenet som educba.com, osv. Betyr det at det ikke er spam.

Ovennevnte regler er ikke så kraftige å gjenkjenne spam eller ikke, og derfor kalles disse reglene som svake elever.

For å konvertere svak elev til sterk elev kombinerer du prediksjonen til den svake eleven ved å bruke følgende metoder.

  1. Bruker gjennomsnittlig eller vektet gjennomsnitt.
  2. Vurder prediksjon har høyere stemme.

Vurder de ovennevnte 5 reglene, det er 3 stemmer for spam og 2 stemmer for ikke spam. Siden det er spam med høy stemme, anser vi det som spam.

Hvordan styrking av algoritmer fungerer?

Boosting Algorithms kombinerer hver svake elev for å lage en sterk prediksjonsregel. For å identifisere den svake regelen, er det en grunnleggende læringsalgoritme (Machine Learning). Når Base-algoritmen brukes, oppretter den nye prediksjonsregler ved å bruke iterasjonsprosessen. Etter litt iterasjon, kombinerer den alle svake regler for å lage en enkelt prediksjonsregel.

Følg trinnene nedenfor for å velge riktig distribusjon:

Trinn 1: Base Learning-algoritmen kombinerer hver distribusjon og tilfører lik vekt på hver distribusjon.

Trinn 2: Hvis det forekommer noen prediksjon under den første grunnleggende læringsalgoritmen, legger vi stor vekt på den prediksjonsfeilen.

Trinn 3: Gjenta trinn 2 til grensen for Base Learning-algoritmen er nådd eller høy nøyaktighet.

Trinn 4: Til slutt kombinerer den all den svake eleven for å lage en sterk prediksjonstule.

Typer boostende algoritme

Boosting-algoritmer bruker forskjellige motorer som beslutningsstempel, marginmaksimerende klassifiseringsalgoritme, etc. Det er tre typer Boosting-algoritmer som er som følger:

  1. AdaBoost (Adaptive Boosting) algoritme
  2. Gradient Boosting algoritme
  3. XG Boost-algoritme

AdaBoost (Adaptive Boosting) algoritme

For å forstå AdaBoost, vennligst se bildet nedenfor:

Boks 1: I boks 1 for hvert datasett tildelte vi like vekter og for å klassifisere pluss (+) og minus (-) tegnet bruker vi beslutningsstubben D1 som skaper en vertikal linje på venstre side av boks 1. Denne linjen er feil spådde tre pluss-tegn (+) som minus (-), derfor bruker vi høyere vekter på disse pluss-tegnene og bruker en annen beslutningstubbe.

Boks 2: I boks 2 blir størrelsen på tre feil forutsagte pluss-tegn (+) større sammenlignet med en annen. Den andre beslutningsstubben D2 på høyre side av blokken forutsier at dette feil forutsagte plussskiltet (+) er riktig. Men siden feilklassifiseringsfeil skjedde på grunn av ulik vekt med minustegn (-), tildeler vi en høyere vekt til minustegnet (-) og bruker en annen beslutningsstubbe.

Boks 3: I boks tre på grunn av feilklassifiseringsfeil har tre minustegn (-) høy vekt. her blir beslutningsstubbe D3 brukt for å forutsi denne feilklassifiseringen og korrigere den. Denne gangen for å klassifisere pluss (+) og minus (-) tegn horisontal linje opprettes.

Boks 4: I boks 4 blir beslutningsstubben D1, D2 og D3 kombinert for å skape en ny sterk prediksjon.

Adaptive Boosting-verk er like som nevnt ovenfor. Den kombinerer gruppen med svak elevbase på vektalder for å skape en sterk elev. I den første iterasjonen gir den like stor vekt på hvert datasett, og startene forutsier at datasettet. Hvis uriktig prediksjon forekommer, tillegges den observasjonen høy vekt. Adaptive Boosting gjenta denne prosedyren i neste iterasjonsfase og fortsett til nøyaktigheten er oppnådd. Kombinerer deretter dette for å skape en sterk prediksjon.

Gradient Boosting Algorithm

Gradient boosting algoritm er en maskinlæringsteknikk for å definere tapsfunksjon og redusere den. Det brukes til å løse klassifiseringsproblemer ved å bruke prediksjonsmodeller. Det innebærer følgende trinn:

1. Tapfunksjon

Bruken av tapsfunksjon avhenger av typen problem. Fordelen med gradient boosting er at det ikke er behov for en ny boostingalgoritme for hver tapsfunksjon.

2. Svak elev

Ved gradient boosting blir avgjørelsetrær brukt som en svak elev. Et regresjonstreet brukes til å gi sanne verdier som kan kombineres sammen for å lage riktige forutsigelser. Som i AdaBoost-algoritmen, brukes små trær med en enkelt splitt, dvs. beslutningsstubbe. Større trær brukes til store nivåer i, e 4-8 nivåer.

3. Tilsetningsstoffmodell

I denne modellen blir trær lagt til en om gangen. eksisterende trær forblir den samme. Under tilsetning av trær brukes gradient nedstigning for å minimere tapsfunksjonen.

XG Boost

XG Boost er en forkortelse for Extreme Gradient Boosting. XG Boost er oppgradert implementering av Gradient Boosting Algorithm som er utviklet for høy beregningshastighet, skalerbarhet og bedre ytelse.

XG Boost har forskjellige funksjoner som er som følger:

  1. Parallell prosessering: XG Boost gir parallell prosessering for trekonstruksjon som bruker CPU-kjerner mens du trener.
  2. Kryssvalidering: XG Boost gjør det mulig for brukere å kjøre kryssvalidering av boostingsprosessen ved hver iterasjon, noe som gjør det enkelt å få det nøyaktige antallet boostende iterasjoner i ett kjør.
  3. Cache Optimization: Det gir Cache Optimalisering av algoritmene for høyere utføringshastighet.
  4. Distribuert databehandling : For å trene store modeller, tillater XG Boost Distribuert databehandling.

Anbefalte artikler

I denne artikkelen har vi sett hva som er å øke algoritmen, forskjellige typer øke algoritmen i maskinlæring og hvordan de fungerer. Du kan også gå gjennom andre foreslåtte artikler for å lære mer -

  1. Hva er maskinlæring? | En definisjon
  2. Programmeringsspråk for å lære algoritmer
  3. Hva er Blockchain-teknologi?
  4. Hva er en algoritme?