stub Generative vs. diskriminerende maskinlæringsmodeller - Unite.AI
Kontakt med oss

AI 101

Generative vs. diskriminerende maskinlæringsmodeller

mm
oppdatert on

Noen maskinlæringsmodeller tilhører enten de «generative» eller «diskriminerende» modellkategoriene. Men hva er forskjellen disse to kategoriene av modeller? Hva betyr det at en modell er diskriminerende eller generativ?

Det korte svaret er at generative modeller er de som inkluderer distribusjonen av datasettet, og returnerer en sannsynlighet for et gitt eksempel. Generative modeller brukes ofte til å forutsi hva som skjer neste gang i en sekvens. I mellomtiden brukes diskriminerende modeller for enten klassifisering eller regresjon, og de returnerer en prediksjon basert på betinget sannsynlighet. La oss utforske forskjellene mellom generative og diskriminerende modeller mer detaljert, slik at vi virkelig kan forstå hva som skiller de to modellene og når hver type skal brukes.

Generative vs. diskriminerende modeller

Det finnes en rekke måter å kategorisere en maskinlæringsmodell på. En modell kan klassifiseres som å tilhøre forskjellige kategorier som: generative modeller, diskriminerende modeller, parametriske modeller, ikke-parametriske modeller, trebaserte modeller, ikke-trebaserte modeller.

Denne artikkelen vil fokusere på forskjellene mellom generative modeller og diskriminerende modeller. Vi starter med å definere både generative og diskriminerende modeller, og deretter vil vi utforske noen eksempler på hver type modell.

Generative modeller

Generative modeller er de som fokuserer på fordelingen av klassene i datasettet. Maskinlæringsalgoritmene modellerer vanligvis fordelingen av datapunktene. Generative modeller er avhengige av å finne felles sannsynlighet. Opprette punkter der en gitt inngangsfunksjon og en ønsket utgang/etikett eksisterer samtidig.

Generative modeller brukes vanligvis for å estimere sannsynligheter og sannsynlighet, modellering av datapunkter og diskriminering mellom klasser basert på disse sannsynlighetene. Fordi modellen lærer en sannsynlighetsfordeling for datasettet, kan den referere til denne sannsynlighetsfordelingen for å generere nye dataforekomster. Generative modeller er ofte avhengige av Bayes teorem for å finne fellessannsynligheten ved å finne p(x,y). Generative modeller modellerer i hovedsak hvordan dataene ble generert, svar på følgende spørsmål:

"Hva er sannsynligheten for at denne klassen eller en annen klasse genererte dette datapunktet/forekomsten?"

Eksempler på generative maskinlæringsmodeller inkluderer Linear Discriminant Analysis (LDA), Hidden Markov-modeller og Bayesianske nettverk som Naive Bayes.

Diskriminerende modeller

Mens generative modeller lærer om distribusjonen av datasettet, diskriminerende modeller lære om grensen mellom klasser i et datasett. Med diskriminerende modeller er målet å identifisere beslutningsgrensen mellom klasser for å bruke pålitelige klasseetiketter på dataforekomster. Diskriminerende modeller skiller klassene i datasettet ved å bruke betinget sannsynlighet, uten å gjøre noen antakelser om individuelle datapunkter.

Diskriminerende modeller tar sikte på å svare på følgende spørsmål:

"Hvilken side av avgjørelsesgrensen er denne instansen funnet i?"

Eksempler på diskriminerende modeller innen maskinlæring inkluderer støttevektormaskiner, logistisk regresjon, beslutningstrær og tilfeldige skoger.

Forskjeller mellom generativ og diskriminerende

Her er en rask oversikt over de store forskjellene mellom generative og diskriminerende modeller.

Generative modeller:

  • Generative modeller tar sikte på å fange opp den faktiske fordelingen av klassene i datasettet.
  • Generative modeller forutsier den felles sannsynlighetsfordelingen – p(x,y) – ved å bruke Bayes-teorem.
  • Generative modeller er beregningsmessig dyre sammenlignet med diskriminerende modeller.
  • Generative modeller er nyttige for maskinlæringsoppgaver uten tilsyn.
  • Generative modeller påvirkes mer av tilstedeværelsen av uteliggere enn diskriminerende modeller.

Diskriminerende modeller:

  • Diskriminerende modeller modellerer beslutningsgrensen for datasettklassene.
  • Diskriminerende modeller lærer den betingede sannsynligheten – p(y|x).
  • Diskriminerende modeller er beregningsmessig billige sammenlignet med generative modeller.
  • Diskriminerende modeller er nyttige for veiledede maskinlæringsoppgaver.
  • Diskriminerende modeller har fordelen av å være mer robuste overfor uteliggere, i motsetning til de generative modellene.
  • Diskriminerende modeller er mer robuste overfor uteliggere sammenlignet med generative modeller.

Vi skal nå kort utforske noen forskjellige eksempler på generative og diskriminerende maskinlæringsmodeller.

Eksempler på generative modeller

Lineær diskriminantanalyse (LDA)

