Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Oppiskele Miten RNN Toimii? | Osio
Practice
Projects
Quizzes & Challenges
Visat
Challenges
/
Sekventiaalisen Datan Mallintaminen

bookMiten RNN Toimii?

Pyyhkäise näyttääksesi valikon

Note
Määritelmä

Toistuvat neuroverkot (RNN:t) on suunniteltu käsittelemään sekventiaalista dataa säilyttämällä tietoa aiemmista syötteistä niiden sisäisissä tiloissa. Tämä tekee niistä ihanteellisia tehtäviin, kuten kielimallinnukseen ja sekvenssien ennustamiseen.

Etäisyysmittarit
  • Sekventiaalinen käsittely: RNN käsittelee dataa askel askeleelta, pitäen kirjaa aiemmasta;
  • Lauseen täydentäminen: kun annetaan keskeneräinen lause "My favourite dish is sushi. So, my favourite cuisine is _____.", RNN käsittelee sanat yksi kerrallaan. Nähdessään sanan "sushi", se ennustaa seuraavaksi sanaksi "Japanese" aiemman kontekstin perusteella;
  • Muisti RNN:ssä: jokaisessa vaiheessa RNN päivittää sisäistä tilaansa (muistia) uudella tiedolla, varmistaen kontekstin säilymisen tulevia askeleita varten;
  • RNN:n koulutus: RNN:t koulutetaan käyttämällä takaisinkytkentää ajan yli (BPTT), jossa virheet siirretään taaksepäin jokaisen aikavaiheen läpi painojen säätämiseksi parempia ennusteita varten.

Eteenpäinlevitys

Eteenpäinlevityksen aikana RNN käsittelee syötteen askel askeleelta:

  1. Syöte ajanhetkellä tt: verkko vastaanottaa syötteen xtx_t jokaisella ajanhetkellä;
  2. Piilotilan päivitys: nykyinen piilotila hth_t päivitetään edellisen piilotilan ht1h_{t-1} ja nykyisen syötteen xtx_t perusteella seuraavan kaavan mukaisesti:
ht=f(W[ht1,xt]+b) h_t = f \left( W \cdot \left[ h_{t-1},x_t \right] + b \right)
  • Missä:
    • WW on painomatriisi;
    • bb on bias-vektori;
    • ff on aktivointifunktio.
  1. Ulostulon muodostus: ulostulo yty_t muodostetaan nykyisen piilotilan hth_t perusteella seuraavan kaavan mukaisesti:
yt=g(Vht+c)y_t = g(V \cdot h_t + c)
  • Missä:
    • VV on ulostulon painomatriisi;
    • cc on ulostulon bias;
    • gg on ulostulokerroksen aktivointifunktio.

Takaisinkytkentäprosessi

Takaisinkytkentä (backpropagation) on keskeistä RNN:ien painojen päivittämisessä ja mallin parantamisessa. Prosessia muokataan RNN:ien jaksollisen luonteen vuoksi käyttämällä aikaan ulottuvaa takaisinkytkentää (BPTT):

  1. Virheen laskenta: BPTT:n ensimmäinen vaihe on virheen laskeminen jokaisella ajanhetkellä. Tämä virhe on tyypillisesti ennustetun ulostulon ja todellisen tavoitteen välinen ero;
  2. Gradientin laskenta: Toistuvissa neuroverkoissa häviöfunktion gradientit lasketaan derivoimalla virhe verkon parametrien suhteen ja propagoi taaksepäin ajassa viimeisestä askeleesta alkuun, mikä voi johtaa katoaviin tai räjähtäviin gradientteihin erityisesti pitkissä sekvensseissä;
  3. Painojen päivitys: Kun gradientit on laskettu, painot päivitetään käyttämällä optimointimenetelmää, kuten stokastista gradienttilaskeutumista (SGD). Painoja säädetään siten, että virhe pienenee tulevilla iteraatioilla. Painojen päivityksen kaava on:
W:=WηLossW W := W - \eta \frac{\partial \text{Loss}}{\partial W}
  • Missä:
    • η\eta on oppimisnopeus;
    • LossW\frac{\partial \text{Loss}}{\partial W} on häviöfunktion gradientti painomatriisin suhteen.

Yhteenvetona RNN:t ovat tehokkaita, koska ne kykenevät muistamaan ja hyödyntämään aiempaa tietoa, mikä tekee niistä sopivia tehtäviin, joissa käsitellään sekvenssejä.

question mark

Mikä on funktion gg rooli ulostuloyhtälössä yt=g(Vht+c)y_t = g(V \cdot h_t+ c)

Select the correct answer

Oliko kaikki selvää?

Miten voimme parantaa sitä?

Kiitos palautteestasi!

Osio 1. Luku 2

Kysy tekoälyä

expand

Kysy tekoälyä

ChatGPT

Kysy mitä tahansa tai kokeile jotakin ehdotetuista kysymyksistä aloittaaksesi keskustelumme

Osio 1. Luku 2
some-alt