Er Deep Learning bare neurale netværk på steroider?

Forfatter: Laura McKinney
Oprettelsesdato: 4 April 2021
Opdateringsdato: 24 Juni 2024
Anonim
Er Deep Learning bare neurale netværk på steroider? - Teknologi
Er Deep Learning bare neurale netværk på steroider? - Teknologi

Indhold


Kilde: Vs1489 / Dreamstime.com

Tag væk:

Er "dyb læring" bare et andet navn på avancerede neurale netværk, eller er der mere ved det end det? Vi ser på de seneste fremskridt inden for dyb læring såvel som neurale netværk.

Skeptics Club

Hvis du, ligesom jeg, hører til skeptikeklubben, har du måske også spekuleret på, hvad alt det ophidrede handler om dyb læring. Neurale netværk (NN'er) er ikke et nyt koncept. Multilags-perceptron blev introduceret i 1961, hvilket ikke er lige først i går.

Men nuværende neurale netværk er mere komplekse end blot en flerlags perceptron; de kan have mange flere skjulte lag og endda tilbagevendende forbindelser. Men hold ved, bruger de ikke stadig backpropagation-algoritmen til træning?

Ja! Nu er maskinens computerkraft sammenlignelig med hvad der var tilgængeligt i 60'erne eller endda i 80'erne. Dette betyder, at meget mere komplekse neurale arkitekturer kan trænes i en rimelig tid.


Så hvis konceptet ikke er nyt, kan dette betyde, at dyb læring kun er en masse neurale netværk på steroider? Er alt ståhej simpelthen på grund af parallel beregning og mere kraftfulde maskiner? Når jeg undersøger såkaldte deep learning-løsninger, er det sådan, det ser ud. (Hvad er nogle praktiske anvendelser i den virkelige verden til neurale netværk? Find ud af i 5 tilfælde af neurale netværksbrug, der kan hjælpe dig med at forstå teknologien bedre.)

Men som sagt hører jeg dog til skeptikeklubben, og jeg er normalt på vagt over for endnu ikke understøttede beviser. Lad os for en gang lægge fordommene til side, og lad os prøve en grundig undersøgelse af de nyopståede teknikker inden for dyb læring med hensyn til eventuelle neurale netværk.

Når vi graver lidt dybere, finder vi et par nye enheder, arkitekturer og teknikker inden for dyb læring. Nogle af disse innovationer har en mindre vægt, ligesom randomiseringen introduceret af et frafaldslag. Nogle andre er dog ansvarlige for vigtigere ændringer. Og de fleste af dem er helt sikkert afhængige af den større tilgængelighed af databehandlingsressourcer, da de er ret beregningsmæssigt dyre.


Efter min mening har der været tre vigtigste nyskabelser inden for neurale netværk, der stærkt har bidraget til, at dyb læring har fået sin nuværende popularitet: indviklede neurale netværk (CNN'er), lange korttidshukommelsesenheder (LSTM) og generative adversarial netværk (GAN) ).

Konvolutional Neural Networks (CNNs)

Big bang af dyb læring - eller i det mindste da jeg hørte bommen for første gang - skete i et billedgenkendelsesprojekt, ImageNet Large Scale Visual Recognition Challenge, i 2012. For automatisk at genkende billeder er et indviklet neuralt netværk med otte lag - AlexNet - blev brugt. De første fem lag var indviklede lag, nogle af dem efterfulgt af max-poolende lag, og de sidste tre lag var fuldt forbundne lag, alle med en ikke-mættet ReLU-aktiveringsfunktion. AlexNet-netværket opnåede en top-fem-fejl på 15,3%, mere end 10,8 procentpoint lavere end for løberne. Det var en stor bedrift!

Ingen fejl, ingen stress - Din trinvis vejledning til oprettelse af livsændrende software uden at ødelægge dit liv

Du kan ikke forbedre dine programmeringsevner, når ingen er interesseret i softwarekvalitet.

Udover den flerlagsarkitektur var den største innovation af AlexNet det indviklede lag.

Det første lag i et convolutional netværk er altid et convolutional lag. Hver neuron i et indviklet lag fokuserer på et specifikt område (modtageligt felt) af inputbilledet og fungerer gennem dets vægtede forbindelser som et filter for det modtagelige felt. Efter glidning af filteret, neuron efter neuron, over alle de billedmodtagelige felter, producerer udgangen fra det indviklede lag et aktiveringskort eller funktionskort, der kan bruges som en funktionsidentifikator.

Figur 1. Neuron i et indviklet lag, der fungerer som et filter på et 5x5-modtageligt felt i inputbilledet (gengivet fra Adit Deshpande's "En begynders vejledning til forståelse af inddragende neurale netværk").

Ved at tilføje flere indviklede lag oven på hinanden, kan aktiveringskortet repræsentere flere og mere komplekse funktioner fra inputbilledet. Derudover, ofte i en indviklet neural netværksarkitektur, skiftes et par flere lag mellem alle disse indviklede lag for at øge manglende linearitet i kortlægningsfunktionen, forbedre netværkets robusthed og kontrol over tilpasning.

Nu, hvor vi kan registrere funktioner på højt niveau fra inputbilledet, kan vi tilføje et eller flere fuldt tilsluttede lag til slutningen af ​​netværket til traditionel klassificering. Denne sidste del af netværket tager output fra de indviklede lag som input og udsender en N-dimensionel vektor, hvor N er antallet af klasser. Hvert tal i denne N-dimensionelle vektor repræsenterer sandsynligheden for en klasse.

Tilbage i dag hørte jeg ofte indvendingen mod neurale netværk om den manglende gennemsigtighed i deres arkitektur og umuligheden for at fortolke og forklare resultaterne. Denne indsigelse kommer mindre og mindre ofte i dag i forbindelse med dybe læringsnetværk. Det ser ud til, at det nu er acceptabelt at handle black-box-effekten for større nøjagtighed i klassificeringen.

Enhed med lang kortvarig hukommelse (LSTM)

En anden stor forbedring produceret af dyb læring af neurale netværk er blevet set i tidsserier analyse via tilbagevendende neurale netværk (RNN'er).

Gentagne neurale netværk er ikke et nyt koncept. De blev allerede brugt i 90'erne og blev trænet med backpropagation through time (BPTT) algoritmen. I 90'erne var det imidlertid ofte umuligt at træne dem i betragtning af den krævede mængde beregningsressourcer. Imidlertid er det i dag på grund af stigningen i tilgængelig computerkraft blevet ikke kun muligt at træne RNN'er, men også at øge kompleksiteten af ​​deres arkitektur. Er det alt? Nå, selvfølgelig ikke.

I 1997 blev der introduceret en speciel neural enhed til bedre at håndtere memorering af den relevante fortid i en tidsserie: LSTM-enheden. Gennem en kombination af interne porte er en LSTM-enhed i stand til at huske den relevante fortidsinformation eller glemme det irrelevante fortidens indhold i en tidsserie. Et LSTM-netværk er en speciel type tilbagevendende neurale netværk, inklusive LSTM-enheder. Den udfoldede version af en LSTM-baseret RNN er vist i figur 2.

For at overvinde problemet med begrænset lang hukommelseskapacitet bruger LSTM-enheder en yderligere skjult tilstand - celletilstanden C (t) - afledt af den oprindelige skjulte tilstand h (t). C (t) repræsenterer netværkshukommelsen. En bestemt struktur, kaldet porte, giver dig mulighed for at fjerne (glemme) eller tilføje (huske) information til celletilstanden C (t) på hvert tidstrin baseret på inputværdierne x (t) og den forrige skjulte tilstand h (t-1). Hver gate bestemmer, hvilke oplysninger der skal tilføjes eller slettes ved at udlæse værdier mellem 0 og 1. Ved at multiplicere gateudgangen punktvis med celletilstanden C (t-1), information slettes (output af gate = 0) eller holdes (output af gate = 1).

I figur 2 ser vi netværksstrukturen af ​​en LSTM-enhed. Hver LSTM-enhed har tre porte. "Glem gate gate" i begyndelsen filtrerer oplysningerne fra den forrige celletilstand C (t-1) baseret på det aktuelle input x (t) og den forrige celles skjulte tilstand h (t-1). Dernæst beslutter kombinationen af ​​et "input gate-lag" og et "tanh-lag", hvilke oplysninger, der skal tilføjes til det forrige, allerede filtrerede, celletilstand C (t-1). Endelig bestemmer den sidste gate, "output gate", hvilken af ​​oplysningerne fra den opdaterede celletilstand C (t) ender i den næste skjulte tilstand h (t).

For mere information om LSTM-enheder, se GitHub-blogindlægget “Understanding LSTM Networks” af Christopher Olah.

Figur 2. Struktur af en LSTM-celle (gengivet fra “Deep Learning” af Ian Goodfellow, Yoshua Bengio og Aaron Courville). Bemærk de tre porte inden for LSTM-enhederne. Fra venstre mod højre: glem gate, input gate og output gate.

LSTM-enheder er blevet brugt med succes i en række tidsserier forudsigelsesproblemer, men især til talegenkendelse, naturlig sprogbehandling (NLP) og fri generation.

Generative Adversarial Networks (GAN)

Et generativt adversarial netværk (GAN) er sammensat af to dybe læringsnetværk, generatoren og diskriminereren.

En generator G er en transformation, der transformerer input støj z i en tensor - normalt et billede - x (x= G (z)). DCGAN er et af de mest populære design til generatorenetværket. I CycleGAN-netværk udfører generatoren flere transponerede viklinger for at upample z for til sidst at generere billedet x (Figur 3).

Det genererede billede x derefter føres ind i diskrimineringsnetværket. Diskrimineringsnetværket kontrollerer de rigtige billeder i træningssættet og det billede, der genereres af generatorenettet og producerer et output D (x), hvilket er sandsynligheden for, at billedet x er ægte.

Både generator og diskriminatoren trænes ved hjælp af backpropagation algoritme til at producere D (x)=1 til de genererede billeder. Begge netværk trænes i skiftende trin, der konkurrerer om at forbedre sig selv. GAN-modellen konvergerer til sidst og producerer billeder, der ser reelle ud.

Figur 3. En DCGAN-generator (gengivet fra Jonathan Huis “GAN - Hvad er Generative Adversary Networks GAN?”).

GAN'er er med succes anvendt på billedtensorer for at skabe anime, menneskelige figurer og endda van Gogh-lignende mesterværker. (For andre moderne anvendelser af neurale netværk, se 6 store fremskridt, du kan tilskrive kunstige neurale netværk.)

konklusioner

Så er dybt lære bare en flok neurale netværk på steroider? Delvist.

Selv om det er ubestrideligt, at hurtigere hardwarepræstationer stort set har bidraget til en vellykket træning af mere komplekse, flerlags og endda tilbagevendende neurale arkitekturer, er det også rigtigt, at en række nye innovative neurale enheder og arkitekturer er blevet foreslået inden for området hvad kaldes nu dyb læring.

Vi har især identificeret indviklede lag i CNN'er, LSTM-enheder og GAN'er som nogle af de mest meningsfulde innovationer inden for billedbehandling, tidsserieranalyse og fri generation.

Det eneste, der er tilbage at gøre på dette tidspunkt, er at dykke dybere og lære mere om, hvordan dybe læringsnetværk kan hjælpe os med nye robuste løsninger til vores egne dataproblemer.