Ensemble læring forklart i enklest mulige termer

Ensemblelæring kan hjelpe deg med å ta bedre beslutninger og løse mange virkelige utfordringer ved å kombinere beslutninger fra flere modeller.

Maskinlæring (ML) fortsetter å utvide sine vinger i flere sektorer og bransjer, enten det er finans, medisin, apputvikling eller sikkerhet.

Trening av ML-modeller på riktig måte vil hjelpe deg med å oppnå større suksess i din virksomhet eller jobbrolle, og det finnes ulike metoder for å oppnå det.

I denne artikkelen vil jeg diskutere ensemblelæring, dens betydning, brukstilfeller og teknikker.

Følg med!

Hva er ensemblelæring?

I maskinlæring og statistikk refererer «ensemble» til metoder som genererer ulike hypoteser mens de bruker en felles basislærer.

Og ensemblelæring er en maskinlæringstilnærming der flere modeller (som eksperter eller klassifiserere) er strategisk skapt og kombinert med mål om å løse et beregningsproblem eller lage bedre spådommer.

Denne tilnærmingen søker å forbedre prediksjonen, funksjonstilnærmingen, klassifiseringen, etc., ytelsen til en gitt modell. Det brukes også til å eliminere muligheten for at du velger en dårlig eller mindre verdifull modell blant mange. For å oppnå forbedret prediktiv ytelse, brukes flere læringsalgoritmer.

Viktigheten av ensemblelæring i ML

I maskinlæringsmodeller er det noen kilder som skjevhet, varians og støy som kan forårsake feil. Ensemblelæring kan bidra til å redusere disse feilskapende kildene og sikre stabiliteten og nøyaktigheten til ML-algoritmene dine.

Her er grunnen til at ensemblelæring brukes i ulike scenarier:

Velge riktig klassifisering

Ensemblelæring hjelper deg med å velge en bedre modell eller klassifiserer samtidig som den reduserer risikoen som kan oppstå på grunn av dårlig modellvalg.

Det finnes ulike typer klassifikatorer som brukes for ulike problemer, som støttevektormaskiner (SVM), flerlagsperceptron (MLP), naive Bayes-klassifiserere, beslutningstrær osv. I tillegg er det ulike realiseringer av klassifiseringsalgoritmer som du må velge . Ytelsen til ulike treningsdata kan også være forskjellig.

Men i stedet for å velge bare én modell, kan du unngå å velge dårligere modeller hvis du bruker et ensemble av alle disse modellene og kombinerer deres individuelle utganger.

Datavolum

Mange ML-metoder og -modeller er ikke så effektive i sine resultater hvis du mater dem med utilstrekkelig data eller et stort datavolum.

På den annen side kan ensemblelæring fungere i begge scenarier, selv om datavolumet er for lite eller for mye.

  • Hvis det er utilstrekkelig data, kan du bruke bootstrapping til å trene forskjellige klassifiserere ved hjelp av forskjellige bootstrap-dataeksempler.
  • Hvis det er et stort datavolum som kan gjøre opplæringen av en enkelt klassifiserer utfordrende, kan du strategisk dele data inn i mindre delsett.

Kompleksitet

En enkelt klassifikator er kanskje ikke i stand til å løse noen svært komplekse problemer. Deres beslutningsgrenser som skiller data fra ulike klasser kan være svært komplekse. Så hvis du bruker en lineær klassifikator på en ikke-lineær, kompleks grense, vil den ikke kunne lære den.

Men ved å kombinere et ensemble av passende, lineære klassifiserere på riktig måte, kan du få det til å lære en gitt ikke-lineær grense. Klassifisereren vil dele dataene inn i mange lettlærte og mindre partisjoner, og hver klassifikator lærer bare én enklere partisjon. Deretter vil ulike klassifiserere bli kombinert for å produsere en ca. beslutningsgrense.

Tillitsestimat

I ensemblelæring tildeles en tillitserklæring til en beslutning som et system har tatt. Anta at du har et ensemble av forskjellige klassifiserere som er trent på et gitt problem. Hvis flertallet av klassifisere er enige i beslutningen som er tatt, kan resultatet betraktes som et ensemble med en beslutning med høy tillit.

På den annen side, hvis halvparten av klassifisere ikke er enig i avgjørelsen som er tatt, sies det å være et ensemble med en beslutning med lav tillit.

