Uzoq qisqa muddatli xotiraga kirish (LSTM)
Maqsad
LSTM - bu uzoq muddatli bog'liqliklarni boshqarishga qodir bo'lgan takrorlanuvchi neyron tarmog'ining maxsus turi.
LSTM tarmog'ining arxitekturasi va ishlashini tushuning
Kirish
Uzoq qisqa muddatli xotira tarmog'i ma'lumotni saqlashga imkon beruvchi rivojlangan RNN, ketma-ket tarmoqdir. U RNN duch keladigan yo'qolgan gradient muammosini hal qilishga qodir. Takroriy neyron tarmog'i doimiy xotira uchun RNN sifatida ham tanilgan.
Aytaylik, videoni tomosha qilayotganda siz oldingi voqeani eslaysiz yoki kitobni o'qiyotganingizda oldingi bobda nima bo'lganini bilasiz. Xuddi shunday RNN ham ishlaydi, ular oldingi ma'lumotlarni eslab qolishadi va joriy kirishni qayta ishlash uchun foydalanadilar. RNN ning kamchiligi shundaki, ular yo'qolgan gradient tufayli uzoq muddatli bog'liqliklarni eslay olmaydi. LSTMlar uzoq muddatli qaramlik muammolarini oldini olish uchun aniq ishlab chiqilgan.
Eslatma: Agar siz audio-vizual formatdagi tushunchalarni o'rganishga ko'proq qiziqsangiz, biz ushbu maqolani quyidagi videoda tushuntirib beramiz. Aks holda, o'qishni davom ettirishingiz mumkin.
LSTM arxitekturasi
Yuqori darajadagi LSTM da RNN hujayrasi kabi ishlaydi. Bu erda LSTM tarmog'ining ichki faoliyati. LSTM quyidagi rasmda ko'rsatilganidek, uchta qismdan iborat va har bir qism individual funktsiyani bajaradi.
Birinchi qism oldingi vaqt tamg'asidan kelgan ma'lumotni eslab qolish yoki ahamiyatsizligini va unutilishi mumkinligini tanlaydi. Ikkinchi qismda hujayra ushbu katakchaga kiritilgan ma'lumotlardan yangi ma'lumotlarni o'rganishga harakat qiladi. Nihoyat, uchinchi qismda hujayra yangilangan ma'lumotni joriy vaqt tamg'asidan keyingi vaqt tamg'asiga o'tkazadi.
LSTM xujayrasining bu uch qismi eshiklar deb nomlanadi. Birinchi qism Forget gate deb ataladi, ikkinchi qismi Kirish eshigi, oxirgi qismi esa Chiqish eshigi deb nomlanadi.
Oddiy RNN kabi, LSTM ham yashirin holatga ega bo'lib, H(t-1) oldingi vaqt tamg'asining yashirin holatini va Ht joriy vaqt tamg'asining yashirin holatini ifodalaydi. Bunga qo'shimcha ravishda LSTM ham oldingi va joriy vaqt tamg'asi uchun mos ravishda C(t-1) va C(t) bilan ifodalangan hujayra holatiga ega.
Bu erda yashirin holat qisqa muddatli xotira, hujayra holati esa uzoq muddatli xotira deb nomlanadi. Quyidagi rasmga qarang.
Shunisi qiziqki, hujayra holati ma'lumotni barcha vaqt belgilari bilan birga olib yuradi.
LSTM qanday ishlashini tushunish uchun misol keltiraylik. Bu yerda nuqta bilan ajratilgan ikkita gap bor. Birinchi jumla "Bob yaxshi odam" va ikkinchi jumla "Dan, aksincha, yovuz". Bu juda aniq, birinchi jumlada biz Bob haqida gapiramiz va nuqta (.) ga duch kelishimiz bilanoq Dan haqida gapira boshladik.
Birinchi jumladan ikkinchi jumlaga o'tayotganimizda, bizning tarmog'imiz endi Bob haqida gapirmasligimizni tushunishi kerak. Endi bizning mavzuimiz Dan. Bu yerda tarmoqning Forget darvozasi bu haqda unutish imkonini beradi. Keling, LSTM arxitekturasida ushbu darvozalar qanday rol o'ynashini tushunaylik.
Gateni unut
LSTM tarmog'ining yacheykasida birinchi qadam oldingi vaqt tamg'asidagi ma'lumotlarni saqlash yoki unutish kerakligini hal qilishdir. Mana unutish darvozasi uchun tenglama.
Keling, bu erda tenglamani tushunishga harakat qilaylik
Xt: joriy vaqt tamg'asiga kirish.
Uf: kirish bilan bog'liq vazn
Ht-1: Oldingi vaqt tamg'asining yashirin holati
Wf: Bu yashirin holat bilan bog'liq og'irlik matritsasi
Keyinchalik, uning ustida sigmasimon funktsiya qo'llaniladi. Bu futni 0 dan 1 gacha bo'lgan raqamga aylantiradi. Keyinchalik bu fut quyida ko'rsatilganidek, oldingi vaqt tamg'asining hujayra holatiga ko'paytiriladi.
Agar ft 0 bo'lsa, tarmoq hamma narsani unutadi va ft qiymati 1 bo'lsa, u hech narsani unutmaydi. Keling, misolimizga qaytaylik, birinchi jumla Bob haqida gapirdi va nuqtadan keyin tarmoq Danga duch keladi, ideal holatda tarmoq Bobni unutishi kerak.
Kirish eshigi
Yana bir misol keltiraylik
“Bob suzishni biladi. U menga telefon orqali dengiz flotida uzoq to‘rt yil xizmat qilganini aytdi”.
Shunday qilib, ikkala jumlada biz Bob haqida gapiramiz. Biroq, ikkalasi ham Bob haqida turli xil ma'lumotlarni beradi. Birinchi jumlada biz uning suzishni bilishi haqida ma'lumot olamiz. Ikkinchi jumlada aytilishicha, u telefondan foydalanadi va dengiz flotida to'rt yil xizmat qilgan.
Endi birinchi jumlada berilgan kontekstga asoslanib, ikkinchi jumlaning qaysi ma'lumotlari muhimligini o'ylab ko'ring. Birinchidan, u telefon orqali gapirgan yoki dengiz flotida xizmat qilgan. Shu nuqtai nazardan, u ma'lumotni uzatish uchun telefondan yoki boshqa aloqa vositasidan foydalanganmi, muhim emas. Uning dengiz flotida bo'lganligi muhim ma'lumot va bu bizning modelimiz eslab qolishini istaymiz. Bu Kirish eshigining vazifasi.
Kirish eshigi kirish tomonidan olib boriladigan yangi ma'lumotlarning ahamiyatini aniqlash uchun ishlatiladi. Bu erda kirish eshigining tenglamasi
Bu yerda,
Xt: joriy vaqt tamg'asida kiritish t
Ui: kirishning og'irlik matritsasi
Ht-1: Oldingi vaqt tamg'asidagi yashirin holat
Wi: Yashirin holat bilan bog'liq kirishning og'irlik matritsasi
Biz yana sigmasimon funktsiyani qo'lladik. Natijada, t vaqt tamg'asidagi I qiymati 0 dan 1 gacha bo'ladi.
Endi hujayra holatiga o'tkazilishi kerak bo'lgan yangi ma'lumot oldingi t-1 vaqt tamg'asidagi yashirin holat va t vaqt tamg'asida x kiritilishi funksiyasidir. Bu erda faollashtirish funktsiyasi tanh. Tanh funktsiyasi tufayli yangi ma'lumotlarning qiymati -1 va 1 orasida bo'ladi. Agar qiymat Nt bo'lsa manfiy bo'lsa, ma'lumot hujayra holatidan chiqariladi va qiymat ijobiy bo'lsa, ma'lumot hujayra holatiga qo'shiladi. joriy vaqt tamg'asi.
Biroq, Nt to'g'ridan-to'g'ri hujayra holatiga qo'shilmaydi. Bu erda yangilangan tenglama keladi
Bu erda Ct-1 joriy vaqt tamg'asidagi hujayra holati, boshqalari esa biz ilgari hisoblagan qiymatlardir.
Chiqish eshigi
Endi ushbu jumlani ko'rib chiqing
“Bob yakka o'zi dushmanga qarshi kurashdi va o'z vatani uchun halok bo'ldi. Hissalari uchun, jasur________.”
Bu vazifani bajarishda biz ikkinchi jumlani bajarishimiz kerak. Endi biz jasur so'zni ko'rganimizda, biz bir kishi haqida gapirayotganimizni bilamiz. Gapda faqat Bobo mard, biz dushman mard yoki yurt mard deya olmaymiz. Shunday qilib, joriy kutish asosida biz bo'sh joyni to'ldirish uchun tegishli so'zni berishimiz kerak. Bu so'z bizning chiqishimiz va bu bizning Chiqish eshigining vazifasi.
Bu erda oldingi ikkita eshikka juda o'xshash Chiqish eshigining tenglamasi.
Ushbu sigmasimon funktsiya tufayli uning qiymati ham 0 dan 1 gacha bo'ladi. Endi joriy yashirin holatni hisoblash uchun yangilangan hujayra holatining Ot va tanh dan foydalanamiz. Quyida ko'rsatilganidek.
Ma'lum bo'lishicha, yashirin holat Uzoq muddatli xotira (Ct) va joriy chiqish funktsiyasidir. Agar joriy vaqt tamg'asining chiqishini olishingiz kerak bo'lsa, Ht yashirin holatida SoftMax faollashuvini qo'llang.
Bu erda chiqishda maksimal ballga ega bo'lgan token bashoratdir.
Bu LSTM tarmog'ining yanada intuitiv diagrammasi.
Xulosa
Xulosa qilib aytganda, ushbu maqolada biz ketma-ket LSTM modelining arxitekturasini va uning qanday ishlashini batafsil ko'rib chiqdik.
Do'stlaringiz bilan baham: |