LDA-modeller funksjon ved å estimere variansen og gjennomsnittet av dataene for hver klasse i datasettet. Etter at gjennomsnittet og variansene for hver klasse er beregnet, kan spådommer gjøres ved å estimere sannsynligheten for at et gitt sett med innganger tilhører en gitt klasse.

Skjulte Markov -modeller

Markov-kjeder kan tenkes på som grafer med sannsynligheter som indikerer hvor sannsynlig det er at vi vil bevege oss fra ett punkt i kjeden, en «tilstand», til en annen tilstand. Markov-kjeder brukes til å bestemme sannsynligheten for å flytte fra tilstand j til tilstand i, som kan betegnes som p(i,j). Dette er bare fellessannsynligheten nevnt ovenfor. En skjult Markov-modell er der en usynlig, uobserverbar Markov-kjede brukes. Datainndataene er gitt til modellen, og sannsynlighetene for den nåværende tilstanden og tilstanden umiddelbart før den brukes til å beregne det mest sannsynlige utfallet.

Bayesianske nettverk

Bayesianske nettverk er en type probabilistisk grafisk modell. De representerer betingede avhengigheter mellom variabler, som representert av en rettet asyklisk graf. I et Bayesiansk nettverk representerer hver kant av grafen en betinget avhengighet, og hver node tilsvarer en unik variabel. Den betingede uavhengigheten for de unike relasjonene i grafen kan brukes til å bestemme fellesfordelingen av variablene og beregne felles sannsynlighet. Med andre ord, et Bayesiansk nettverk fanger opp en delmengde av de uavhengige relasjonene i en spesifikk felles sannsynlighetsfordeling.

Når et Bayesiansk nettverk er opprettet og riktig definert, med tilfeldige variabler, betingede relasjoner og sannsynlighetsfordelinger kjent, kan det brukes til å estimere sannsynligheten for hendelser eller utfall.

En av de mest brukte typene Bayesian Networks er en naiv Bayes-modell. En naiv Bayes-modell håndterer utfordringen med å beregne sannsynlighet for datasett med mange parametere/variabler ved å behandle alle funksjoner som uavhengige av hverandre.

Eksempler på diskriminerende modeller

Støtt vektormaskiner

Støtt vektormaskiner operere ved å tegne en beslutningsgrense mellom datapunkter, finne den beslutningsgrensen som best skiller de forskjellige klassene i datasettet. SVM-algoritmen tegner enten linjer eller hyperplan som skiller punkter, for henholdsvis 2-dimensjonale rom og 3D-rom. SVM forsøker å finne den linjen/hyperplanet som skiller klassene best ved å prøve å maksimere marginen, eller avstanden mellom linjen/hyperplanet til de nærmeste punktene. SVM-modeller kan også brukes på datasett som ikke er lineært separerbare ved å bruke "kjernetrikset" for å identifisere ikke-lineære beslutningsgrenser.

Logistisk regresjon

Logistisk regresjon er en algoritme som bruker en logit (log-odds) funksjon for å bestemme sannsynligheten for at en inngang er i en av to tilstander. En sigmoid-funksjon brukes til å "presse" sannsynligheten mot enten 0 eller 1, sant eller usant. Sannsynligheter større enn 0.50 antas å være klasse 1, mens sannsynligheter 0.49 eller lavere antas å være 0. Av denne grunn brukes logistisk regresjon typisk i binære klassifiseringsproblemer. Imidlertid kan logistisk regresjon brukes på multi-klasse problemer ved å bruke en mot alle tilnærming, lage en binær klassifiseringsmodell for hver klasse og bestemme sannsynligheten for at et eksempel er en målklasse eller en annen klasse i datasettet.

Beslutningstre

A beslutningstre modellfunksjoner ved å dele et datasett ned i mindre og mindre deler, og når undersettene ikke kan deles videre, er resultatet et tre med noder og blader. Noder i et beslutningstre er der beslutninger om datapunkter tas ved hjelp av forskjellige filtreringskriterier. Bladene i et beslutningstre er datapunktene som er klassifisert. Beslutningstrealgoritmer kan håndtere både numeriske og kategoriske data, og splittelser i treet er basert på spesifikke variabler/funksjoner.

Tilfeldige skoger

A tilfeldig skogmodell er i utgangspunktet bare en samling av beslutningstrær hvor prediksjonene til de enkelte trærne er gjennomsnittliggjort for å komme til en endelig avgjørelse. Den tilfeldige skogalgoritmen velger observasjoner og funksjoner tilfeldig, og bygger de individuelle trærne basert på disse valgene.

Denne opplæringsartikkelen vil utforske hvordan du lager et Box Plot i Matplotlib. Boksplott brukes til å visualisere oppsummeringsstatistikk for et datasett, og viser attributter for distribusjonen som dataens rekkevidde og distribusjon.

Blogger og programmerer med spesialiteter innen Maskinlæring og Dyp læring emner. Daniel håper å hjelpe andre å bruke kraften til AI til sosialt gode.