Men lav eller høy tillit er ikke alltid den riktige avgjørelsen. Men det er stor sjanse for at en avgjørelse med høy selvtillit blir riktig hvis ensemblet er riktig trent.

Nøyaktighet med Data Fusion

Data samlet inn fra flere kilder, når de kombineres strategisk, kan forbedre nøyaktigheten av klassifiseringsbeslutninger. Denne nøyaktigheten er høyere enn den som er laget ved hjelp av en enkelt datakilde.

Hvordan fungerer ensemblelæring?

Ensemblelæring tar flere kartfunksjoner som forskjellige klassifiserere har lært, og kombinerer dem deretter for å lage en enkelt kartfunksjon.

Her er et eksempel på hvordan ensemblelæring fungerer.

Eksempel: Du lager en matbasert applikasjon for sluttbrukerne. For å tilby en brukeropplevelse av høy kvalitet, ønsker du å samle inn tilbakemeldingene deres angående problemene de står overfor, fremtredende smutthull, feil, feil, etc.

For dette kan du spørre om meningene til familie, venner, kolleger og andre personer som du ofte kommuniserer med angående matvalgene deres og opplevelsen av å bestille mat på nettet. Du kan også gi ut applikasjonen din i betaversjon for å samle tilbakemeldinger i sanntid uten skjevheter eller støy.

Så det du faktisk gjør her er å vurdere flere ideer og meninger fra forskjellige mennesker for å bidra til å forbedre brukeropplevelsen.

Ensemblelæring og dens modeller fungerer på lignende måte. Den bruker et sett med modeller og kombinerer dem for å produsere en endelig utgang for å forbedre prediksjonsnøyaktigheten og ytelsen.

Grunnleggende ensemblelæringsteknikker

#1. Modus

En «modus» er en verdi som vises i et datasett. I ensemblelæring bruker ML-fagfolk flere modeller for å lage spådommer om hvert datapunkt. Disse spådommene regnes som individuelle stemmer, og spådommen som de fleste modellene har gjort regnes som den endelige spådommen. Det brukes mest i klassifiseringsproblemer.

Eksempel: Fire personer vurderte søknaden din til 4 mens en av dem vurderte den til 3, så vil modusen være 4 siden flertallet stemte 4.

#2. Gjennomsnittlig/gjennomsnittlig

Ved å bruke denne teknikken tar fagfolk hensyn til alle modellspådommene og beregner gjennomsnittet for å komme med den endelige prediksjonen. Det brukes mest til å lage spådommer for regresjonsproblemer, beregne sannsynligheter i klassifiseringsproblemer og mer.

Eksempel: I eksemplet ovenfor, der fire personer vurderte appen din til 4 mens én person vurderte den til 3, ville gjennomsnittet være (4+4+4+4+3)/5=3,8

#3. Vektlagt gjennomsnitt

I denne ensemblelæringsmetoden tildeler fagfolk forskjellige vekter til forskjellige modeller for å lage en prediksjon. Her beskriver den tildelte vekten hver modells relevans.

Eksempel: Anta at 5 personer ga tilbakemelding på søknaden din. Av dem er 3 applikasjonsutviklere, mens 2 ikke har erfaring med apputvikling. Så tilbakemeldingene til de 3 personene vil bli gitt mer vekt enn de andre 2.

Avanserte ensemblelæringsteknikker

#1. Bagging

Bagging (Bootstrap AGGregatING) er en svært intuitiv og enkel ensemblelæringsteknikk med god ytelse. Som navnet antyder, er det laget ved å kombinere to begreper «Bootstrap» og «aggregation».

Bootstrapping er en annen samplingsmetode der du må lage delsett av flere observasjoner hentet fra et originalt datasett med erstatning. Her vil delsettets størrelse være den samme som det opprinnelige datasettet.

Kilde: Buggy-programmerer

Så i bagging brukes undersett eller poser for å forstå fordelingen av hele settet. Imidlertid kan undersettene være mindre enn det opprinnelige datasettet i bagging. Denne metoden involverer en enkelt ML-algoritme. Målet med å kombinere ulike modellers resultater er å oppnå et generalisert resultat.

