Dyplæring og maskinlæring er to viktige felt innen kunstig intelligens. Men hvordan skiller de seg?
De siste årene har feltet kunstig intelligens (AI) opplevd rask vekst, drevet av flere faktorer inkludert etablering av ASIC-prosessorer, økt interesse og investeringer fra store selskaper, og tilgjengeligheten av stor Data. Og med OpenAI og TensorFlow tilgjengelig for publikum, har mange mindre selskaper og enkeltpersoner bestemte seg for å bli med og trene sin egen AI gjennom ulike maskinlæring og dyp læring algoritmer.
Hvis du er nysgjerrig på hva maskinlæring og dyp læring er, forskjellene deres og utfordringene og begrensningene ved å bruke dem, så er du på rett sted!
Hva er maskinlæring?
Maskinlæring er et felt innen kunstig intelligens som trener datamaskiner til intelligent å ta spådommer og beslutninger uten eksplisitt programmering. Avhengig av treningsalgoritmen kan maskinlæring trene en modell gjennom enkle hvis-da-regler, komplekse matematiske ligninger og/eller nevrale nettverksarkitekturer.
Mange maskinlæringsalgoritmer bruker strukturerte data for å trene modeller. Strukturerte data er data organisert i et bestemt format eller struktur som regneark og tabeller. Trening av en modell med strukturerte data gir raskere treningstider, og mindre ressurskrav, og gir utviklere en klar forståelse av hvordan modellen løser problemer.
Maskinlæringsmodeller brukes ofte i ulike bransjer som helsevesen, e-handel, finans og produksjon.
Hva er dyp læring?
Deep learning er et underfelt av maskinlæring som fokuserer på treningsmodeller ved å etterligne hvordan mennesker lærer. Siden tabulering av mer kvalitativ informasjon ikke er mulig, ble dyp læring utviklet for å håndtere alle de ustrukturerte dataene som må analyseres. Eksempler på ustrukturerte data kan være bilder, innlegg på sosiale medier, videoer og lydopptak.
Siden datamaskiner har vanskelig for å nøyaktig identifisere mønstre og relasjoner fra ustrukturert data, modeller trent gjennom dyplæringsalgoritmer tar lengre tid å trene, trenger enorme mengder data, og spesialiserte AI-treningsprosessorer.
Bruken av kunstige nevrale nettverk gjør også dyp læring vanskelig å forstå fordi input går gjennom en kompleks, ikke-lineær og høydimensjonal algoritme der det blir vanskelig å fastslå hvordan det nevrale nettverket kom til utgangen eller svar. Dyplæringsmodeller har blitt så vanskelig å forstå at mange begynte å omtale dem som svarte bokser.
Dyplæringsmodeller brukes til komplekse oppgaver som normalt krever et menneske å utføre, for eksempel naturlig språkbehandling, autonom kjøring og bildegjenkjenning.
Forskjellen mellom maskinlæring og dyp læring
Maskinlæring og dyp læring er to viktige felt innen kunstig intelligens. Selv om begge metodene har blitt brukt til å trene opp mange nyttige modeller, har de sine forskjeller. Her er noen:
Algoritmers kompleksitet
En av hovedforskjellene mellom maskinlæring og dyp læring er kompleksiteten til algoritmene deres. Maskinlæringsalgoritmer bruker vanligvis enklere og mer lineære algoritmer. I kontrast bruker dyplæringsalgoritmer bruk av kunstige nevrale nettverk som tillater høyere nivåer av kompleksitet.
Mengde data som kreves
Deep learning bruker kunstige nevrale nettverk for å lage korrelasjoner og relasjoner med de gitte dataene. Siden hver del av data vil ha forskjellige egenskaper, krever dyplæringsalgoritmer ofte store mengder data for nøyaktig å identifisere mønstre i datasettet.
På den annen side vil maskinlæring kreve betydelig mindre datamengder for å ta ganske nøyaktige avgjørelser. Siden maskinlæringsalgoritmer ofte er enklere og krever færre parametere, kan modeller trent gjennom maskinlæringsalgoritmer nøye seg med et mindre datasett.
Tolkbarhet
Maskinlæring krever strukturerte data samt tett utviklerintervensjon for å lage effektive modeller. Dette gjør maskinlæring lettere å tolke ettersom utviklere ofte er en del av prosessen når de trener AI. Nivået av transparens pluss det mindre datasettet og færre parametere gjør det lettere å forstå hvordan modellen fungerer og tar beslutninger.
Deep learning bruker kunstige nevrale nettverk for å lære av ustrukturerte data som bilder, videoer og lyd. Bruken av komplekse nevrale nettverk holder utviklere i mørket når det gjelder å forstå hvordan modellen var i stand til å komme frem til sin beslutning. Dette er grunnen til at dyplæringsalgoritmer ofte anses for å være "black box"-modeller.
Ressurser som kreves
Som diskutert tidligere krever maskinlæring og dyplæringsalgoritmer forskjellige mengder data og kompleksitet. Siden maskinlæringsalgoritmer er enklere og krever et betydelig mindre datasett, kan en maskinlæringsmodell trenes på en personlig datamaskin.
Derimot ville dyplæringsalgoritmer kreve et betydelig større datasett og en mer kompleks algoritme for å trene en modell. Selv om opplæring av dyplæringsmodeller kan gjøres på maskinvare av forbrukerkvalitet, brukes spesialiserte prosessorer som TPU-er ofte for å spare en betydelig mengde tid.
Typer problemer
Maskinlæring og dyplæringsalgoritmer er bedre egnet til å løse ulike typer problemer. Maskinlæring er best egnet for enklere og mer lineære problemer som:
- Klassifisering: Klassifiser noe basert på funksjoner og attributter.
- Regresjon: Forutsi neste utfall basert på tidligere mønstre funnet på inndatafunksjoner.
- Dimensjonsreduksjon: Reduser antall funksjoner mens du opprettholder kjernen eller den essensielle ideen om noe.
- Gruppering: Grupper lignende ting sammen basert på funksjoner uten kunnskap om allerede eksisterende klasser eller kategorier.
Dyplæringsalgoritmer er bedre brukt for komplekse problemer som du ville stole på at et menneske gjør. Slike problemer vil omfatte:
- Bilde- og talegjenkjenning: Identifiser og klassifiser gjenstander, ansikter, dyr, etc., innenfor bilder og video.
- Autonome systemer: Kontroller/kjører biler, roboter og droner autonomt med begrenset eller ingen menneskelig innblanding.
- AI spillroboter: Få AI til å spille, lære og forbedre strategier for å vinne konkurrerende spill som sjakk, Go og Dota 2.
- Naturlig språkbehandling: Forstå menneskelig språk i både tekst og tale.
Selv om du sannsynligvis kunne løst enkle og lineære problemer med dyplæringsalgoritmer, er de best egnet for maskinlæringsalgoritmer ettersom de krever færre ressurser å kjøre, har mindre datasett og krever minimal trening tid.
Det finnes andre underfelt for maskinlæring
Du forstår nå forskjellen mellom maskinlæring og dyp læring. Hvis du noen gang er interessert i å trene din egen modell, husk at dyp læring bare er ett domene i maskinen læring, men det kan være andre underdomener for maskinlæring som passer bedre til problemet du prøver å løse. I så fall bør det å lære andre underdomener for maskinlæring øke effektiviteten din for å løse et problem.