ဆောင်းပါးတို Gradient Boosting ဆိုတာ ဘာလဲ။ - Unite.AI
ကြှနျုပျတို့နှငျ့အတူချိတ်ဆက်ပါ
AI Masterclass-

AI ၅၀

Gradient Boosting ဆိုတာ ဘာလဲ။

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

ဒေတာသိပ္ပံပြိုင်ပွဲများတွင် အလွန်အသုံးဝင်နိုင်စေရန် စီမံထားသော သာမာန်စက်သင်ယူမှုမော်ဒယ်အမျိုးအစားသည် gradient boosting model ဖြစ်သည်။ Gradient မြှင့်တင်ခြင်း။ အခြေခံအားဖြင့် အားနည်းသောသင်ယူမှုပုံစံများကို ခိုင်မာသောသင်ယူမှုပုံစံများအဖြစ်သို့ ပြောင်းလဲခြင်း၏ အခြေခံလုပ်ငန်းစဉ်ဖြစ်သည်။ ဒါတောင် အတိအကျ ဘယ်လောက်ပြီးမြောက်ခဲ့လဲ။ gradient boosting algorithms နှင့် ပိုမိုကောင်းမွန်သော gradient ကို အနီးကပ်ကြည့်ကြပါစို့ gradient boosting model ကို ဘယ်လိုနားလည်လဲ။ အားနည်းသောသင်ယူသူများကို ခိုင်မာသောသင်ယူသူများအဖြစ်သို့ ပြောင်းလဲပေးသည်။

Gradient Boosting ကို သတ်မှတ်ခြင်း။

ဤဆောင်းပါးသည် အယ်လဂိုရီသမ်များကို နောက်ခံပြုထားသည့် သင်္ချာဘာသာရပ်ကို ကွဲကွဲပြားပြားမရှိဘဲ gradient မြှင့်တင်ခြင်းအတွက် ကောင်းသောထိုးထွင်းသိမြင်မှုကို ပေးနိုင်ရန် ရည်ရွယ်ပါသည်။ မြင့်မားသောအဆင့်တွင် gradient boosting လုပ်ဆောင်ပုံအတွက် ကျေးဇူးတင်လေးမြတ်မှုရှိသည်နှင့်တပြိုင်နက်၊ ဖြစ်နိုင်ချေရှိသော သင်္ချာကို ပိုမိုနက်ရှိုင်းစွာ စူးစမ်းလေ့လာရန် တိုက်တွန်းခံရပါသည်။

သင်ယူသူအား "မြှင့်တင်ရန်" ဟူသောအဓိပ္ပါယ်ကို သတ်မှတ်ခြင်းဖြင့် စတင်ကြပါစို့။ အားနည်းသော သင်ယူသူများသည် သင်ယူမှုပုံစံ၏ ဂုဏ်သတ္တိများကို ချိန်ညှိခြင်းဖြင့် အားကောင်းသော သင်ယူသူများအဖြစ်သို့ ပြောင်းလဲပါသည်။ မည်သည့်သင်ယူမှု algorithm ကို အတိအကျ မြှင့်တင်နေသနည်း။

အခြား အသုံးများသော စက်သင်ယူမှု မော်ဒယ်ကို မြှင့်တင်ခြင်းဖြင့် မြှင့်တင်ခြင်း မော်ဒယ်များ အလုပ်လုပ်သည်၊ ဆုံးဖြတ်ချက်သစ်ပင်။

A ဆုံးဖြတ်ချက်သစ်ပင် ဒေတာအတွဲတစ်ခုကို သေးငယ်သောအပိုင်းများအဖြစ် ခွဲခြမ်းခြင်းဖြင့် မော်ဒယ်လုပ်ဆောင်ပြီး အစုခွဲများကို ထပ်မံမခွဲနိုင်တော့သည်နှင့် ရလဒ်မှာ node နှင့် အရွက်များပါရှိသော သစ်ပင်တစ်ခုဖြစ်သည်။ ဆုံးဖြတ်ချက်သစ်ပင်ရှိ Node များသည် မတူညီသော စစ်ထုတ်မှုစံနှုန်းများကို အသုံးပြု၍ ဒေတာအချက်များဆိုင်ရာ ဆုံးဖြတ်ချက်များ ပြုလုပ်သည့်နေရာဖြစ်သည်။ ဆုံးဖြတ်ချက်သစ်ပင်ရှိ အရွက်များသည် ခွဲခြားသတ်မှတ်ထားသော ဒေတာအချက်များဖြစ်သည်။ ဆုံးဖြတ်ချက်သစ်ပင် အယ်လဂိုရီသမ်များသည် ကိန်းဂဏာန်းနှင့် အမျိုးအစားအလိုက် ဒေတာ နှစ်မျိုးလုံးကို ကိုင်တွယ်နိုင်ပြီး၊ သစ်ပင်တွင် ပိုင်းခြားမှုများကို သီးခြား ကိန်းရှင်များ/အင်္ဂါရပ်များပေါ်တွင် အခြေခံထားသည်။

