ဆောင်းပါးတို Deep Learning တွင် RNNs နှင့် LSTMs များသည် အဘယ်နည်း။ - Unite.AI
ကြှနျုပျတို့နှငျ့အတူချိတ်ဆက်ပါ
AI Masterclass-

AI ၅၀

Deep Learning တွင် RNNs နှင့် LSTMs များသည် အဘယ်နည်း။

mm
နောက်ဆုံးရေးသားချိန် on

သဘာဝဘာသာစကားလုပ်ဆောင်ခြင်းနှင့် AI chatbots များတွင် အထင်ကြီးလောက်သောတိုးတက်မှုများစွာကို တွန်းအားပေးထားသည်။ ထပ်တလဲလဲ Neural Networks (RNNs) နှင့် Long-Term Memory (LSTM) ကွန်ရက်များ။ RNN နှင့် LSTM များ အချိန်နဲ့ တပြေးညီ စီစဥ်မှု အရေးကြီးတဲ့ ဒေတာတွေကို ဆက်တိုက်လုပ်ဆောင်နိုင်တဲ့ အထူး neural network တည်ဆောက်ပုံတွေပါ။ LSTMs တွေဖြစ်ပါတယ်။ RNN ၏ အခြေခံအားဖြင့် မြှင့်တင်ထားသော ဗားရှင်းများရှည်လျားသော ဒေတာအစီအစဥ်များကို ပြန်ဆိုနိုင်စွမ်းရှိသည်။ RNN နှင့် LSTMS များကို မည်သို့ဖွဲ့စည်းပုံနှင့် ခေတ်မီဆန်းပြားသော သဘာဝဘာသာစကား လုပ်ဆောင်ခြင်းစနစ်များကို ဖန်တီးနိုင်ပုံကို လေ့လာကြည့်ကြပါစို့။

Feed-Forward Neural Networks ဆိုတာ ဘာလဲ။

ထို့ကြောင့် Long Short-Term Memory (LSTM) နှင့် Convolutional Neural Networks (CNN) အလုပ်လုပ်ပုံအကြောင်း မပြောမီ၊ ကျွန်ုပ်တို့သည် ယေဘုယျအားဖြင့် neural network ပုံစံကို ဆွေးနွေးသင့်ပါသည်။

အာရုံကြောကွန်ရက်တစ်ခုသည် ဒေတာများကို စစ်ဆေးရန်နှင့် သက်ဆိုင်ရာပုံစံများကို လေ့လာရန် ရည်ရွယ်ထားသောကြောင့် အဆိုပါပုံစံများကို အခြားဒေတာသို့ အသုံးချနိုင်ပြီး ဒေတာအသစ်များကို အမျိုးအစားခွဲခြားနိုင်စေရန် ရည်ရွယ်ပါသည်။ အာရုံကြောကွန်ရက်များကို အပိုင်းသုံးပိုင်းခွဲထားသည်- အဝင်အလွှာ၊ လျှို့ဝှက်အလွှာ (သို့မဟုတ် လျှို့ဝှက်အလွှာများစွာ) နှင့် အထွက်အလွှာတစ်ခု။

Input layer သည် neural network အတွင်းသို့ data များကို ယူဆောင်သွားသော အရာဖြစ်ပြီး ဝှက်ထားသော layer များသည် data အတွင်းရှိ patterns များကို လေ့လာသည့်အရာဖြစ်သည်။ ဒေတာအတွဲရှိ လျှို့ဝှက်အလွှာများကို “အလေးချိန်” နှင့် “ဘက်လိုက်မှုများ” ဖြင့် အဝင်နှင့်အထွက်အလွှာများနှင့် ချိတ်ဆက်ထားပြီး ဒေတာအချက်များသည် တစ်ခုနှင့်တစ်ခု မည်သို့ဆက်စပ်နေသနည်းဟူသည့် ယူဆချက်မျှသာဖြစ်သည်။ ဤအလေးများကို လေ့ကျင့်ချိန်အတွင်း ချိန်ညှိသည်။ ကွန်ရက်လေ့ကျင့်ပေးသည့်အတိုင်း၊ လေ့ကျင့်ရေးဒေတာ (အထွက်တန်ဖိုးများ) နှင့် ပတ်သက်၍ မော်ဒယ်၏ ခန့်မှန်းချက်များကို အမှန်တကယ်လေ့ကျင့်ရေးတံဆိပ်များနှင့် နှိုင်းယှဉ်ပါသည်။ သင်တန်းကာလအတွင်း၊ ကွန်ရက်သည် ဒေတာအချက်များကြား ဆက်စပ်မှုများကို ခန့်မှန်းရာတွင် ပိုမိုတိကျမှုရှိသင့်သည်၊ ထို့ကြောင့် ၎င်းသည် ဒေတာအမှတ်အသစ်များကို တိကျစွာခွဲခြားနိုင်သည်။ နက်ရှိုင်းသော အာရုံကြောကွန်ရက်များသည် အလယ်အလတ်/ပိုဝှက်ထားသော အလွှာများတွင် ပိုအလွှာများရှိသည့် ကွန်ရက်များဖြစ်သည်။ မော်ဒယ်တွင် ဝှက်ထားသော အလွှာများ နှင့် နျူရွန်များ / ခုံများ ပိုများလေ၊ မော်ဒယ်သည် ဒေတာရှိ ပုံစံများကို မှတ်မိနိုင်လေ ဖြစ်သည်။

