Är Deep Learning bara nervnätverk på steroider?

Författare: Laura McKinney
Skapelsedatum: 4 April 2021
Uppdatera Datum: 24 Juni 2024
Anonim
Är Deep Learning bara nervnätverk på steroider? - Teknologi
Är Deep Learning bara nervnätverk på steroider? - Teknologi

Innehåll


Källa: Vs1489 / Dreamstime.com

Hämtmat:

Är "djup inlärning" bara ett annat namn för avancerade neurala nätverk, eller finns det mer än det? Vi tittar på de senaste framstegen inom djup inlärning och neurala nätverk.

Skeptics Club

Om du, som jag, tillhör skeptikerklubben, kanske du också har undrat vad allt väsen handlar om djup inlärning. Neurala nätverk (NN) är inte ett nytt koncept. Flerskikts perceptron introducerades 1961, vilket inte bara är bara igår.

Men nuvarande neurala nätverk är mer komplexa än bara en flerlagers perceptron; de kan ha många fler dolda lager och till och med återkommande anslutningar. Men vänta, använder de inte fortfarande backpropagationsalgoritmen för träning?

ja! Nu är maskinens beräkningskraft jämförbar med vad som var tillgängligt på 60-talet eller till och med på 80-talet. Detta innebär att mycket mer komplexa neuralarkitekturer kan utbildas på rimlig tid.


Så om konceptet inte är nytt, kan det innebära att djup inlärning bara är ett gäng neurala nätverk på steroider? Beror allt väsen helt enkelt på parallellberäkning och kraftfullare maskiner? Ofta, när jag undersöker så kallade lösningar för djup inlärning, är det så det ser ut. (Vad är praktiska användningar i verkligheten för neurala nätverk? Ta reda på i 5 fall för användning av neuralt nätverk som hjälper dig att förstå tekniken bättre.)

Men som sagt tillhör jag dock skepticeklubben och jag är vanligtvis försiktig med ännu inte stödda bevis. Låt oss för en gång låta fördomarna åt sidan och låt oss prova en grundlig undersökning av de nyligen framväxande teknikerna i djup inlärning med avseende på neurala nätverk, om några.

När vi gräver lite djupare hittar vi några nya enheter, arkitekturer och tekniker inom området djup inlärning. Vissa av dessa innovationer har en mindre vikt, som den randomisering som införts av ett bortfallsskikt. Vissa andra ansvarar dock för viktigare förändringar. Och de flesta av dem förlitar sig säkert på den större tillgången på beräkningsresurser eftersom de är ganska beräkningsbara.


Enligt min mening har det förekommit tre huvudsakliga innovationer inom området för neurala nätverk som starkt har bidragit till att djup inlärning har fått sin nuvarande popularitet: convolutional neural nätverk (CNN), långa korttidsminne (LSTM) enheter och generativa motsatsnätverk (GAN) ).

Konvolutional Neural Networks (CNNs)

Big bang av djup inlärning - eller åtminstone när jag hörde boom för första gången - hände i ett bildigenkänningsprojekt, ImageNet Large Scale Visual Recognition Challenge, 2012. För att automatiskt känner igen bilder, ett invändigt neuralt nätverk med åtta lager - AlexNet - användes. De första fem skikten var sammankopplade lager, några av dem följt av max-poolande lager, och de tre sista lagren var helt förbundna lager, alla med en icke-mättande ReLU-aktiveringsfunktion. AlexNet-nätverket uppnådde ett topp-fem-fel på 15,3%, mer än 10,8 procentenheter lägre än det som var löparen. Det var en stor prestation!

Inga buggar, ingen stress - din steg-för-steg-guide för att skapa livsförändrad programvara utan att förstöra ditt liv

Du kan inte förbättra dina programmeringsfärdigheter när ingen bryr sig om mjukvarukvalitet.

Förutom flerskiktsarkitekturen var den största innovationen av AlexNet det invändiga lagret.

Det första lagret i ett invändigt nätverk är alltid ett invändigt lager. Varje neuron i ett invecklat skikt fokuserar på ett specifikt område (mottagningsfält) i inmatningsbilden och fungerar genom dess vägda anslutningar som ett filter för det mottagande fältet. Efter att ha skjutit filtret, neuron efter neuron, över alla bildmottagande fält, producerar utgången från det invändiga lagret en aktiveringskarta eller funktionskarta, som kan användas som en funktionsidentifierare.

Bild 1. Neuron i ett invecklat lager som fungerar som ett filter på ett 5x5-mottagningsfält i inmatningsbilden (återges från Adit Deshpandes ”En nybörjarguide för att förstå intryckningsnervenätverk”).

Genom att lägga till fler invändiga lager ovanpå varandra kan aktiveringskartan representera fler och mer komplexa funktioner från inmatningsbilden. Dessutom, ofta i en invandlad neural nätverksarkitektur, är flera fler lager isär varandra mellan alla dessa invändiga lager för att öka mappfunktionens olinjäritet, förbättra nätets robusthet och kontrollera överpassningen.

Nu när vi kan upptäcka funktioner på hög nivå från inmatningsbilden kan vi lägga till ett eller flera helt anslutna lager i slutet av nätverket för traditionell klassificering. Den sista delen av nätverket tar utgången från de invändiga skikten som inmatning och matar ut en N-dimensionell vektor, där N är antalet klasser. Varje nummer i denna N-dimensionella vektor representerar sannolikheten för en klass.

Tillbaka till dagen hörde jag ofta invändningen mot neurala nätverk om bristen på transparens i deras arkitektur och omöjligheten att tolka och förklara resultaten. Denna invändning kommer allt mindre upp nuförtiden i samband med nätverk för djup inlärning. Det ser ut som att det nu är acceptabelt att handla svartboxeffekten för högre noggrannhet i klassificeringen.