Slik fungerer bagging:

  • Flere delsett genereres fra det originale settet og observasjoner velges med erstatninger. Delsettene brukes i opplæringen av modeller eller beslutningstrær.
  • En svak modell eller basismodell lages for hvert delsett. Modellene vil være uavhengige av hverandre og kjøre parallelt.
  • Den endelige prediksjonen vil bli gjort ved å kombinere hver prediksjon fra hver modell ved å bruke statistikk som gjennomsnitt, stemmegivning, etc.

Populære algoritmer som brukes i denne ensembleteknikken er:

  • Tilfeldig skog
  • Posede beslutningstrær

Fordelen med denne metoden er at den bidrar til å holde variansfeil på et minimum i beslutningstrær.

#2. Stabling

Bildekilde: OpenGenus IQ

I stablet eller stablet generalisering brukes spådommer fra forskjellige modeller, som et beslutningstre, for å lage en ny modell for å lage spådommer på dette testsettet.

Stabling innebærer å lage støvler med undersett av data for treningsmodeller, som ligner på bagging. Men her blir utdataene fra modellene tatt som en input som skal mates til en annen klassifikator, kjent som en metaklassifikator for den endelige prediksjonen av prøvene.

Grunnen til at to klassifiseringslag brukes er for å bestemme om treningsdatasettene er lært på riktig måte. Selv om to-lags tilnærmingen er vanlig, kan flere lag også brukes.

Du kan for eksempel bruke 3-5 modeller i det første laget eller nivå-1 og en enkelt modell i lag 2 eller nivå 2. Sistnevnte vil kombinere spådommene oppnådd i nivå 1 for å lage den endelige prediksjonen.

Videre kan du bruke hvilken som helst ML-læringsmodell for å samle spådommer; en lineær modell som lineær regresjon, logistisk regresjon, etc., er vanlig.

Populære ML-algoritmer som brukes i stabling er:

  • Blanding
  • Super ensemble
  • Stablede modeller

Merk: Blanding bruker et validerings- eller holdout-sett fra treningsdatasettet for å lage spådommer. I motsetning til stabling, innebærer blanding at spådommer kun gjøres fra holdout.

#3. Forsterkning

Boosting er en iterativ ensemblelæringsmetode som justerer vekten til en spesifikk observasjon avhengig av dens siste eller tidligere klassifisering. Dette betyr at hver påfølgende modell tar sikte på å rette opp feilene som ble funnet i den forrige modellen.

Hvis observasjonen ikke er klassifisert riktig, øker forsterkning vekten av observasjonen.

I boosting trener fagfolk den første algoritmen for boosting på et komplett datasett. Deretter bygger de de påfølgende ML-algoritmene ved å bruke residualene hentet fra den forrige boostingsalgoritmen. Dermed legges det mer vekt på de feil observasjonene som ble forutsagt av den forrige modellen.

Slik fungerer det trinnvis:

  • Et delsett vil bli generert fra det opprinnelige datasettet. Hvert datapunkt vil ha de samme vektene i utgangspunktet.
  • Oppretting av en basismodell skjer på delsettet.
  • Forutsigelsen vil bli gjort på hele datasettet.
  • Ved å bruke de faktiske og anslåtte verdiene vil feil beregnes.
  • Feil predikerte observasjoner vil tillegges mer vekt
  • En ny modell vil bli opprettet og den endelige prediksjonen vil bli gjort på dette datasettet, mens modellen prøver å rette opp tidligere gjort feil. Flere modeller vil bli opprettet på lignende måte, og hver korrigerer de tidligere feilene
  • Den endelige prediksjonen vil bli gjort fra den endelige modellen, som er det vektede gjennomsnittet av alle modellene.

Populære boostingsalgoritmer er:

  • CatBoost
  • Lett GBM
  • AdaBoost

Fordelen med boosting er at den genererer overlegne spådommer og reduserer feil på grunn av skjevhet.

Andre ensembleteknikker

En blanding av eksperter: den brukes til å trene flere klassifiserere, og utgangene deres er ensemble med en generell lineær regel. Her er vektene gitt til kombinasjonene bestemt av en trenerbar modell.

Flertallsstemmegivning: det innebærer å velge en odde klassifiser, og spådommer beregnes for hver prøve. Klassen som mottar den maksimale klassen fra en klassifiseringspool vil være den forutsagte klassen til ensemblet. Den brukes til å løse problemer som binær klassifisering.