အထက်ဖော်ပြပါအတိုင်း ပုံမှန်၊ အာရုံကြောကွန်ရက်များကို “သိပ်သည်းသော အာရုံကြောကွန်ရက်များ” ဟုခေါ်လေ့ရှိသည်။ ဤသိပ်သည်းသော အာရုံကြောကွန်ရက်များကို မတူညီသောဒေတာအမျိုးအစားများကို ဘာသာပြန်ဆိုရာတွင် အထူးပြုသည့် မတူညီသောကွန်ရက်တည်ဆောက်ပုံများနှင့် ပေါင်းစပ်ထားသည်။

RNNs (Recurrent Neural Networks) ဆိုတာ ဘာလဲ။

Recurrent Neural Networks များသည် feed-forward neural networks များ၏ ယေဘူယျနိယာမကိုယူပြီး ၎င်းတို့အား ဆင့်ကဲဒေတာကို ကိုင်တွယ်ရန် လုပ်ဆောင်နိုင်သည် ။ မော်ဒယ်ကို internal memory ပေးသည်။. RNN အမည်၏ "ထပ်တလဲလဲ" အပိုင်းသည် အဝင်နှင့်အထွက်များ လှည့်ပတ်နေသည့်အချက်မှ ဆင်းသက်လာသည်။ ကွန်ရက်၏ output ကိုထုတ်လုပ်ပြီးသည်နှင့် output ကိုကူးယူပြီး input အဖြစ်ကွန်ယက်သို့ပြန်သွားပါ။ ဆုံးဖြတ်ချက်ချသည့်အခါတွင် လက်ရှိထည့်သွင်းမှုနှင့် အထွက်ကို ခွဲခြမ်းစိတ်ဖြာရုံသာမက ယခင်ထည့်သွင်းမှုကိုလည်း ထည့်သွင်းစဉ်းစားသည်။ အခြားနည်းဖြင့်ပြောရလျှင် ကွန်ရက်အတွက် ကနဦးထည့်သွင်းမှုသည် X ဖြစ်ပြီး အထွက်သည် H ဖြစ်ပါက၊ H နှင့် X1 (ဒေတာစည်းရိုးအတွင်း နောက်ထပ်ထည့်သွင်းမှု) နှစ်ခုလုံးကို ကွန်ရက်သို့ ဖြည့်သွင်းမည်ဖြစ်သည်။ ဤနည်းအားဖြင့်၊ ဒေတာ (ယခင်ထည့်သွင်းမှုများ) ကို ကွန်ရက်ရထားများအဖြစ် ထိန်းသိမ်းထားသည်။

ဤဗိသုကာ၏ရလဒ်မှာ RNN များသည် ဆင့်ကဲဒေတာများကို ကိုင်တွယ်နိုင်စွမ်းရှိသောကြောင့်ဖြစ်သည်။ သို့သော်လည်း RNN များသည် ပြဿနာအချို့ကို ခံစားနေရသည်။ RNN များ အနေဖြင့် ခံစားနေရသည်။ gradient ပျောက်ကွယ်သွားပြီး gradient ပြဿနာများ ပေါက်ကွဲနေသည်။

အထူးသဖြင့် LSTMs များနှင့် နှိုင်းယှဉ်ရာတွင် RNN မှ အဓိပ္ပာယ်ဖွင့်ဆိုနိုင်သော အတွဲများ၏ အရှည်သည် အကန့်အသတ်ရှိသည်။

LSTMs (Long Short-Term Memory Networks) ဆိုတာ ဘာလဲ။

Long-Term Memory ကွန်ရက်များသည် သွင်းအားစုများ၏ ဆက်စပ်မှုကို ထိန်းသိမ်းခြင်း သဘောတရားကို ထပ်မံကျင့်သုံးသည်နှင့် တစ်ပြိုင်နက် RNN ၏ တိုးချဲ့မှုဟု ယူဆနိုင်သည်။ သို့သော်၊ LSTMs များသည် အတိတ်ကဒေတာများကို သာလွန်သောနည်းလမ်းများဖြင့် အဓိပ္ပာယ်ပြန်ဆိုနိုင်စေမည့် အရေးကြီးသောနည်းလမ်းများစွာဖြင့် ပြုပြင်မွမ်းမံထားပါသည်။ LSTM များအတွက် ပြုလုပ်ထားသော ပြောင်းလဲမှုများသည် ပျောက်ကွယ်နေသော gradient ပြဿနာကို ဖြေရှင်းပေးပြီး LSTMs များကို ပိုမိုရှည်လျားသော input sequences များကို ထည့်သွင်းစဉ်းစားရန် ဖွင့်ပေးသည်။