LSTM-enheter med långt kortvarigt minne

En annan stor förbättring som producerats av neurala nätverk med djup inlärning har sett i analyser av tidsserier via återkommande neurala nätverk (RNN).

Återkommande neurala nätverk är inte ett nytt koncept. De användes redan på 90-talet och tränades med backpropagation through time (BPTT) -algoritmen. På 90-talet var det dock ofta omöjligt att utbilda dem med tanke på den mängd beräkningsresurser som krävs. Men nuförtiden, på grund av ökningen i tillgänglig beräkningskraft, har det inte bara blivit möjligt att utbilda RNNs utan också att öka komplexiteten i deras arkitektur. Är det allt? Tja, naturligtvis inte.

1997 introducerades en speciell neural enhet för att bättre hantera memorering av relevant förflutna i en tidsserie: LSTM-enheten. Genom en kombination av interna grindar kan en LSTM-enhet komma ihåg relevant tidigare information eller glömma det irrelevanta tidigare innehållet i en tidsserie. Ett LSTM-nätverk är en speciell typ av återkommande nervnätverk, inklusive LSTM-enheter. Den utfoldade versionen av en LSTM-baserad RNN visas i figur 2.

För att övervinna problemet med begränsad lång minnesförmåga använder LSTM-enheter ett ytterligare doldt tillstånd - celltillståndet C (t) - härrörande från det ursprungliga dolda tillståndet h (t). C (t) representerar nätverksminnet. En viss struktur, kallad grindar, låter dig ta bort (glömma) eller lägga till (kom ihåg) information till celltillståndet C (t) vid varje steg baserat på inmatningsvärdena x (t) och det tidigare dolda tillståndet h (t-1). Varje grind avgör vilken information som ska läggas till eller radera genom att mata ut värden mellan 0 och 1. Genom att multiplicera grindutgången punktvis med celltillståndet C (t-1), information raderas (utgång från grind = 0) eller behålls (utgång från grind = 1).

I figur 2 ser vi nätverksstrukturen för en LSTM-enhet. Varje LSTM-enhet har tre grindar. "Glömma grindskiktet" i början filtrerar bort informationen från föregående celltillstånd C (t-1) baserat på den aktuella ingången x (t) och den föregående cellens dolda tillstånd h (t-1). Därefter bestämmer kombinationen av ett "ingångsskikt" och ett "tanh-lager" vilken information som ska läggas till det tidigare, redan filtrerade, celltillståndet C (t-1). Slutligen bestämmer den sista grinden, "utgångsgrinden", vilken av informationen från det uppdaterade celltillståndet C (t) hamnar i nästa dolda tillstånd h (t).

För mer information om LSTM-enheter, kolla GitHub-blogginlägget "Understanding LSTM Networks" av Christopher Olah.

Figur 2. Struktur av en LSTM-cell (reproducerad från "Deep Learning" av Ian Goodfellow, Yoshua Bengio och Aaron Courville). Lägg märke till de tre grindarna inom LSTM-enheterna. Från vänster till höger: glömporten, ingångsporten och utgångsporten.

LSTM-enheter har använts framgångsrikt i ett antal tidsserier förutsägelseproblem, men särskilt för taligenkänning, naturlig språkbearbetning (NLP) och fri generation.

Generativa Adversarial Networks (GAN)

Ett generativt motsättande nätverk (GAN) består av två nätverk för djup inlärning, generatorn och diskrimineraren.

En generator G är en transformation som transformerar ingångsbruset z i en tensor - vanligtvis en bild - x (x= G (z)). DCGAN är en av de mest populära designen för generatornätverket. I CycleGAN-nätverk utför generatorn flera transponerade varv för att sampla z för att så småningom generera bilden x (Figur 3).

Den genererade bilden x matas sedan in i diskriminatornätverket. Diskrimineringsnätverket kontrollerar de verkliga bilderna i träningsuppsättningen och den bild som genereras av generatornätverket och producerar en utgång D (x), vilket är sannolikheten för att bilden x är riktig.

Både generator och diskriminator utbildas med att använda backpropagationsalgoritmen för att producera D (x)=1 för de genererade bilderna. Båda nätverken tränas i alternerande steg som tävlar för att förbättra sig själva. GAN-modellen konvergerar så småningom och producerar bilder som ser verkliga ut.

Bild 3. En DCGAN-generator (reproducerad från Jonathan Huis ”GAN - Vad är Generative Adversary Networks GAN?”).

GAN har använts framgångsrikt på bildtensorer för att skapa anime, mänskliga figurer och till och med van Gogh-liknande mästerverk. (För andra moderna användningar av neurala nätverk, se 6 stora framsteg som du kan tillskriva konstgjorda nervnätverk.)

Slutsatser

Så, är djup inlärning bara ett gäng neurala nätverk på steroider? Delvis.

Även om det är obestridligt att snabbare hårdvaruföreställningar till stor del har bidragit till en framgångsrik utbildning av mer komplexa, flerlagrade och till och med återkommande neuralarkitekturer, är det också sant att ett antal nya innovativa neurala enheter och arkitekturer har föreslagits inom området för vad kallas nu djup inlärning.

I synnerhet har vi identifierat invändiga lager i CNN: er, LSTM-enheter och GAN som några av de mest meningsfulla innovationerna inom området bildbehandling, tidsserieranalys och fri generation.

Det enda som återstår att göra just nu är att dyka djupare och lära sig mer om hur djupa inlärningsnätverk kan hjälpa oss med nya robusta lösningar för våra egna dataproblem.