မော်ဒယ်များ မြှင့်တင်လေ့ကျင့်ပုံ သရုပ်ဖော်ပုံ။
ဓာတ်ပုံ- SeattleDataBuy မှတဆင့် Wikimedia Commons, CC 4.0 (https://commons.wikimedia.org/wiki/File:Boosting.png)

boosting algorithm အမျိုးအစားတစ်ခုမှာ၊ AdaBoost algorithm. AdaBoost algorithms သည် ဆုံးဖြတ်ချက်သစ်ပင်ပုံစံကို လေ့ကျင့်သင်ကြားပြီး လေ့လာမှုတိုင်းအတွက် တူညီသောအလေးချိန်ကို သတ်မှတ်ခြင်းဖြင့် စတင်သည်။ ပထမသစ်ပင်ကို တိကျမှုအတွက် အကဲဖြတ်ပြီးနောက်၊ မတူညီသော လေ့လာတွေ့ရှိချက်များအတွက် အလေးချိန်များကို ချိန်ညှိပေးသည်။ ခွဲခြားရန် လွယ်ကူသော လေ့လာတွေ့ရှိချက်များသည် ၎င်းတို့၏ အလေးချိန်ကို လျော့ကျစေပြီး အမျိုးအစားခွဲခြားရန် ခက်ခဲသော လေ့လာတွေ့ရှိချက်များကြောင့် ၎င်းတို့၏ အလေးချိန်များ တိုးလာပါသည်။ ဒုတိယသစ်ပင်၏ ခန့်မှန်းချက်များသည် ပထမသစ်ပင်၏ ခန့်မှန်းချက်များထက် ပိုမိုတိကျစေရန် ရည်ရွယ်၍ ဤချိန်ညှိထားသော အလေးများကို အသုံးပြု၍ ဒုတိယသစ်ပင်ကို ဖန်တီးထားသည်။

ယခု မော်ဒယ်တွင် မူလသစ်ပင်နှင့် သစ်ပင်သစ် (သို့မဟုတ် သစ်ပင် 1 + သစ်ပင် 2) အတွက် ခန့်မှန်းချက်များ ပါဝင်ပါသည်။ အမျိုးအစားခွဲခြင်းတိကျမှုကို မော်ဒယ်အသစ်အပေါ်အခြေခံ၍ နောက်ထပ်တစ်ကြိမ် အကဲဖြတ်ပါသည်။ မော်ဒယ်အတွက် တွက်ချက်ထားသော အမှားအယွင်းပေါ် အခြေခံ၍ တတိယသစ်ပင်ကို ဖန်တီးထားပြီး အလေးချိန်များကို တစ်ကြိမ် ထပ်မံချိန်ညှိထားသည်။ ဤလုပ်ငန်းစဉ်သည် ပေးထားသောအကြိမ်အရေအတွက်အတွက် ဆက်လက်လုပ်ဆောင်နေပြီး နောက်ဆုံးပုံစံသည် ယခင်တည်ဆောက်ထားသောသစ်ပင်များအားလုံး၏ ခန့်မှန်းတွက်ချက်မှုများ၏ အလေးချိန်ပေါင်းစည်းမှုကို အသုံးပြုသည့် အစုလိုက်ပုံစံဖြစ်သည်။

အထက်တွင်ဖော်ပြထားသောလုပ်ငန်းစဉ်သည် Decision Trees နှင့် အခြေခံကြိုတင်ခန့်မှန်းချက်များ/မော်ဒယ်များကို အသုံးပြုသော်လည်း၊ စံအမျိုးအစားခွဲခြားမှု နှင့် regressor မော်ဒယ်များကဲ့သို့ ကျယ်ပြန့်သောမော်ဒယ်များစွာဖြင့် မြှင့်တင်ခြင်းချဉ်းကပ်မှုကို လုပ်ဆောင်နိုင်ပါသည်။ နားလည်ရန် အဓိက သဘောတရားမှာ နောက်ဆက်တွဲ ကြိုတင်ခန့်မှန်းသူများသည် ယခင်လုပ်ခဲ့သော အမှားများမှ သင်ခန်းစာယူကြပြီး ကြိုတင်ခန့်မှန်းသူများကို စဉ်ဆက်မပြတ် ဖန်တီးထားခြင်း ဖြစ်သည်။

အယ်လဂိုရီသမ်များကို မြှင့်တင်ခြင်း၏ အဓိကအားသာချက်မှာ အခြားစက်သင်ယူမှုမော်ဒယ်များနှင့် နှိုင်းယှဉ်ပါက လက်ရှိခန့်မှန်းချက်များကို ရှာဖွေရန် အချိန်ပိုနည်းပါသည်။ သို့သော် ၎င်းတို့သည် အလွန်အကျွံဖြစ်နိုင်သောကြောင့် မြှင့်တင်ပေးသည့် အယ်လဂိုရီသမ်များကို အသုံးပြုသည့်အခါ ဂရုတစိုက်အသုံးပြုရန် လိုအပ်သည်။

Gradient မြှင့်တင်ခြင်း။

ယခု ကျွန်ုပ်တို့သည် အသုံးအများဆုံး မြှင့်တင်ခြင်းဆိုင်ရာ အယ်လဂိုရီသမ်များထဲမှ တစ်ခုကို ကြည့်ပါမည်။ Gradient Boosting Models (GBM) သည် ၎င်းတို့၏ မြင့်မားသော တိကျမှုအတွက် လူသိများပြီး ၎င်းတို့သည် AdaBoost တွင် အသုံးပြုသည့် အထွေထွေကျောင်းအုပ်များကို တိုးမြှင့်ပေးသည်။

Gradient Boosting Model နှင့် AdaBoost အကြား အဓိက ကွာခြားချက်မှာ GBM များသည် သင်ယူသူများ ဒေတာအမှတ်များ လွဲမှားစွာ ခွဲခြားတွက်ချက်ခြင်းအတွက် မတူညီသော တွက်ချက်နည်းကို အသုံးပြုခြင်းကြောင့် ဖြစ်သည်။ AdaBoost သည် အလေးချိန် အလွန်အမင်း အလေးချိန်ရှိသော ဒေတာအချက်များကို ဆန်းစစ်ခြင်းဖြင့် မော်ဒယ်တစ်ခု လုပ်ဆောင်မှု အားနည်းသည့်နေရာကို တွက်ချက်သည်။ ဤအတောအတွင်း၊ GBM များသည် သင်ယူသူများ၏တိကျမှုကိုဆုံးဖြတ်ရန်၊ ဆုံးရှုံးမှုလုပ်ဆောင်ချက်ကို မော်ဒယ်တစ်ခုသို့အသုံးပြုခြင်းဖြင့် gradient များကိုအသုံးပြုသည်။ ဆုံးရှုံးမှုလုပ်ဆောင်ချက်များသည် ဒေတာအတွဲပေါ်ရှိ မော်ဒယ်တစ်ဦး၏ အံဝင်ခွင်ကျတိကျမှုကို တိုင်းတာခြင်း၊ အမှားအယွင်းတစ်ခုကို တွက်ချက်ခြင်းနှင့် ထိုအမှားကို လျှော့ချရန်အတွက် မော်ဒယ်ကို အကောင်းဆုံးဖြစ်အောင် ပြုလုပ်ခြင်းနည်းလမ်းတစ်ခုဖြစ်သည်။ GBMs သည် အသုံးပြုသူအား ၎င်းတို့၏အလိုရှိသောပန်းတိုင်အပေါ်အခြေခံ၍ သတ်မှတ်ထားသော ဆုံးရှုံးမှုလုပ်ဆောင်ချက်ကို အကောင်းဆုံးဖြစ်အောင်လုပ်ခွင့်ပေးသည်။

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

ပိုမိုရှင်းလင်းစေရန်-

မော်ဒယ်အသစ် ကြိုတင်ခန့်မှန်းချက်များ = အထွက် ကိန်းရှင်များ – မစုံလင်သော ခန့်မှန်းချက်ဟောင်းများ။

ပို၍ ကိန်းဂဏန်းဆိုင်ရာ သဘောအရ၊ GBM များသည် မော်ဒယ်၏ အကြွင်းအကျန်များတွင် သက်ဆိုင်ရာ ပုံစံများကို ရှာဖွေရန် ရည်ရွယ်ပြီး ပုံစံနှင့် ကိုက်ညီစေရန် မော်ဒယ်ကို ချိန်ညှိကာ အကြွင်းအကျန်များကို သုညနှင့် တတ်နိုင်သမျှ နီးစပ်အောင် ပြုလုပ်ရန် ရည်ရွယ်ပါသည်။ အကယ်၍ သင်သည် မော်ဒယ်၏ ခန့်မှန်းချက်များအပေါ် ဆုတ်ယုတ်မှုတစ်ခုကို လုပ်ဆောင်ပါက၊ အကြွင်းအကျန်များကို 0 ၀န်းကျင်တွင် ဖြန့်ဝေပေးမည် (ပြီးပြည့်စုံသော အံဝင်ခွင်ကျ) ဖြစ်ပြီး GBM များသည် အကြွင်းအကျန်များအတွင်း ပုံစံများကို ရှာဖွေနေပြီး အဆိုပါပုံစံများဝန်းကျင်ရှိ မော်ဒယ်ကို အပ်ဒိတ်လုပ်နေပါသည်။

တစ်နည်းဆိုရသော်၊ ခန့်မှန်းတန်ဖိုးများသည် အမှန်တကယ်တန်ဖိုးများနှင့် အလွန်နီးကပ်နေစေရန်အတွက် ခန့်မှန်းချက်များကို အပ်ဒိတ်လုပ်ထားသည်။

GBM သည် အခြားသော ဆုံးရှုံးမှုများစွာ (ဥပမာ လော့ဂရစ်သမ်ဆုံးရှုံးမှု) ကို အသုံးပြုနိုင်ကြောင်း သတိပြုပါ။ ရိုးရှင်းသောရည်ရွယ်ချက်အတွက် MSE ကို အထက်တွင်ရွေးချယ်ခဲ့သည်။

Gradient Boosting Models တွင် ပြောင်းလဲမှုများ

Gradient Boosting Models များသည် dataset တစ်ခုပေါ်တွင် အံဝင်ခွင်ကျဖြစ်နိုင်ခြေရှိသော လောဘကြီးသော အယ်လဂိုရီသမ်များဖြစ်သည်။ ဒါကို ကာကွယ်နိုင်ပါတယ်။ မတူညီသောနည်းလမ်းများစွာ ၎င်းသည် GBM ၏စွမ်းဆောင်ရည်ကိုတိုးတက်စေနိုင်သည်။

GBM များကို ကွဲပြားသောနည်းလမ်း လေးခုဖြင့် ထိန်းညှိနိုင်သည်- ကျုံ့ခြင်း၊ သစ်ပင် ကန့်သတ်ချက်များ၊ Stochastic Gradient မြှင့်တင်ခြင်းနှင့် အပြစ်ပေးသည့် သင်ယူခြင်း။

ကျုံ့

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

သစ်ပင် ကန့်သတ်ချက်များ

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

ကျပန်းနမူနာ

လေ့ကျင့်ရေးဒေတာအတွဲ၏ ကျပန်းရွေးချယ်ထားသော စံနမူနာများကို အခြေခံ၍ တစ်ဦးချင်းစီ သင်ယူသူများကို stochastic လုပ်ငန်းစဉ်ဖြင့် ဖန်တီးနိုင်သည်။ ၎င်းသည် အလွန်အကျွံမဖြစ်အောင် ကာကွယ်ပေးသည့် သစ်ပင်များကြား ဆက်စပ်မှုကို လျှော့ချပေးသည့် အကျိုးသက်ရောက်မှုရှိသည်။ ဒေတာအတွဲကို သစ်ပင်များမဖန်တီးမီ သို့မဟုတ် သစ်ပင်တွင်ခွဲခြမ်းရန်မစဉ်းစားမီတွင် စုစည်းနိုင်ပါသည်။

အပြစ်ပေးသင်ကြားခြင်း။

သစ်ပင်၏ဖွဲ့စည်းပုံကိုကန့်သတ်ခြင်းအားဖြင့်ပုံစံကိုကန့်သတ်ခြင်းအပြင် regression tree ကိုသုံးနိုင်သည်။ ဆုတ်ယုတ်မှုသစ်ပင်များသည် အရွက်တစ်ခုစီတွင် ကိန်းဂဏာန်းတန်ဖိုးများ ပါ၀င်ပြီး ၎င်းတို့သည် အလေးများအဖြစ် လုပ်ဆောင်ကာ L1 နှင့် L2 ပုံမှန်ပြုလုပ်ခြင်းကဲ့သို့ သာမာန်ပုံမှန်လုပ်ဆောင်မှုများဖြင့် ချိန်ညှိနိုင်သည်။

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