LSTM မော်ဒယ်များဖြင့် ဖွဲ့စည်းထားပါသည်။ ကွဲပြားခြားနားသောအစိတ်အပိုင်းသုံးခု, သို့မဟုတ်တံခါးများ. တစ်ခုရှိတယ်။ အဝင်တံခါး၊ အထွက်ဂိတ်နှင့် မေ့သောတံခါး. RNNs များကဲ့သို့ပင်၊ LSTM များသည် မော်ဒယ်၏မှတ်ဉာဏ်နှင့် ထည့်သွင်းအလေးချိန်များကို မွမ်းမံသည့်အခါတွင် ယခင်အချိန်အဆင့်မှ ထည့်သွင်းမှုများကို ထည့်သွင်းတွက်ချက်ပါသည်။ အဝင်တံခါးသည် မည်သည့်တန်ဖိုးများ အရေးကြီးကြောင်းနှင့် မော်ဒယ်ကို ဖြတ်သန်းသင့်သည်ဟူသော ဆုံးဖြတ်ချက်များ ချမှတ်သည်။ sigmoid လုပ်ဆောင်ချက်ကို input gate တွင်အသုံးပြုသည်၊ ၎င်းသည် ထပ်တလဲလဲ network မှတဆင့် မည်သည့်တန်ဖိုးများကို ပေးပို့ရမည်ကို ဆုံးဖြတ်ပေးသည်။ သုညက တန်ဖိုးကျသွားသည်၊ 1 က ၎င်းကို ထိန်းသိမ်းသည်။ -1 မှ 1 အထိ မော်ဒယ်အတွက် မည်မျှအရေးကြီးသည်ကို ဆုံးဖြတ်ပေးသည့် TanH လုပ်ဆောင်ချက်ကို ဤနေရာတွင် အသုံးပြုပါသည်။

လက်ရှိထည့်သွင်းမှုများနှင့် မမ်မိုရီအခြေအနေကို ထည့်သွင်းတွက်ချက်ပြီးနောက်၊ အထွက်ဂိတ်သည် မည်သည့်တန်ဖိုးများကို နောက်တစ်ကြိမ်အဆင့်သို့ တွန်းပို့ရန် ဆုံးဖြတ်သည်။ အထွက်ဂိတ်တွင်၊ တန်ဖိုးများကို ခွဲခြမ်းစိတ်ဖြာပြီး -1 မှ 1 အထိ အရေးပါမှုတစ်ခု သတ်မှတ်ပေးထားပါသည်။ ၎င်းသည် နောက်တစ်ကြိမ် အဆင့်တွက်ချက်ခြင်းသို့ မလုပ်ဆောင်မီ ဒေတာကို ထိန်းညှိပေးပါသည်။ နောက်ဆုံးတွင်၊ forgetgate ၏အလုပ်မှာ input values ​​၏သဘောသဘာဝနှင့် ပတ်သက်၍ ဆုံးဖြတ်ချက်ချရန် မော်ဒယ်က မလိုအပ်ဟုယူဆသော အချက်အလက်များကို ချပစ်ရန်ဖြစ်သည်။ မေ့သွားသောတံခါးသည် တန်ဖိုးများပေါ်တွင် sigmoid လုပ်ဆောင်ချက်ကိုအသုံးပြုပြီး 0 (ဒါကိုမေ့လိုက်ပါ) နှင့် 1 (ဒါကို သိမ်းဆည်းထားပါ) အကြား နံပါတ်များကိုထုတ်ပေးသည်။

LSTM အာရုံကြောကွန်ရက်ကို အထက်တွင်ဖော်ပြထားသည့်အတိုင်း ဆက်တိုက်စကားလုံးဒေတာကို အဓိပ္ပာယ်ပြန်ဆိုနိုင်သော အထူး LSTM အလွှာနှစ်ခုလုံးမှ ပြုလုပ်ထားခြင်းဖြစ်သည်။ ဒေတာသည် LSTM အလွှာများမှတဆင့် ရွေ့လျားသွားသည်နှင့်အမျှ၊ ၎င်းသည် သိပ်သည်းစွာ ချိတ်ဆက်ထားသော အလွှာများသို့ ရောက်သွားပါသည်။

ဘလော့ဂါနှင့် ပရိုဂရမ်မာများအတွက် အထူးပြုပါ။ စက်သင်ယူ နှင့် နက်ရှိုင်းသောသင်ယူခြင်း အကြောင်းအရာများ လူမှုဆက်ဆံရေးကောင်းမွန်ရန်အတွက် AI ၏စွမ်းအားကို အခြားသူများအား ကူညီပေးနိုင်ရန် Daniel က မျှော်လင့်ထားသည်။