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

ကျွန်တော် ဒါကို စာမေးပွဲ ဖြေတဲ့ ကျောင်းသားနဲ့ ဥပမာပေးချင်တယ်။ ကျောင်းသားတစ်ယောက် စာမေးပွဲ ဖြေတယ်၊ အဖြေလွှာ ပြန်ရတော့ ဆရာက အမှားတွေကို အနီရောင်နဲ့ ဝိုင်းထားတယ်။ ကျောင်းသားက အဲဒီအမှားတွေကို ကြည့်ပြီး “အော် ဒီနေရာမှာ ငါ တွက်တာ မှားသွားတယ်၊ နောက်တစ်ခါ ဒီလိုမတွက်နဲ့” လို့ မှတ်ထားတယ်။ နောက်စာမေးပွဲမှာ အဲဒီအမှား ထပ်မလုပ်တော့ဘူး။ Backpropagation လည်း အတူတူပါပဲ။ AI က အမှားကို ပြန်ကြည့်ပြီး သူ့ရဲ့ အတွင်းထဲက ချိန်ညှိချက်တွေ (Weights) ကို ပြင်သွားတာပါ။

ဥပမာ ရိုးရိုးလေး တစ်ခုနဲ့ ကြည့်ရအောင်။ AI ကို ဓာတ်ပုံတစ်ပုံ ပြပြီး “ဒါ ကြောင်လား ခွေးလား?” လို့ မေးတယ်ဆိုပါစို့။ AI က “ခွေး 70%, ကြောင် 30%” လို့ ဖြေတယ်။ တကယ်က အဲဒါ ကြောင်ပါ။ ဒီတော့ AI က အမှား 70% လောက်လုပ်မိတယ်ဆိုတာ သိတယ်။ Backpropagation က အဲဒီအမှားကို AI ရဲ့ အတွင်းထဲက ဆက်သွယ်မှုတစ်ခုချင်းစီဆီ ပြန်ပို့ပေးတယ်။ “ဒီဆက်သွယ်မှုက အမှားကို အများကြီး ဖြစ်စေတယ်၊ ဒါကို နည်းနည်း လျှော့လိုက်”၊ “ဒီဆက်သွယ်မှုက မှန်နေတယ်၊ ဒါကို ဒီအတိုင်း ထား” — ဒီလိုမျိုး တစ်ခုချင်းစီကို ချိန်ညှိသွားတာပါ။

Backpropagation က ဘယ်လို အလုပ်လုပ်တာလဲ?

အဆင့် ၃ ဆင့်နဲ့ အလုပ်လုပ်ပါတယ်။

Forward Pass — အရင်ဆုံး AI က Input ကို ရှေ့ကနေ အနောက်ကို ဖြတ်ပြီး အဖြေတစ်ခု ထုတ်တယ်။ ဥပမာ ဓာတ်ပုံကို ကြည့်ပြီး “ခွေး” လို့ ဖြေတယ်။
Loss တွက်တာ — အဖြေနဲ့ အမှန်ကို နှိုင်းယှဉ်ပြီး အမှားဘယ်လောက်ကြီးလဲဆိုတာ တွက်တယ်။ ဒါကို Loss လို့ ခေါ်တယ်။ အမှားကြီးလေ Loss များလေပါ။
Backward Pass — အဲဒီ Loss ကို နောက်ကနေ အရှေ့ကို ပြန်ပို့ပြီး Weight တစ်ခုချင်းစီကို နည်းနည်း ချိန်ညှိတယ်။ အမှားကို ဖြစ်စေတဲ့ Weight ကို ပိုပြင်တယ်၊ အမှားနဲ့ မဆိုင်တဲ့ Weight ကို သိပ်မထိဘူး။ ဒီ ပြန်ပို့တဲ့ အဆင့်ကိုပဲ Backpropagation လို့ ခေါ်တာပါ။

ဒီအဆင့် ၃ ဆင့်ကို Data တစ်သုတ်ပြီးတစ်သုတ် ထပ်ခါထပ်ခါ လုပ်သွားတယ်။ တစ်သုတ်ပြီးတိုင်း AI က နည်းနည်း ပိုတိကျလာတယ်။ ဒါကို Epoch လို့ ခေါ်တယ်။ Epoch များများလုပ်လေ AI က ပိုသင်ယူလေပါ။ ဒါပေမယ့် များလွန်းရင်လည်း Overfitting ဖြစ်တတ်ပါတယ် — အဲဒါကိုတော့ အရင်က ဆောင်းပါးမှာ ပြောပြီးသားပါ။

Learning Rate ဆိုတာ ဘာလဲ?

Backpropagation မှာ အရေးကြီးတဲ့ ချိန်ညှိချက်တစ်ခု ရှိတယ်။ အဲဒါ Learning Rate ပါ။ Weight တွေကို တစ်ခါပြင်တိုင်း ဘယ်လောက်ကြီးကြီး ပြင်မလဲဆိုတာကို ဆုံးဖြတ်တာပါ။

Learning Rate ကြီးလွန်းရင် AI က အဖြေမှန်ကို ကျော်သွားတတ်ပါတယ်။ ဥပမာ ပစ်မှတ်ကို ချိန်ပြီး ခြေလှမ်းကြီးကြီး လှမ်းသလို — ခြေလှမ်းကြီးလွန်းရင် ပစ်မှတ်ကို ကျော်သွားပြီး ဘယ်တော့မှ မထိဘူး။ Learning Rate သေးလွန်းရင်တော့ AI က သင်တာ အရမ်းနှေးပါတယ်။ ခြေလှမ်းသေးသေးလေးနဲ့ လှမ်းနေသလို၊ ပစ်မှတ်ကို ရောက်ဖို့ အချိန်အကြာကြီး ကြာပါတယ်။ ဒါကြောင့် Learning Rate ကို မျှမျှတတ ရွေးရတာပါ။

ဒါက ဘာလို့ အရေးကြီးတာလဲ?

Backpropagation မရှိရင် Neural Network တွေ ဒီနေ့ ဒီလောက် တော်လာမှာ မဟုတ်ပါဘူး။ 1980 ခုနှစ်တွေမှာ Backpropagation ကို စတင်သုံးလာပြီးနောက်ပိုင်းမှ Neural Network တွေက တကယ်သင်ယူနိုင်လာတာပါ။ ChatGPT, ပုံထုတ်တဲ့ AI, စကားပြောတဲ့ AI — ဒါတွေအားလုံးရဲ့ နောက်ကွယ်မှာ Backpropagation ရှိနေပါတယ်။ AI က တစ်ခါတည်း တော်လာတာ မဟုတ်ပါဘူး။ အမှားထောင်ပေါင်းများစွာကို ပြန်ကြည့်ပြီး ပြင်ရင်း တော်လာတာပါ။

ကျွန်တော်တို့ လူတွေလည်း အတူတူပါပဲ။ အမှားလုပ်မိတာက ရှက်စရာမဟုတ်ပါဘူး။ အမှားကို ပြန်ကြည့်ပြီး ပြင်နိုင်ရင် အဲဒါ သင်ယူခြင်းပါပဲ။ AI က အမှားကနေ သင်ယူသလို၊ ကိုယ်လည်း Code ရေးတဲ့အခါ Error တက်တိုင်း “ဘာမှားတာလဲ” လို့ ပြန်ကြည့်ရင် ပိုတော်လာမှာပါ။ 🙂

Avatar photo
Min SiThu
@itsmeminsithu

Software Engineer & Tech Content Creator

View all posts