csonk Mik azok az RNN-k és LSTM-ek a mélytanulásban? - Egyesüljetek.AI
Kapcsolatba velünk
AI mesterkurzus:

AI 101

Mik azok az RNN-k és LSTM-ek a mélytanulásban?

mm
korszerűsített on

A természetes nyelvi feldolgozás és az AI chatbotok leglenyűgözőbb előrehaladásai közül sok a hajtóereje Ismétlődő neurális hálózatok (RNN-ek) és hosszú rövid távú memória (LSTM) hálózatok. RNN-ek és LSTM-ek olyan speciális neurális hálózati architektúrák, amelyek képesek szekvenciális adatokat feldolgozni, olyan adatokat, ahol a kronológiai sorrend számít. Az LSTM-ek azok az RNN-ek lényegében továbbfejlesztett változatai, amely képes hosszabb adatsorok értelmezésére. Nézzük meg, hogyan épül fel az RNN és ​​az LSTMS, és hogyan teszik lehetővé kifinomult természetes nyelvi feldolgozó rendszerek létrehozását.

Mik azok a feed-forward neurális hálózatok?

Tehát mielőtt a hosszú rövid távú memória (LSTM) és a konvolúciós neurális hálózatok (CNN) működéséről beszélnénk, általánosságban kell megvitatni a neurális hálózat formátumát.

A neurális hálózat célja az adatok vizsgálata és a releváns minták megtanulása, hogy ezek a minták más adatokra is alkalmazhatók legyenek, és új adatok osztályozhatók legyenek. A neurális hálózatok három részre oszthatók: egy bemeneti rétegre, egy rejtett rétegre (vagy több rejtett rétegre) és egy kimeneti rétegre.

A bemeneti réteg az, ami beviszi az adatokat a neurális hálózatba, míg a rejtett rétegek tanulják meg az adatok mintáit. Az adatkészlet rejtett rétegei a bemeneti és kimeneti rétegekkel vannak összekötve „súlyokkal” és „elfogultságokkal”, amelyek csak feltételezések arra vonatkozóan, hogy az adatpontok hogyan kapcsolódnak egymáshoz. Ezeket a súlyokat edzés közben állítják be. Ahogy a hálózat edz, a modellnek a betanítási adatokra (kimeneti értékekre) vonatkozó találgatásait összehasonlítja a tényleges betanítási címkékkel. A képzés során a hálózatnak (remélhetőleg) pontosabbnak kell lennie az adatpontok közötti kapcsolatok előrejelzésében, hogy az új adatpontokat pontosan osztályozza. A mély neurális hálózatok olyan hálózatok, amelyeknek több rétege van a középső / több rejtett rétegben. Minél több rejtett réteg és több neuron/csomópont van a modellben, a modell annál jobban képes felismerni az adatok mintáit.

A szabályos, előrecsatolt neurális hálózatokat, mint amilyeneket fentebb leírtam, gyakran „sűrű neurális hálózatoknak” nevezik. Ezeket a sűrű neurális hálózatokat különböző hálózati architektúrákkal kombinálják, amelyek különböző típusú adatok értelmezésére specializálódtak.

Mik azok az RNN-ek (Recurrent Neural Networks)?

Az ismétlődő neurális hálózatok az előrecsatolt neurális hálózatok általános elvét alkalmazzák, és lehetővé teszik számukra, hogy szekvenciális adatokat kezeljenek belső memóriát adva a modellnek. Az RNN név „Recurrent” része abból a tényből származik, hogy a bemeneti és kimeneti hurok hurkolt. Amint a hálózat kimenete elkészült, a kimenetet másolja, és bemenetként visszaküldi a hálózathoz. A döntés meghozatalakor nem csak az aktuális bemenetet és kimenetet elemzik, hanem az előző bemenetet is figyelembe veszik. Másképpen fogalmazva, ha a hálózat kezdeti bemenete X, a kimenet pedig H, mind a H, mind az X1 (az adatsorozat következő bemenete) betáplálva van a hálózatba a következő tanulási körben. Ily módon az adatok kontextusa (az előző bemenetek) hálózati vonatként megmarad.

Ennek az architektúrának az eredménye, hogy az RNN-ek képesek szekvenciális adatok kezelésére. Az RNN-ek azonban szenvednek néhány problémától. Az RNN-ek szenvednek a eltűnő gradiens és kirobbanó gradiens problémák.

Az RNN által értelmezhető szekvenciák hossza meglehetősen korlátozott, különösen az LSTM-ekhez képest.

Mik azok az LSTM-ek (Long Short-Term Memory Networks)?

A hosszú rövid távú memóriahálózatok az RNN-ek kiterjesztésének tekinthetők, ismét alkalmazva a bemenetek kontextusának megőrzésének koncepcióját. Az LSTM-eket azonban számos fontos módon módosították, amelyek lehetővé teszik számukra a múltbeli adatok jobb módszerekkel történő értelmezését. Az LSTM-eken végrehajtott módosítások az eltűnő gradiens problémát kezelik, és lehetővé teszik az LSTM-ek számára, hogy sokkal hosszabb bemeneti szekvenciákat vegyenek figyelembe.

Az LSTM modellek a következőkből állnak három különböző alkatrész, vagy kapu. Van egy bemeneti kapu, kimeneti kapu és felejtőkapu. Az RNN-ekhez hasonlóan az LSTM-ek is figyelembe veszik az előző időlépés bemeneteit, amikor módosítják a modell memóriáját és a bemeneti súlyokat. A bemeneti kapu dönt arról, hogy mely értékek fontosak, és melyeket kell átengedni a modellen. A bemeneti kapuban egy szigmoid függvényt használnak, amely meghatározza, hogy mely értékeket kell átadni az ismétlődő hálózaton. A nulla eldobja az értéket, míg az 1 megőrzi. Itt is egy TanH függvényt használunk, amely meghatározza, hogy a modell számára mennyire fontosak a bemeneti értékek -1 és 1 között.

Az aktuális bemenetek és a memória állapotának figyelembevétele után a kimeneti kapu eldönti, hogy mely értékeket továbbítsa a következő időlépéshez. A kimeneti kapuban a rendszer elemzi az értékeket, és -1-től 1-ig terjedő fontosságot rendel hozzá. Ez szabályozza az adatokat, mielőtt a következő időlépés-számításra kerülne. Végül a felejtőkapu feladata, hogy eldobja azokat az információkat, amelyeket a modell szükségtelennek tart ahhoz, hogy döntést hozzon a bemeneti értékek természetéről. A felejtőkapu szigmoid függvényt használ az értékeken, és 0 (felejtsd el) és 1 (ezt tartsd meg) közötti számokat ad ki.

Az LSTM neurális hálózat mind a szekvenciális szóadatokat értelmezni képes speciális LSTM-rétegekből, mind a fent leírtak szerint sűrűn összekapcsolt rétegekből áll. Miután az adatok áthaladnak az LSTM rétegeken, a sűrűn összekapcsolt rétegekbe kerülnek.

Blogger és programozó szakterületekkel Gépi tanulás és a Deep Learning témákat. Daniel abban reménykedik, hogy segíthet másoknak az AI erejét társadalmi javára használni.