Grunnleggende AI

Hva er RNN og LSTM i dyp lÃĶring?

mm
Legg til Unite.AI blant dine foretrukne kilder pÃĨ Google

Mange av de mest imponerende fremstegene i naturlig sprÃĨkbehandling og AI-chatbots er drevet av Recurrent Neural Networks (RNNs) og Long Short-Term Memory (LSTM) nettverk. RNNs og LSTMs er spesielle neurale nettverksarkitekturer som kan prosessere sekvensiell data, data hvor kronologisk rekkefÃļlge betyr noe. LSTMs er i hovedsak forbedrede versjoner av RNNs, i stand til ÃĨ tolke lengre sekvenser av data. La oss se pÃĨ hvordan RNNs og LSTMs er strukturert og hvordan de muliggjÃļr opprettelsen av sofistikerte naturlig sprÃĨkbehandlingsystemer.

Hva er Feed-Forward Neural Networks?

FÃļr vi snakker om hvordan Long Short-Term Memory (LSTM) og Convolutional Neural Networks (CNN) fungerer, bÃļr vi diskutere formatet pÃĨ et neuralt nettverk generelt.

Et neuralt nettverk er ment ÃĨ undersÃļke data og lÃĶre relevante mÃļnster, sÃĨ disse mÃļnster kan brukes pÃĨ andre data og nye data kan klassifiseres. Neurale nettverk er delt inn i tre seksjoner: en inndata-lag, en skjult lag (eller flere skjulte lag), og en utdata-lag.

Inndata-laget er det som tar inn data i neuralt nettverk, mens de skjulte lagene er det som lÃĶrer mÃļnster i data. De skjulte lagene i datasett er koblet til inndata- og utdata-lagene med “vekt” og “forvrengning” som bare er antagelser om hvordan datapunktene er relatert til hverandre. Disse vektene justeres under trening. Mens nettverket trener, sammenlignes modellens gjettinger om treningdata (utdata-verdier) med de faktiske treningsetikettene. Under treningens lÃļp bÃļr nettverket (hÃĨper) bli mer nÃļyaktig i ÃĨ forutsi relasjoner mellom datapunkter, sÃĨ det kan nÃļyaktig klassifisere nye datapunkter. Dype neurale nettverk er nettverk som har flere lag i midten/flere skjulte lag. Jo flere skjulte lag og noder modellen har, jo bedre kan modellen gjenkjenne mÃļnster i data.

Vanlige, feed-forward neurale nettverk, som de jeg har beskrevet ovenfor, kalles ofte “tette neurale nettverk”. Disse tette neurale nettverkene kombineres med forskjellige nettverksarkitekturer som spesialiserer seg i ÃĨ tolke forskjellige typer data.

Hva er RNNs (Recurrent Neural Networks)?

Recurrent Neural Networks tar det generelle prinsippet til feed-forward neurale nettverk og muliggjÃļr dem ÃĨ hÃĨndtere sekvensiell data ved ÃĨ gi modellen en intern minne. “Recurrent”-delen av RNN-navnet kommer fra det faktum at inndata og utdata lÃļkkes. NÃĨr utdata fra nettverket produseres, kopieres utdata og returneres til nettverket som inndata. NÃĨr en beslutning tas, analyseres ikke bare nÃĨvÃĶrende inndata og utdata, men ogsÃĨ tidligere inndata. For ÃĨ si det pÃĨ en annen mÃĨte, hvis det opprinnelige inndata for nettverket er X og utdata er H, fÃļres bÃĨde H og X1 (neste inndata i data-sekvensen) inn i nettverket for neste runde av lÃĶring. PÃĨ denne mÃĨten bevares konteksten til data (tidligere inndata) nÃĨr nettverket trener.

Resultatet av denne arkitekturen er at RNNs er i stand til ÃĨ hÃĨndtere sekvensiell data. Imidlertid lider RNNs av noen problemer. RNNs lider av forsvinnende gradient og eksploderende gradient-problemer.

Lengden pÃĨ sekvenser som en RNN kan tolke er ganske begrenset, spesielt i sammenligning med LSTMs.

Hva er LSTMs (Long Short-Term Memory Networks)?

Long Short-Term Memory nettverk kan betraktes som utvidelser av RNNs, igjen ved ÃĨ anvende konseptet om ÃĨ bevare konteksten til inndata. Imidlertid har LSTMs blitt modifisert pÃĨ flere viktige mÃĨter som tillater dem ÃĨ tolke tidligere data med bedre metoder. Endringene som er gjort til LSTMs omhandler forsvinnende gradient-problemet og muliggjÃļr LSTMs ÃĨ vurdere mye lengre inndata-sekvenser.

LSTM-modeller bestÃĨr av tre forskjellige komponenter, eller porter. Det finnes en inngangsport, en utgangsport og en glemmeport. Liksom RNNs, tar LSTMs inndata fra tidligere tidssteg i betraktning nÃĨr de modifiserer modellens minne og inndata-vekt. Inngangsporten tar beslutninger om hvilke verdier som er viktige og bÃļr slippes gjennom modellen. En sigmoid-funksjon brukes i inngangsporten, som tar beslutninger om hvilke verdier som skal slippe gjennom det rekurrerende nettverket. Null dropper verdien, mens 1 bevarer den. En TanH-funksjon brukes her ogsÃĨ, som bestemmer hvor viktig inndata-verdiene er for modellen, fra -1 til 1.

Etter at nÃĨvÃĶrende inndata og minnetilstand er tatt i betraktning, bestemmer utgangsporten hvilke verdier som skal sendes til neste tidssteg. I utgangsporten analyseres verdiene og tildeles en viktighet fra -1 til 1. Dette regulerer data fÃļr de sendes til neste tidssteg-beregning. Til slutt er glemmeportens jobb ÃĨ droppe informasjon som modellen anser som unÃļdvendig for ÃĨ ta en beslutning om naturen til inndata-verdiene. Glemmeporten bruker en sigmoid-funksjon pÃĨ verdiene, og utsteder tall mellom 0 (glem dette) og 1 (bevare dette).

Et LSTM-neuralt nettverk bestÃĨr av bÃĨde spesielle LSTM-lag som kan tolke sekvensiell ord-data og de tett koblet som beskrevet ovenfor. NÃĨr data gÃĨr gjennom LSTM-lagene, gÃĨr det videre inn i de tett koblet lagene.

Blogger og programmerer med spesialomrÃĨder i Machine Learning og Deep Learning emner. Daniel hÃĨper ÃĨ hjelpe andre med ÃĨ bruke kraften av AI for sosialt godt.