Maksregel: den bruker sannsynlighetsfordelingene til hver klassifikator og bruker tillit til å lage spådommer. Den brukes til klassifiseringsproblemer i flere klasser.

Reelle brukstilfeller for ensemblelæring

#1. Ansikts- og følelsesgjenkjenning

Ensemblelæring bruker teknikker som uavhengig komponentanalyse (ICA) for å utføre ansiktsgjenkjenning.

Dessuten brukes ensemblelæring til å oppdage følelsene til en person gjennom talegjenkjenning. I tillegg hjelper funksjonene brukere med å oppdage følelsesgjenkjenning i ansiktet.

#2. Sikkerhet

Svindeloppdagelse: Ensemblelæring bidrar til å forbedre kraften til normal atferdsmodellering. Dette er grunnen til at det anses å være effektivt for å oppdage uredelige aktiviteter, for eksempel i kredittkort- og banksystemer, telekommunikasjonssvindel, hvitvasking, etc.

DDoS: Distribuert tjenestenekt (DDoS) er et dødelig angrep på en ISP. Ensembleklassifiserere kan redusere feildeteksjon og også diskriminere angrep fra ekte trafikk.

Inntrengningsdeteksjon: Ensemblelæring kan brukes i overvåkingssystemer som inntrengningsdeteksjonsverktøy for å oppdage inntrengerkoder ved å overvåke nettverk eller systemer, finne anomalier og så videre.

Oppdage skadelig programvare: Ensemblelæring er ganske effektivt til å oppdage og klassifisere skadelig programvare som datavirus og ormer, løsepengeprogramvare, trojanske hester, spionprogrammer osv. ved hjelp av maskinlæringsteknikker.

#3. Inkrementell læring

Ved inkrementell læring lærer en ML-algoritme fra et nytt datasett mens den beholder tidligere læring, men uten å få tilgang til tidligere data som den har sett. Ensemblesystemer brukes i inkrementell læring ved å få det til å lære en ekstra klassifisering på hvert datasett etter hvert som det blir tilgjengelig.

#4. Medisin

Ensembleklassifiserere er nyttige innen medisinsk diagnose, for eksempel påvisning av nevro-kognitive lidelser (som Alzheimers). Den utfører deteksjon ved å ta MR-datasett som input og klassifisere cervikal cytologi. Bortsett fra det, brukes det i proteomikk (studier av proteiner), nevrovitenskap og andre områder.

#5. Fjernmåling

Endringsdeteksjon: Ensembleklassifiserere brukes til å utføre endringsdeteksjon gjennom metoder som Bayesiansk gjennomsnitt og flertallsavstemning.

Kartlegging av landdekke: Ensemblelæringsmetoder som boosting, beslutningstrær, kjernehovedkomponentanalyse (KPCA) etc. brukes for å oppdage og kartlegge landdekke effektivt.

#6. Finansiere

Nøyaktighet er et kritisk aspekt ved økonomi, enten det er beregninger eller forutsigelser. Det påvirker i stor grad resultatet av beslutningene du tar. Disse kan også analysere endringer i aksjemarkedsdata, oppdage manipulasjon i aksjekurser og mer.

Ytterligere læringsressurser

#1. Ensemblemetoder for maskinlæring

Denne boken vil hjelpe deg å lære og implementere viktige metoder for ensemblelæring fra bunnen av.

#2. Ensemblemetoder: grunnlag og algoritmer

Denne boken har det grunnleggende om ensemblelæring og dens algoritmer. Den skisserer også hvordan den brukes i den virkelige verden.

#3. Ensemble læring

Den gir en introduksjon til en enhetlig ensemblemetode, utfordringer, applikasjoner osv.

#4. Ensemble maskinlæring: Metoder og anvendelser:

Det gir bred dekning av avanserte ensemblelæringsteknikker.

Konklusjon

Jeg håper du nå har en ide om ensemblelæring, dens metoder, brukstilfeller og hvorfor bruken av den kan være gunstig for din brukssituasjon. Den har potensial til å løse mange virkelige utfordringer, fra domenet for sikkerhet og apputvikling til økonomi, medisin og mer. Brukene utvides, så det vil sannsynligvis bli flere forbedringer i dette konseptet i nær fremtid.

Du kan også utforske noen verktøy for syntetisk datagenerering for å trene maskinlæringsmodeller