stub Kas yra giluminio mokymosi RNN ir LSTM? - Vienykitės.AI
Susisiekti su mumis
AI meistriškumo klasė:

AI 101 m

Kas yra giluminio mokymosi RNN ir LSTM?

mm
Atnaujinta on

Daugelį įspūdingiausių natūralios kalbos apdorojimo ir AI pokalbių robotų pažangos lemia Pasikartojantys neuroniniai tinklai (RNN) ir ilgalaikės trumpalaikės atminties (LSTM) tinklai. RNN ir LSTM yra specialios neuroninių tinklų architektūros, galinčios apdoroti nuoseklius duomenis, duomenis, kuriuose svarbu chronologinė tvarka. LSTM yra iš esmės patobulintos RNN versijos, galintis interpretuoti ilgesnes duomenų sekas. Pažiūrėkime, kaip RNN ir LSTMS struktūra yra ir kaip jie leidžia sukurti sudėtingas natūralios kalbos apdorojimo sistemas.

Kas yra nukreipiamieji neuroniniai tinklai?

Taigi prieš kalbėdami apie tai, kaip veikia ilgalaikė trumpalaikė atmintis (LSTM) ir konvoliuciniai neuroniniai tinklai (CNN), turėtume aptarti neuroninio tinklo formatą apskritai.

Neuroninis tinklas skirtas duomenims tirti ir atitinkamiems modeliams išmokti, kad šiuos modelius būtų galima pritaikyti kitiems duomenims ir klasifikuoti naujus duomenis. Neuroniniai tinklai skirstomi į tris dalis: įvesties sluoksnį, paslėptą sluoksnį (arba kelis paslėptus sluoksnius) ir išvesties sluoksnį.

Įvesties sluoksnis perkelia duomenis į neuroninį tinklą, o paslėptieji sluoksniai išmoksta duomenų šablonus. Paslėpti duomenų rinkinio sluoksniai yra sujungti su įvesties ir išvesties sluoksniais „svoriais“ ir „pokrypiais“, kurie yra tik prielaidos, kaip duomenų taškai yra susiję vienas su kitu. Šie svoriai koreguojami treniruotės metu. Kai tinklas treniruojasi, modelio spėjimai apie mokymo duomenis (išvesties reikšmes) lyginami su faktinėmis mokymo etiketėmis. Mokymo metu tinklas turėtų (tikiuosi) tiksliau numatyti ryšius tarp duomenų taškų, kad galėtų tiksliai klasifikuoti naujus duomenų taškus. Gilieji neuroniniai tinklai yra tinklai, kuriuose yra daugiau sluoksnių viduriniuose / labiau paslėptuose sluoksniuose. Kuo daugiau paslėptų sluoksnių ir daugiau neuronų / mazgų modelyje, tuo geriau modelis gali atpažinti duomenų šablonus.

Įprasti, nukreipti į priekį neuroniniai tinklai, tokie kaip tie, kuriuos aprašiau aukščiau, dažnai vadinami „tankiaisiais neuroniniais tinklais“. Šie tankūs neuroniniai tinklai derinami su skirtingomis tinklo architektūromis, kurios specializuojasi interpretuojant įvairių rūšių duomenis.

Kas yra RNN (pasikartojantys neuroniniai tinklai)?

Pasikartojantys neuroniniai tinklai laikosi bendrojo perdavimo pirmyn neuroninių tinklų principo ir leidžia jiems apdoroti nuoseklius duomenis suteikiant modeliui vidinę atmintį. „Pasikartojanti“ RNN pavadinimo dalis atsiranda dėl to, kad įvesties ir išvesties kilpos. Pagaminus tinklo išvestį, ji nukopijuojama ir grąžinama į tinklą kaip įvestis. Priimant sprendimą analizuojamas ne tik dabartinis įėjimas ir išėjimas, bet atsižvelgiama ir į ankstesnį įvestį. Kitaip tariant, jei pradinė tinklo įvestis yra X, o išvestis yra H, ir H, ir X1 (kita duomenų sekos įvestis) yra įvedami į tinklą kitam mokymosi etapui. Tokiu būdu duomenų kontekstas (ankstesnės įvesties) išsaugomas kaip tinklo traukinys.

Šios architektūros rezultatas yra tas, kad RNN gali tvarkyti nuoseklius duomenis. Tačiau RNN kenčia nuo kelių problemų. RNN kenčia nuo nykstantis gradientas ir sprogstamos gradiento problemos.

Sekų, kurias RNN gali interpretuoti, ilgis yra gana ribotas, ypač palyginti su LSTM.

Kas yra LSTM (ilgalaikės trumpalaikės atminties tinklai)?

Ilgos trumpalaikės atminties tinklai gali būti laikomi RNN plėtiniais, dar kartą taikant įvesties konteksto išsaugojimo koncepciją. Tačiau LSTM buvo modifikuoti keliais svarbiais būdais, leidžiančiais interpretuoti praeities duomenis geresniais metodais. LSTM pakeitimai sprendžia nykstančio gradiento problemą ir leidžia LSTM apsvarstyti daug ilgesnes įvesties sekas.

LSTM modeliai sudaryti iš trys skirtingi komponentai arba vartai. Yra an įvesties vartai, išvesties vartai ir užmiršimo vartai. Panašiai kaip RNN, LSTM, keisdami modelio atmintį ir įvesties svorį, atsižvelgia į ankstesnio laiko žingsnio įvestis. Įvesties vartai priima sprendimus, kurios vertybės yra svarbios ir turėtų būti perleistos per modelį. Įvesties vartuose naudojama sigmoidinė funkcija, kuri nustato, kurias vertes perduoti per pasikartojantį tinklą. Nulis sumažina vertę, o 1 ją išsaugo. Čia taip pat naudojama TanH funkcija, kuri nusprendžia, kiek modeliui svarbios įvesties reikšmės, nuo -1 iki 1.

Atsižvelgus į dabartines įvestis ir atminties būseną, išvesties vartai nusprendžia, kurias reikšmes perkelti į kitą laiko veiksmą. Išvesties vartuose reikšmės analizuojamos ir jiems priskiriama svarba nuo -1 iki 1. Tai reguliuoja duomenis prieš pradedant skaičiuoti kitą laiko žingsnį. Galiausiai užmiršimo vartų užduotis yra atsisakyti informacijos, kurią modelis laiko nereikalinga, kad būtų galima nuspręsti dėl įvesties reikšmių pobūdžio. Užmiršimo vartai reikšmėms naudoja sigmoidinę funkciją, išvesdami skaičius nuo 0 (pamirškite tai) iki 1 (išsaugokite tai).

LSTM neuroninis tinklas yra sudarytas iš specialių LSTM sluoksnių, galinčių interpretuoti nuoseklius žodžių duomenis, ir iš tankiai sujungtų, kaip aprašyta aukščiau. Kai duomenys pereina per LSTM sluoksnius, jie pereina į tankiai sujungtus sluoksnius.

Tinklaraštininkas ir programuotojas, turintis specialybių Mašininis mokymasis ir Gilus mokymasis temomis. Danielis tikisi padėti kitiems panaudoti AI galią socialinei gerovei.