Hva er dyplæring?
Dyplæring er en type maskinlæring som bruker kunstige nevrale nettverk til å legge til rette for at digitale systemer kan lære og ta beslutninger basert på ustrukturerte, umerkede data.
Maskinlæring lærer generelt systemer med kunstig intelligens å lære av innhentede erfaringer med data, gjenkjenne mønstre, komme med anbefalinger og tilpasse seg. Det spesielle med dyplæring er at i stedet for bare å svare på regelsett, bygger digitale systemer kunnskap fra eksempler og bruker den kunnskapen til å reagere, oppføre seg og utføre handlinger som mennesker.
Derfor er dyplæring viktig
Dataforskere og utviklere bruker programvare for dyplæring til å lære datamaskiner å analysere store og komplekse datasett, fullføre kompliserte og ikke-lineære oppgaver og svare på tekst, stemme eller bilder, ofte raskere og mer nøyaktig enn mennesker. Disse funksjonalitetene har mange praktiske bruksområder og har muliggjort mange moderne innovasjoner. Dyplæring er for eksempel det førerløse biler bruker til å behandle bilder og skille fotgjengere fra andre objekter på veien, og det smartenhetene dine i hjemmet bruker til å forstå talekommandoene dine.
Dyplæring er viktig, fordi etter hvert som datavolumene øker og datakapasiteten blir kraftigere og rimeligere, investerer selskaper innen detaljhandel, helsetjeneste, transport, produksjon, teknologi og andre sektorer i dyplæring for å drive innovasjon, åpne opp for muligheter og forbli relevant.
Slik fungerer dyplæring
Dyplæring fungerer ved å støtte seg på nevrale nettverksarkitekturer i flere lag, grafikkbehandlingsenheter med høy ytelse rullet ut i skyen eller på klynger, og store mengder merkede data. Dette for å oppnå svært høye nivåer av nøyaktighet for tekst, tale og bildegjenkjenning. All denne kraften kan hjelpe utviklerne dine med å lage digitale systemer med noe som ligner menneskelig intelligens og effektivisere tid til verdi ved å få fart på modellopplæringen fra uker til timer.
En førerløs bilmodell kan for eksempel trenge tusenvis av videotimer og millioner av bilder for å lære seg opp. Uten dyplæring kunne ikke dette opplæringsnivået utføres i stor skala.
Hva er et rammeverk for dyplæring?
For å gjøre komplekse maskinlæringsmodeller enklere å implementere, bruker utviklere rammeverk for dyplæring, som TensorFlow eller PyTorch. Disse rammene hjelper til med å effektivisere prosessen med å samle inn data, som deretter kan brukes til å lære opp nevrale nettverk. I tillegg kan akseleratorer som ONNX Runtime brukes med disse rammeverkene, for å få fart på opplærings- og følgeslutningsmodeller.
Opplæring av dyplæringsmodeller
Det finnes forskjellige strategier og metoder for opplæring av dyplæringsmodeller. La oss se nærmere på noen av dem.
Overvåket opplæring
Med læring med tilsyn blir en algoritme opplært i datasett som er merket. Dette betyr at når algoritmen tar en avgjørelse om en bit informasjon, kan den bruke merkene som følger med dataene til å kontrollere om denne avgjørelsen er korrekt. Med læring med tilsyn må dataene som modellene læres opp i leveres av mennesker. De merker dataene før de bruker dem til å lære opp algoritmen.
Opplæring som ikke overvåkes
Med læring uten tilsyn, blir algoritmer opplært i data som ikke inneholder merker eller informasjon som algoritmen kan bruke til å kontrollere avgjørelsene sine mot. I stedet sorterer og klassifiserer systemet dataene basert på mønstrene det gjenkjenner selv.
Forsterkningsopplæring
Med forsterkende læring løser et system oppgaver ved hjelp av prøving og feiling for å ta en rekke beslutninger i rekkefølge og oppnå et tiltenkt resultat, selv i et miljø som ikke er enkelt. Med forsterkende læring bruker ikke algoritmen datasett til å foreta bestemmelser, men heller informasjon som den samler fra et miljø.
Dyp forsterkende læring
Når teknikker for dyplæring og forsterkende læring kombineres, skaper de en type maskinlæring som kalles dyp forsterkende læring. Dyp forsterkende læring bruker den samme beslutningstakingen med prøving og feiling og komplekse måloppnåelsen som forsterkende læring, men er også avhengig av funksjonaliteter for dyplæring for å behandle og forstå store mengder ustrukturerte data.
Hva brukes dyplæring til?
Dyplæring brukes i bedrifter i en rekke bransjer til et bredt spekter av brukssituasjoner. Her er noen eksempler på hvordan dyplæring vanligvis brukes:
Bilde-, tale- og følelsesgjenkjenning
Dyplæringsprogramvare brukes til å øke nøyaktigheten for bilde-, tale- og følelsesgjenkjenning og til å aktivere bildesøk, personlige digitale assistenter, førerløse kjøretøy, offentlig sikkerhet, digital sikkerhet og annen intelligent teknologi.
Skreddersydde opplevelser
Strømmetjenester, e-handelsforhandlere og andre virksomheter bruker modeller for dyplæring til å drive automatiserte anbefalinger for produkter, filmer, musikk eller andre tjenester og til å perfeksjonere kundeopplevelser basert på kjøpshistorikk, tidligere oppførsel og andre data.
Chatroboter
Kunnskapsrike bedrifter bruker dyplæring til å drive tekst- eller stemmeaktiverte nettbaserte chatroboter for vanlige spørsmål, rutinemessige transaksjoner og spesielt for kundestøtte. De erstatter team av serviceagenter og køer av ventende kunder med automatiserte, kontekstuelt passende og nyttige svar.
Personlige digitale assistenter
Stemmeaktiverte personlige digitale assistenter bruker dyplæring til å forstå tale, svare hensiktsmessig på spørringer og kommandoer på naturlig språk, og til og med på en humoristisk måte iblant.
Førerløse kjøretøy
Den uoffisielle representanten for kunstig intelligens og dyplæring, selvkjørende biler, bruker dyplæringsalgoritmer til å behandle flere dynamiske datastrømmer i løpet av sekunder. De trenger aldri å be om veibeskrivelser og reagerer raskere enn en menneskelig sjåfør på det uventede.
Mange bedrifter bruker maskinlæringsprogramvare med åpen kildekode for å ta løsninger for dyplæring inn i organisasjonene sine.
Hva er nevrale nettverk?
Et kunstig nevralt nettverk (ANN) er en digital arkitektur som etterligner menneskelige kognitive prosesser for å modellere komplekse mønstre, utvikle prediksjoner og reagere hensiktsmessig på eksterne stimuli. Strukturerte data kreves for mange typer maskinlæring, kontra nevrale nettverk, som er i stand til å tolke hendelser i verden rundt dem som data som kan behandles.
Når du leser en rapport, ser på en film, kjører bil eller lukter på en blomst, behandler milliarder av nevroner i hjernen din informasjonen gjennom små elektriske signaler. Hvert nevron behandler inndata, og resultatene sendes til neste nevron for påfølgende behandling. Det sørger til slutt for umiddelbar forretningsinnsikt, latter, en fot på bremsen eller litt glede. I maskinlæring tillater nevrale nettverk digitale systemer å tolke og reagere på situasjoner på omtrent samme måte.
Et ANN er som en hjerne full av digitale nevroner, og mens de fleste ANN-er er rudimentære etterligninger av det som er virkelig, kan de fremdeles behandle store mengder ikke-lineære data for å løse komplekse problemer som ellers kan kreve menneskelig inngrep. Bankanalytikere kan for eksempel bruke et ANN til å behandle lånesøknader og forutsi en søkerens sannsynlighet for mislighold.
Hva kan du gjøre med nevrale nettverk
I maskinlæring brukes nevrale nettverk til læring og modellering av komplekse, flyktige inndata og utdata, og til å utlede skjulte relasjoner og foreta prediksjoner uten begrensninger i datadistribusjon. Nevrale nettverksmodeller er grunnlaget for mange dyplæringsprogrammer, for eksempel visuelt innhold og behandling av naturlig språk, som kan bidra til å støtte svindelbeskyttelse, ansiktsgjenkjenning eller autonome kjøretøy.
De fleste bedrifter er avhengige av prognose for å informere forretningsbeslutninger, salgsstrategier, økonomipolicyer og ressursutnyttelse. Begrensningene ved tradisjonell prognose gjør det imidlertid ofte vanskelig å forutsi komplekse, dynamiske prosesser med flere og ofte skjulte underliggende faktorer, som for eksempel børskurser. Nevrale nettverksmodeller for dyplæring hjelper til med å avsløre komplekse ikke-lineære relasjoner og modellere skjulte faktorer, slik at bedrifter kan utvikle nøyaktige prognoser for de fleste forretningsaktiviteter.
Vanlige nevrale nettverk
Det er dusinvis av forskjellige typer nevrale nettverk med kunstig intelligens, og hvert av dem er egnet for forskjellige dyplæringsprogrammer. Bruk et ANN (kunstig nevralt nettverk) som passer for bedriften din og de teknologiske kravene du har. Her er noen eksempler på vanlige nettverk med kunstig intelligens:
Konvolusjonelt nevralt nettverk (CNN)
Utviklere bruker et CNN til å hjelpe systemer for kunstig intelligens med å konvertere bilder til digitale matriser. CNN-er brukes hovedsakelig til bildeklassifisering og objektregistrering, og passer til ansiktsgjenkjenning, emneregistrering og sentimentanalyser.
Dekonvolusjonelt nevralt nettverk (DNN)
Hvis nettverkssignaler som er komplekse eller har stort volum går tapt eller vikles sammen med andre signaler, vil et DNN hjelpe deg med å finne dem. DNN-er er nyttige for behandling av høyoppløselige bilder og estimater for optisk flyt.
Generativt motstandsnettverk (GAN)
Ingeniører bruker et GAN til å trene modeller i hvordan de genererer ny informasjon eller nytt materiale som etterligner de spesifikke egenskapene til opplæringsdataene. GAN-er hjelper modellene med å skille subtile forskjeller mellom originaler og kopier for å lage mer autentiske kopier. GAN-programmer inkluderer bilde- og videogenerering med nøyaktig gjengivelse, avansert ansiktsgjenkjenning og superoppløsning.
Tilbakevendende nevralt nettverk (RNN)
Et RNN skriver inn data til skjulte lag med bestemte tidsforsinkelser. Nettverksdatabehandling tar høyde for historisk informasjon i gjeldende tilstander, og større mengde inndata endrer ikke modellstørrelsen. RNN er et godt valg for talegjenkjenning, avansert prognose, robotikk og andre komplekse arbeidsbelastninger for dyplæring.
Transformatorer
Transformatorer er utformet for å håndtere sekvensielle inndata. De er imidlertid ikke begrenset til å behandle disse dataene i sekvensiell rekkefølge. Transformatorer bruker i stedet oppmerksomhet – en teknikk som gjør det mulig for modeller å tilordne forskjellige nivåer av innflytelse til forskjellige deler av inndata og identifisere konteksten for individuelle deler av data i en inndatasekvens. Dette åpner for et økt parallelliseringsnivå, som kan redusere modellens opplæringstider.
Maskinlæring vs. nevrale nettverk
Selv om nevrale nettverk regnes som et delsett av maskinlæring, er det noen betraktelige forskjeller mellom nevrale nettverk og vanlige maskinlæringsmodeller.
For det første er nevrale nettverk generelt mer komplekse og i stand til å fungere mer uavhengig enn vanlige maskinlæringsmodeller. Et nevralt nettverk kan for eksempel på egen hånd avgjøre om prediksjonene og resultatene er nøyaktige, mens en maskinlæringsmodell vil trenge innspill fra en menneskelig ingeniør for å se denne forskjellen.
Nevrale nettverk er i tillegg strukturert slik at det nevrale nettverket kan fortsette å lære og ta intelligente beslutninger helt alene. Maskinlæringsmodeller, derimot, er begrenset til beslutningstaking basert bare på det de er blitt spesielt lært opp i.
Kom i gang med dyplæring på Azure
Støtt bildegjenkjenning med nevrale nettverk eller optimaliser behandling av naturlig språk med raske, enkle og nøyaktige BERT NLP-modeller. Utforsk hvordan du bygger, lærer opp og ruller ut alle typer dyplæringsmodeller med Azure Machine Learning.
Utforsk maskinlæring for dataforskere
Lær hvordan du utvikler maskinlæringsløsninger i skyskala på Azure, og utforsk maskinlæringsverktøy for dataforskere og maskinlæringsingeniører.