Det er ingen hemmelighet at maskinlæring blir bedre med tiden og de prediktive modellene. Prediktive modeller danner kjernen i maskinlæring. Det er bra å forbedre nøyaktigheten av modellen for bedre resultater i maskinlæringsmodellen. En teknikk kalt "Ensemble Machine Learning" brukes for å øke ytelsen og nøyaktigheten til en modell.
Ensemble Learning bruker forskjellige modeller for maskinlæring for å prøve å komme med bedre spådommer på datasettet. En modells spådommer er kombinert i en ensemblemodell for å gjøre den endelige spådommen vellykket. Imidlertid er mange mennesker ikke kjent med ensemblemaskinlæring. Les under; Vi forklarer alt om denne maskinlæringsteknikken ved hjelp av Python med passende eksempler.
Anta at du deltar i et trivia -spill og har god kunnskap om noen emner, men du vet ikke noe andre få emner. Et teammedlem vil bli pålagt å dekke alle spillemnene hvis du ønsker å oppnå en maksimal poengsum i spillet. Det er den grunnleggende ideen bak ensemblelæring der vi kombinerer spådommene fra forskjellige modeller for nøyaktig produksjon.
Bildet viser et eksempel på skjemaer av et ensemble. I bildet over er inngangsarrayen fylt av tre forbehandlingsrørledninger, og det er baseelever. Alle ensembler kombinerer spådommene til baseelever i den endelige prediksjonsarrayen “P”.
Anta at du tenker på å kombinere alle spådommene. Hvis vi vurderer eksemplet ovenfor, er det enkelt å svare på når du har et team; Maskinlæring er det samme som klassifiseringsproblemene. I maskinlæring tar systemet en vanlig klassemerke som tilsvarer flertallsregelen. Imidlertid er det forskjellige måter å kombinere forskjellige spådommer på, og du kan bruke en modell for å lære å kombinere spådommene på riktig måte.
Hva er ensemblelæring?
Maskinlæring og statistikk sprer seg over hele verden, så vi trenger forskjellige teknikker for å øke en prediktiv modells ytelse for bedre nøyaktighet. Ensemblelæring er en prosedyre for å bruke forskjellige maskinlæringsmodeller og konstruere strategier for å løse et spesifikt problem.
Ensemblet kombinerer forskjellige sett med modeller for å improvisere prediktiv kraft og stabilitet. I følge ensemblebaserte modellene er det to forskjellige scenarier, i.e., en høyere eller lavere datamengde.
La oss forstå ensemblets læring ved å bruke et eksempel; Anta at vi ønsker å investere i "ABC" -firmaet, men vi er ikke sikre på resultatene. Så vi tar råd fra forskjellige mennesker om ytelsen til "ABC" -firmaet. Vi kan ta rådene fra:
Ansatte i "ABC" -firma: Ansatte i selskapet vet alt om selskapets interne funksjonalitet og all informasjonsinformasjon. Imidlertid mangler ansatte et bredere perspektiv på konkurransen, hvordan teknologien utvikler seg, og virkningene på "ABC" -firmaets produkt. I følge informasjonen og tidligere erfaringer er det å ha råd fra ansatte 65% ganger rett.
Finansielle rådgivere for "ABC" -firma: Finansielle rådgivere har et bredere perspektiv om konkurransemiljøet. Rådene fra finansrådgiveren for selskapet har imidlertid vært 75% ganger riktige tidligere.
Aksjemarkedshandlere: Disse handelsmennene observerer alltid selskapets aksjekurs, og de kjenner sesongens trender og samlede markedsresultater. De utvikler også en ivrig institusjon om variasjonen av aksjer over tid. Likevel har rådene fra aksjemarkedshandlere vært 70% ganger nyttige tidligere.
Ansatte i konkurrentens selskap: Disse ansatte kjenner de interne funksjonalitetene til en konkurrents selskap og er klar over de spesifikke endringene. Imidlertid har de ikke hvert syn av selskapet sitt og eksterne faktorer relatert til konkurrentens vekst. Likevel var ansatte i konkurrentens selskap 60% ganger i det siste.
Markedsundersøkelsesgruppe: Dette teamet jobber for å analysere kundepreferansene til "ABC" -firmaets produkt over konkurrentene. Dette teamet tar for seg kundesiden for å være uvitende om variasjonen "ABC" -firmaet vil bringe på grunn av tilpasningen til deres mål. Markedsundersøkelsesgruppen var imidlertid 75% ganger nyttig tidligere.
Ekspert team for sosiale medier: Dette teamet er gunstig for å forstå hvordan "ABC" -firmaets produkter er posisjonert i markedet. De analyserer også kundens følelser som endrer seg med selskapet over tid. Sosiale medier ekspertteam uvitende om informasjon utover digital markedsføring. Så de er 65% ganger i det siste.
I ovennevnte scenario har vi forskjellige aspekter ved å ta en god beslutning, da nøyaktighetsgraden kan være 99%. Forutsetningene vi har brukt ovenfor er imidlertid uavhengige og litt ekstreme fordi de forventes å være korrelert.
Ensemblemetoder
La oss nå diskutere fullstendig informasjon om de forskjellige teknikkene for ensemblelæring i Python:
Grunnleggende ensemblemetode
Det er tre typer teknikker i den grunnleggende ensemblemetoden, og de er:
Det viktigste arbeidet med maksimalt avstemning brukes til å løse klassifiseringsproblemer. Denne metoden har flere uavhengige modeller, og den individuelle produksjonen er kjent som "stemme". Flere modeller brukes til å forutsi hvert datapunkt. Klassen med en maksimal avstemning vil komme tilbake som en produksjon. Forutsigelsen som brukere får av flertallet av modellen vil bli brukt som en endelig spådom.
For eksempel har vi fem eksperter for å vurdere et produkt, de har gitt rangeringene som dette:
Ekspert 1 | Ekspert 2 | Ekspert 3 | Ekspert 4 | Ekspert 5 | Endelig vurdering |
4 | 5 | 4 | 5 | 4 | 4 |
Her er prøvekoden for eksemplet ovenfor:
Model1 = tre.DecisionTreeClassifier ()I eksemplet ovenfor er X_Train en uavhengig variabel av treningsdataene, og Y_Train er en målvariabel for treningsdataene. Her er x_train, x_test og y_test valideringssett.
Det er flere spådommer for hvert datapunkt i gjennomsnittet; det brukes til regresjonsproblemet. I denne teknikken finner vi et gjennomsnitt av flere spådommer fra de gitte modellene og bruker dette gjennomsnittet for å oppnå en endelig prediksjon.
Gjennomsnittsmetoden har uavhengige modeller som brukes til å finne gjennomsnittet av spådommene. Generelt er den kombinerte utgangen mer nøyaktig enn den enkelte utgang da variansen reduseres. Denne metoden brukes til å lage passende spådommer i regresjonsproblemet eller finne muligheten for klassifiseringsproblemet.
Hvis vi vurderer eksemplet ovenfor, vil gjennomsnittet av rangeringene være
Ekspert 1 | Ekspert 2 | Ekspert 3 | Ekspert 4 | Ekspert 5 | Endelig vurdering |
4 | 5 | 4 | 5 | 4 | 4 |
Gjennomsnitt av rangeringene = (4+5+4+5+4+4)/5 = 4.4
Eksempelkode for problemet ovenfor vil være:
Model1 = tre.DecisionTreeClassifier ()Denne metoden er en utvidet type av gjennomsnittlig metode da modeller tildeles forskjellige vekter som definerer viktigheten av hver modell for riktig prediksjon. For eksempel, hvis et team har to eksperter og to nybegynnere, vil viktigheten bli gitt til ekspertene i stedet for nybegynnere.
Resultatet av det vektede gjennomsnittet kan beregnes som [(5 × 0.24) + (4 × 0.24) + (5 × 0.19) + (4 × 0.19) + (4 × 0.19)] = 4.68.
Faktorer | Ekspert 1 | Ekspert 2 | Ekspert 3 | Ekspert 4 | Ekspert 5 | Endelig vurdering |
vekt | 0.24 | 0.24 | 0.19 | 0.19 | 0.19 | |
vurdering | 5 | 4 | 5 | 4 | 4 | 4.68 |
Eksempelkode for ovennevnte eksempel på vektet gjennomsnitt:
Model1 = tre.DecisionTreeClassifier ()Avanserte ensemblemetoder
Stablingsmetode, flere modeller som regresjon eller klassifisering kombineres gjennom en metamodell. Med andre ord, denne metoden bruker forskjellige spådommer fra forskjellige modeller for å bygge en ny modell. Alle basismodellene er ordentlig trent på datasettet, og deretter er en metamodell riktig opplært på funksjoner som returneres fra basismodeller. Derfor er en basismodell i stabling spesielt forskjellig, og metamodellen er gunstig for å finne funksjonene fra basismodellen for å oppnå stor nøyaktighet. Stabling har et spesifikt algoritmetrinn som nedenfor:
Blanding er den samme som stablingsmetoden, men den bruker et holdout -sett fra et togsett for å lage spådommer. Med enkle ord bruker Blending et valideringsdatasett og holder det atskilt for å gjøre spådommene i stedet for å bruke et komplett datasett for å trene en basismodell. Så her er de algoritmiske trinnene vi kan bruke i blandingen:
Bagging kalles også en bootstrapping -metode; den kombinerer resultater av forskjellige modeller for å oppnå generaliserte resultater. I denne metoden kjører en basismodell på posene eller undergruppene for å oppnå en rettferdig distribusjon av et komplett datasett. Disse posene er undergrupper av et datasett med erstatning for å lage størrelsen på en pose som ligner på et komplett datasett. Utgangen av sekking dannes når alle basemodellene er kombinert for utgangen. Det er en spesifikk algoritme for tigging som nedenfor:
Boosting Works for å forhindre at feil basemodell påvirker en endelig produksjon, i stedet for å kombinere en basismodell, øke fokusert på å lage en ny modell avhengig av en tidligere. Denne nye modellen fjerner alle tidligere modellers feil, og hver modell er kjent som en svak elev. Den endelige modellen kalles en sterk elev, skapt ved å få et vektet middel av de svake elevene. Det er en sekvensiell prosedyre der hver påfølgende modell fungerer for å rette opp feil i tidligere modeller. Følgende er de sekvensielle trinnene i algoritmen for å øke:
Konklusjon
Som avslutter vår detaljerte forklaring av ensemblelæring med passende eksempler i Python. Som vi har nevnt tidligere, har ensemblelæring flere spådommer, så med andre ord bruker vi flere modeller for å finne den mest nøyaktige produksjonen som mulig. Vi har nevnt typer ensemblelæring med eksempler og algoritmer av dem. Det er flere metoder for å finne ut resultatene ved hjelp av flere prediksjoner. I følge mange dataforskere tilbyr ensemblelæring mest mulig nøyaktig output som den bruker flere spådommer eller modeller.