မာတိကာ[ဖျောက်][ရှိုး]
“ဂရပ်ဖစ်အာရုံကြောကွန်ရက်များ” (GNNs) ဟုခေါ်သော နက်နဲသောသင်ယူမှုနည်းစနစ်များသည် ဂရပ်ဒိုမိန်းတွင် လုပ်ဆောင်သည်။ မကြာသေးမီက ဤကွန်ရက်များသည် ကွန်ပျူတာအမြင်၊ အကြံပြုချက်စနစ်များနှင့် ပေါင်းစပ် ပိုမိုကောင်းမွန်အောင်ပြုလုပ်ခြင်းအပါအဝင် နယ်ပယ်အမျိုးမျိုးတွင် အသုံးပြုမှုကို မကြာသေးမီက တွေ့ရှိခဲ့သည်။
ထို့အပြင်၊ ဤကွန်ရက်များကို လူမှုကွန်ရက်များ၊ ပရိုတိန်း-ပရိုတင်း အပြန်အလှန်ဆက်သွယ်မှုကွန်ရက်များ၊ အသိပညာဂရပ်များနှင့် လေ့လာမှုနယ်ပယ်များစွာတွင် အခြားသော ရှုပ်ထွေးသောစနစ်များကို ကိုယ်စားပြုရန်အတွက် အသုံးပြုနိုင်သည်။
ယူကလစ်မဟုတ်သော အာကာသသည် ပုံများကဲ့သို့ အခြားဒေတာအမျိုးအစားများနှင့်မတူဘဲ ဂရပ်ဒေတာလည်ပတ်သည့်နေရာဖြစ်သည်။ node များကို အမျိုးအစားခွဲရန်၊ လင့်ခ်များကို ခန့်မှန်းရန်၊ နှင့် အစုအဝေးဒေတာအတွက် ဂရပ်ဖစ်ခွဲခြမ်းစိတ်ဖြာမှုကို အသုံးပြုပါသည်။
ဤဆောင်းပါးတွင်၊ ကျွန်ုပ်တို့သည် ဂရပ်ဖစ်ကို ဆန်းစစ်ပါမည်။ အာရုံကြောကွန်ယက် အသေးစိတ်အားဖြင့်၊ ၎င်း၏အမျိုးအစားများအပြင် PyTorch ကို အသုံးပြု၍ လက်တွေ့နမူနာများ ပေးပါသည်။
ဒါဆို Graph ဆိုတာဘာလဲ။
ဂရပ်ဆိုသည်မှာ node နှင့် vertices များဖြင့် ဖွဲ့စည်းထားသော ဒေတာဖွဲ့စည်းပုံ အမျိုးအစားတစ်ခုဖြစ်သည်။ အမျိုးမျိုးသော node များကြား ချိတ်ဆက်မှုများကို ဒေါင်လိုက်များဖြင့် ဆုံးဖြတ်သည်။ ဦးတည်ချက်ကို node များတွင် ညွှန်ပြပါက၊ ဂရပ်ကို ဦးတည်သည်ဟု ဆိုသည်၊ မဟုတ်ပါက၊ ၎င်းကို လမ်းညွှန်ခြင်းမရှိပါ။
ဂရပ်ဖ်၏ ကောင်းမွန်သော အသုံးချမှုသည် တစ်ဦးချင်း အသီးသီးအကြား ဆက်ဆံရေးကို စံနမူနာပြုခြင်းဖြစ်သည်။ လူမှုကွန်ယက်. လင့်ခ်များနှင့် ဖလှယ်မှုများကဲ့သို့သော ရှုပ်ထွေးသောအခြေအနေများကို ကိုင်တွယ်ဖြေရှင်းသောအခါ၊ ဂရပ်များသည် အလွန်အသုံးဝင်သည်။
၎င်းတို့ကို အကြံပြုချက်စနစ်များ၊ အခေါ်အဝေါ်ဆိုင်ရာ ခွဲခြမ်းစိတ်ဖြာမှု၊ လူမှုကွန်ရက်ခွဲခြမ်းစိတ်ဖြာမှုနှင့် ပုံစံအသိအမှတ်ပြုမှုတို့ဖြင့် ခန့်အပ်ထားသည်။
. ဂရပ်ဖစ်အခြေခံဖြေရှင်းချက်များအား ဖန်တီးခြင်းသည် ရှုပ်ထွေးပြီး အပြန်အလှန်ဆက်နွယ်နေသော အချက်အလက်များကို ထဲထဲဝင်ဝင်နားလည်မှုပေးစွမ်းနိုင်သော အသစ်စက်စက်နယ်ပယ်တစ်ခုဖြစ်သည်။
Graph Neural Network
ဂရပ်ဖစ်အာရုံကြောကွန်ရက်များသည် ဂရပ်ဖ်ဒေတာဖော်မတ်တွင် လုပ်ဆောင်နိုင်သော အထူးပြုအာရုံကြောကွန်ရက်အမျိုးအစားများဖြစ်သည်။ ဂရပ်ဖစ်ထည့်သွင်းခြင်းနှင့် convolutional neural networks (CNNs) တို့သည် ၎င်းတို့အပေါ် သိသာထင်ရှားသော သက်ရောက်မှုရှိသည်။
Graph Neural Networks များကို ကြိုတင်ခန့်မှန်းခြင်း nodeများ၊ edges နှင့် graphs များပါ၀င်သည့် အလုပ်များတွင် အလုပ်ခန့်ထားသည်။
- ရုပ်ပုံများကို အမျိုးအစားခွဲရန် CNN ကို အသုံးပြုသည်။ အလားတူ၊ အတန်းတစ်ခုအား ခန့်မှန်းရန်၊ GNN များကို ဂရပ်ဖစ်တည်ဆောက်ပုံကို ကိုယ်စားပြုသည့် pixel grid သို့ အသုံးချပါသည်။
- ထပ်တလဲလဲ အာရုံကြောကွန်ရက်များကို အသုံးပြု၍ စာသားအမျိုးအစားခွဲခြားခြင်း။ GNN များကို စကားစုတစ်ခုစီရှိ စကားလုံးတိုင်းသည် node တစ်ခုဖြစ်သည့် ဂရပ်ဗိသုကာများနှင့်လည်း အသုံးပြုပါသည်။
nodes၊ edges သို့မဟုတ် ပြီးပြည့်စုံသော ဂရပ်များကို ခန့်မှန်းရန်အတွက် GNN များကို ဖန်တီးရန်အတွက် အာရုံကြောကွန်ရက်များကို အသုံးပြုပါသည်။ ဥပမာအားဖြင့်၊ node အဆင့်ရှိ ခန့်မှန်းချက်တစ်ခုသည် spam ရှာဖွေခြင်းကဲ့သို့ ပြဿနာကို ဖြေရှင်းနိုင်သည်။
လင့်ခ်ခန့်မှန်းခြင်းသည် အကြံပြုသူစနစ်များတွင် ဖြစ်ရိုးဖြစ်စဉ်တစ်ခုဖြစ်ပြီး အနားသတ်ခန့်မှန်းချက်ပြဿနာတစ်ခု၏ ဥပမာတစ်ခု ဖြစ်နိုင်သည်။
Graph Neural Network အမျိုးအစားများ
အာရုံကြောကွန်ရက် အမျိုးအစားပေါင်း မြောက်မြားစွာရှိပြီး၊ Convolutional Neural Networks အများစုမှာ ၎င်းတို့တွင် ရှိနေပါသည်။ ဤအပိုင်းတွင် လူသိအများဆုံး GNN များအကြောင်း လေ့လာပါမည်။
Graph Convolutional Networks (GCNs)
၎င်းတို့သည် ဂန္တဝင် CNN များနှင့် နှိုင်းယှဉ်နိုင်သည်။ ၎င်းသည် အနီးနားရှိ node များကိုကြည့်ရှုခြင်းဖြင့် လက္ခဏာများရရှိစေသည်။ node vector များကိုပေါင်းစည်းပြီး သိပ်သည်းသောအလွှာသို့ output ကိုပေးပို့ပြီးနောက်တွင် non-linearity ကိုထည့်သွင်းရန်အတွက် activation function ကို GNNs မှအသုံးပြုပါသည်။
၎င်းကို အနှစ်သာရအားဖြင့် Graph convolution၊ linear layer နှင့် non-learner activation function တို့ဖြင့် ဖွဲ့စည်းထားသည်။ GCN များသည် Spectral Convolutional Networks နှင့် Spatial Convolutional Networks ဟူ၍ နှစ်မျိုးရှိသည်။
ဂရပ်ဖ် အော်တို-ကုဒ်ဒါ ကွန်ရက်များ
ထည့်သွင်းဂရပ်များကို ပြန်လည်တည်ဆောက်ရန် ကြိုးစားရန် ဂရပ်များနှင့် ကုဒ်ဒါကို ကိုယ်စားပြုပုံကို လေ့လာရန် ၎င်းသည် ကုဒ်ဒါကို အသုံးပြုသည်။ ကုဒ်ဒါနှင့် ဒီကုဒ်ဒါကို ချိတ်ဆက်ထားသော တစ်ဆို့အလွှာတစ်ခု ရှိသည်။
အလိုအလျောက် ကုဒ်ပြောင်းသည့်ကိရိယာများသည် အတန်းချိန်ခွင်လျှာကို ကိုင်တွယ်ရာတွင် ကောင်းမွန်သောအလုပ်ဖြစ်သောကြောင့်၊ ၎င်းတို့ကို လင့်ခ်ခန့်မှန်းခြင်းတွင် မကြာခဏအသုံးပြုကြသည်။
ထပ်တလဲလဲ ဂရပ်ဖစ်အာရုံကြောကွန်ရက်များ (RGNNs)
node တစ်ခုတွင် များပြားသော ဆက်ဆံရေးများရှိသည့် Multi-relational network များတွင်၊ ၎င်းသည် အကောင်းဆုံးသော ပျံ့နှံ့မှုပုံစံကို လေ့လာပြီး ဂရပ်များကို စီမံခန့်ခွဲနိုင်သည်။ ချောမွေ့မှုကို တိုးမြင့်စေပြီး ကန့်သတ်ဘောင်ချဲ့ခြင်းကို လျှော့ချရန်အတွက်၊ ဤဂရပ်အာရုံကြောကွန်ရက်ပုံစံတွင် ပုံမှန်အသုံးပြုမှုများကို အသုံးပြုပါသည်။
ပိုမိုကောင်းမွန်သော ရလဒ်များရရှိရန်၊ RGNN များသည် စီမံဆောင်ရွက်သည့် ပါဝါနည်းရန် လိုအပ်သည်။ ၎င်းတို့ကို စာသားထုတ်လုပ်ခြင်း၊ စကားပြောမှတ်မိခြင်း၊ စက်ဘာသာပြန်ခြင်း၊ ရုပ်ပုံဖော်ပြချက်၊ ဗီဒီယိုတဂ်ခြင်းနှင့် စာသားအကျဉ်းချုပ်အတွက် အသုံးပြုသည်။
Gated Neural Graph Networks (GGNNs)
ရေရှည်မှီခိုရသည့်အလုပ်များနှင့်ပတ်သက်လာလျှင် ၎င်းတို့သည် RGNN များကို စွမ်းဆောင်ရည်ထက် သာလွန်စေသည်။ ကာလရှည်မှီခိုမှုများအတွက် node၊ edge နှင့် temporal gates များပါဝင်ခြင်းဖြင့်၊ gated graph neural networks များသည် ထပ်တလဲလဲ ဂရပ်အာရုံကြောကွန်ရက်များကို မြှင့်တင်ပေးပါသည်။
ဂိတ်များသည် အဆင့်အမျိုးမျိုးတွင် အချက်အလက်များကို ပြန်လည်သိမ်းဆည်းခြင်းနှင့် မေ့လျော့ခြင်းအတွက် အသုံးပြုသည့် Gated Recurrent Units (GRUs) နှင့် အလားတူလုပ်ဆောင်သည်။
Pytorg ကို အသုံးပြု၍ Graph Neural Network ကို အကောင်အထည်ဖော်ခြင်း။
ကျွန်ုပ်တို့အာရုံစိုက်မည့် တိကျသောပြဿနာမှာ သာမန် node အမျိုးအစားခွဲခြားခြင်းပြဿနာဖြစ်သည်။ ကျွန်ုပ်တို့တွင် ကျယ်ပြောလှသော လူမှုကွန်ရက်တစ်ခုရှိသည်။ musae-githubGitHub developer များအတွက် open API မှ စုစည်းထားသည်။
Edges သည် အနည်းဆုံး သိုလှောင်မှု 10 ခုတွင် ကြယ်ပွင့်ပြထားသော developer (ပလပ်ဖောင်းအသုံးပြုသူများ) ကိုကိုယ်စားပြုသည့် node များကြား အပြန်အလှန်နောက်လိုက်ဆက်ဆံရေးများကို ပြသသည် (သတိပြုပါ ဟူသောစကားလုံးသည် အပြန်အလှန်အားဖြင့် မညွှန်ကြားနိုင်သောဆက်ဆံရေးကိုဖော်ပြသည်)။
node ၏တည်နေရာ၊ ကြယ်ပွင့်ပြထားသောသိမ်းဆည်းမှုများ၊ အလုပ်ရှင်နှင့် အီးမေးလ်လိပ်စာအပေါ် အခြေခံ၍ node လက္ခဏာများကို ပြန်လည်ရယူသည်။ GitHub အသုံးပြုသူတစ်ဦးသည် ဝဘ်ဆော့ဖ်ဝဲရေးသားသူ သို့မဟုတ် တစ်ဦးဖြစ်မဖြစ် ခန့်မှန်းခြင်း။ စက်သင်ယူမှုတီထွင်သူ ငါတို့တာဝန်ပဲ။
အသုံးပြုသူတစ်ဦးစီ၏ အလုပ်ခေါင်းစဉ်သည် ဤပစ်မှတ်ထားလုပ်ဆောင်မှုအတွက် အခြေခံအဖြစ် ဆောင်ရွက်ခဲ့သည်။
PyTorch ကို ထည့်သွင်းခြင်း။
စတင်ရန်၊ ကျွန်ုပ်တို့သည် ဦးစွာထည့်သွင်းရန်လိုအပ်သည်။ Pythorch. သင့်စက်ထဲကအတိုင်း သင် configure လုပ်နိုင်ပါတယ်။ ဒီမှာ. ဤတွင် ငါ့ဥစ္စာဖြစ်သည်-
မော်ဂျူးများကို တင်သွင်းခြင်း။
ယခု၊ ကျွန်ုပ်တို့သည် လိုအပ်သော module များကို တင်သွင်းပါသည်။
ဒေတာတင်သွင်းခြင်းနှင့် စူးစမ်းလေ့လာခြင်း။
အောက်ပါအဆင့်သည် ဒေတာကိုဖတ်ပြီး အညွှန်းဖိုင်ထဲမှ ပထမတန်းငါးတန်းနှင့် နောက်ဆုံးအတန်းငါးတန်းကို ကွက်တိဆွဲရန်ဖြစ်သည်။
ကော်လံလေးခုအနက်မှ နှစ်ခုသာ—နိုဒ့်၏ အိုင်ဒီ (ဆိုလိုသည်မှာ၊ အသုံးပြုသူ) နှင့် ml_target ဖြစ်သည်၊ ၎င်းမှာ အသုံးပြုသူသည် စက်သင်ယူမှုအသိုက်အဝန်း၏ အဖွဲ့ဝင်ဖြစ်ပြီး အခြားမဟုတ်ပါက 1 ဖြစ်သည့် 0 သည် ဤအခြေအနေတွင် ကျွန်ုပ်တို့နှင့် သက်ဆိုင်ပါသည်။
အတန်းနှစ်ခုသာရှိသောကြောင့်၊ ကျွန်ုပ်တို့၏လုပ်ငန်းတာဝန်သည် binary အမျိုးအစားခွဲခြားခြင်းပြဿနာဖြစ်ကြောင်း ယခုကျွန်ုပ်တို့ စိတ်ချနိုင်ပါပြီ။
သိသာထင်ရှားသော လူတန်းစားမညီမျှမှုများ၏ ရလဒ်အနေဖြင့်၊ အမျိုးအစားခွဲခွဲမှူးသည် ကိုယ်စားပြုအောက်တန်းကျသော လူတန်းစားကို အကဲဖြတ်ခြင်းထက် မည်သည့်လူတန်းစားကို အများစုဟု ယူဆနိုင်သည်၊ အတန်းချိန်ခွင်လျှာကို ထည့်သွင်းစဉ်းစားရန် နောက်ထပ်အရေးကြီးသောအချက်တစ်ခု ဖြစ်လာသည်။
ဟစ်စတိုဂရမ် (ကြိမ်နှုန်း ဖြန့်ဝေမှု) ကို ပုံဆွဲခြင်းသည် အခြားအတန်းများထက် စက်သင်ယူမှု (label=1) မှ အတန်းအနည်းငယ်သာ ရှိသောကြောင့် အချို့သော မညီမျှမှုများကို ဖော်ပြသည်။
အင်္ဂါရပ် ကုဒ်
node များ၏ ဝိသေသလက္ခဏာများသည် node တစ်ခုစီနှင့် ဆက်စပ်နေသည့် အင်္ဂါရပ်ကို ကျွန်ုပ်တို့အား အသိပေးပါသည်။ ဒေတာကို ကုဒ်လုပ်ရန် ကျွန်ုပ်တို့၏နည်းလမ်းကို အကောင်အထည်ဖော်ခြင်းဖြင့်၊ ကျွန်ုပ်တို့သည် ထိုဝိသေသလက္ခဏာများကို ချက်ချင်းကုဒ်လုပ်နိုင်ပါသည်။
ကျွန်ုပ်တို့သည် ပြသရန်အတွက် ကွန်ရက်၏ သေးငယ်သော အစိတ်အပိုင်း (60 nodes) ကို ဖုံးကွယ်ရန် ဤနည်းလမ်းကို အသုံးပြုလိုပါသည်။ ကုဒ်ကို ဤနေရာတွင် ဖော်ပြထားပါသည်။
ဂရပ်များကိုဒီဇိုင်းရေးဆွဲခြင်းနှင့်ပြသခြင်း။
ဂျီဩမေတြီ မီးရှူးတိုင်ကို ကျွန်ုပ်တို့ အသုံးပြုပါမည်။ ကျွန်ုပ်တို့၏ဂရပ်ကိုတည်ဆောက်ရန်ဒေတာ။
မတူညီသော (ချန်လှပ်ထားနိုင်သည်) ဂုဏ်သတ္တိများဖြင့် ဂရပ်တစ်ခုအား ပုံစံထုတ်ရန်၊ ရိုးရှင်းသော Python အရာဝတ္ထုတစ်ခုဖြစ်သည့် ဒေတာကို အသုံးပြုသည်။ ဤအတန်းအစားနှင့် အောက်ပါ attribute များ—အားလုံးသည် torch tensor များဖြစ်သည်—ကိုအသုံးပြုခြင်းဖြင့် ကျွန်ုပ်တို့၏ ဂရပ်ဖစ်အရာဝတ္ထုကို ဖန်တီးပါမည်။
ကုဒ်လုပ်ထားသော node အင်္ဂါရပ်များအတွက် ခွဲဝေပေးမည့် တန်ဖိုး x ပုံစံသည် [nodes အရေအတွက်၊ အင်္ဂါရပ်များ] ဖြစ်သည်။
y ၏ ပုံသဏ္ဍာန်သည် [nodes အရေအတွက်] ဖြစ်ပြီး ၎င်းကို node တံဆိပ်များပေါ်တွင် သက်ရောက်မည်ဖြစ်သည်။
အစွန်းညွှန်းကိန်း- လမ်းညွှန်မထားသော ဂရပ်တစ်ခုကို ဖော်ပြရန်အတွက်၊ တူညီသော node နှစ်ခုကို ချိတ်ဆက်သော်လည်း ဆန့်ကျင်ဘက် ဦးတည်ရာသို့ ညွှန်သည့် ကွဲပြားသော ညွှန်ထားသော အစွန်းနှစ်ခုတည်ရှိမှုကို ခွင့်ပြုရန်အတွက် မူလအစွန်းညွှန်းကိန်းများကို ချဲ့ထွင်ရန် လိုအပ်ပါသည်။
အစွန်းတစ်စုံ၊ တစ်ခုသည် node 100 မှ 200 မှ ညွှန်ပြပြီး နောက်တစ်ခုသည် 200 မှ 100 အထိ၊ ဥပမာ၊ nodes 100 နှင့် 200 ကြားတွင် လိုအပ်ပါသည်။ edge indices များကို ပံ့ပိုးပေးမည်ဆိုပါက၊ ညွှန်ပြခြင်းမရှိသော ဂရပ်ကို မည်သို့ကိုယ်စားပြုနိုင်မည်နည်း။ [2,2*မူရင်းအစွန်းများ] သည် tensor ပုံစံဖြစ်လိမ့်မည်။
ဂရပ်တစ်ခုပြသရန် ကျွန်ုပ်တို့၏ဆွဲဂရပ်ပုံစံကို ဖန်တီးပါသည်။ ပထမအဆင့်မှာ NetworkX.draw ကို အသုံးပြု၍ ရေးဆွဲနိုင်သည့် NetworkX ဂရပ်အဖြစ် ကျွန်ုပ်တို့၏ တစ်သားတည်းဖြစ်သောကွန်ရက်ကို ပြောင်းလဲရန်ဖြစ်သည်။
ကျွန်ုပ်တို့၏ GNN မော်ဒယ်ကို ဖန်တီးပြီး လေ့ကျင့်ပါ။
ဂရပ်တစ်ခုလုံးတည်ဆောက်ရန်အတွက် light=False ဖြင့် ကုဒ်ဒေတာကို လုပ်ဆောင်ခြင်းဖြင့် ဒေတာအစုတစ်ခုလုံးကို ကုဒ်သွင်းခြင်းဖြင့် စတင်ပြီး ဂရပ်တစ်ခုလုံးကို light=False ဖြင့် တည်ဆောက်ပါသည်။ အရင်းအမြစ် အကန့်အသတ်ရှိသော စက်ကို အသုံးပြုနေသည်ဟု ယူဆသောကြောင့် ဤဂရပ်ကြီးကြီးကို ရေးဆွဲရန် ကျွန်ုပ်တို့ ကြိုးပမ်းမည်မဟုတ်ပါ။
ဂဏန်း 0 နှင့် 1 တို့ကို အသုံးပြု၍ တိကျသောမျက်နှာဖုံးတစ်ခုစီနှင့်သက်ဆိုင်သည့် binary vector များဖြစ်သည့် binary vector များဖြစ်သည့် Masks များကို လေ့ကျင့်ရေးကာလအတွင်း node များထည့်သွင်းသင့်ပြီး မည်သည့် node များသည် test data ဖြစ်သည်ကို inference အဆင့်ကိုပြောပြရန် အသုံးပြုနိုင်သည်။ မီးရှူးတိုင် ဂျီဩမေတြီ.အသွင်ပြောင်းမှုများ။
ဂရပ်တစ်ခုယူရန်နှင့် ကျွန်ုပ်တို့၏မျက်နှာဖုံးများကို မည်သို့တည်ဆောက်လိုကြောင်း သတ်မှတ်နိုင်စေသည့် AddTrainValTestMask အတန်း၏ လေ့ကျင့်ရေးမျက်နှာဖုံး၊ val Mask နှင့် စမ်းသပ်မျက်နှာဖုံးဂုဏ်သတ္တိများကို အသုံးပြု၍ node အဆင့်ခွဲခြမ်းကို ထပ်ထည့်နိုင်သည်။
ကျွန်ုပ်တို့သည် လေ့ကျင့်ရေးအတွက် 10% ကိုအသုံးပြုပြီး 60% ကို validation set အဖြစ်အသုံးပြုနေစဉ် ဒေတာ 30% ကို စမ်းသပ်မှုအဖြစ် အသုံးပြုပါသည်။
ယခု၊ ကျွန်ုပ်တို့သည် GCNConv အလွှာနှစ်ခုကို စုစုစည်းစည်းမည်ဖြစ်ပြီး၊ ၎င်းတို့ထဲမှ ပထမတစ်ခုသည် ကျွန်ုပ်တို့၏ဂရပ်ရှိ အင်္ဂါရပ်အရေအတွက်နှင့် ညီမျှသော အထွက်အင်္ဂါရပ်တစ်ခုပါ၀င်သော အလွှာတစ်ခုဖြစ်သည်။
ကျွန်ုပ်တို့၏အတန်းအရေအတွက်နှင့်ညီမျှသော output node များပါရှိသော ဒုတိယအလွှာတွင်၊ ကျွန်ုပ်တို့သည် relu activation function ကိုအသုံးပြုပြီး ငုပ်လျှိုးနေသောအင်္ဂါရပ်များကို ပံ့ပိုးပေးပါသည်။
အစွန်းညွှန်းကိန်းနှင့် အစွန်းအလေးချိန်သည် ရှေ့သို့လုပ်ဆောင်မှုတွင် GCNConv လက်ခံနိုင်သည့် x အများအပြားထဲမှ နှစ်ခုဖြစ်ပြီး ကျွန်ုပ်တို့၏အခြေအနေတွင်၊ ကျွန်ုပ်တို့သည် ပထမကိန်းရှင်နှစ်ခုသာ လိုအပ်ပါသည်။
ကျွန်ုပ်တို့၏မော်ဒယ်သည် ဂရပ်ရှိ node တစ်ခုစီ၏ အတန်းအစားကို ခန့်မှန်းနိုင်သော်လည်း၊ အဆင့်ပေါ်မူတည်၍ set တစ်ခုစီအတွက် တိကျမှုနှင့် ဆုံးရှုံးမှုကို ဆုံးဖြတ်ရန် လိုအပ်နေသေးသည်။
ဥပမာအားဖြင့်၊ လေ့ကျင့်နေစဉ်အတွင်း ကျွန်ုပ်တို့သည် တိကျမှုနှင့် လေ့ကျင့်မှုဆုံးရှုံးမှုကို ဆုံးဖြတ်ရန် လေ့ကျင့်ရေးအစုံကို အသုံးချလိုသောကြောင့် ဤနေရာသည် ကျွန်ုပ်တို့၏မျက်နှာဖုံးများကို အဆင်ပြေစေပါသည်။
သင့်လျော်သော ဆုံးရှုံးမှုနှင့် တိကျမှုကို တွက်ချက်ရန်၊ မျက်နှာဖုံးစွပ်ထားသည့် ဆုံးရှုံးမှုနှင့် မျက်နှာဖုံးစွပ်ထားသော တိကျမှုတို့ကို ကျွန်ုပ်တို့ သတ်မှတ်ပါမည်။
မော်ဒယ်သင်တန်း
အခု မီးရှူးတိုင်ကို အသုံးပြုမယ့် လေ့ကျင့်ရေး ရည်ရွယ်ချက်ကို သတ်မှတ်ပြီးပါပြီ။ Adam သည် ကျွမ်းကျင်သော optimizer တစ်ဦးဖြစ်သည်။
တရားဝင်မှု တိကျမှုကို စောင့်ကြည့်နေချိန်တွင် အချို့သော အပိုင်းများအတွက် လေ့ကျင့်မှုကို ကျွန်ုပ်တို့ လုပ်ဆောင်ပါမည်။
မတူညီသော ခေတ်ကာလတစ်လျှောက် လေ့ကျင့်ရေး၏ ဆုံးရှုံးမှုများနှင့် တိကျမှုများကိုလည်း ကျွန်ုပ်တို့ စီစဉ်ပေးပါသည်။
Graph Neural Network ၏ အားနည်းချက်များ
GNNs ကိုအသုံးပြုရာတွင် အားနည်းချက်အနည်းငယ်ရှိသည်။ GNNa ကို မည်သည့်အချိန်တွင် ခန့်အပ်ရန်နှင့် ကျွန်ုပ်တို့၏ စက်သင်ယူမှုမော်ဒယ်များ၏ စွမ်းဆောင်ရည်ကို မည်သို့မြှင့်တင်ရမည်ကို ၎င်းတို့ကို ကျွန်ုပ်တို့ ကောင်းစွာနားလည်ပြီးနောက် ၎င်းတို့ကို ရှင်းလင်းစွာဖော်ပြပါမည်။
- GNN များသည် ယေဘုယျအားဖြင့် အလွှာသုံးလွှာရှိသည့် ရေတိမ်ကွန်ရက်များဖြစ်သော်လည်း၊ အာရုံကြောကွန်ရက်အများစုသည် စွမ်းဆောင်ရည်မြှင့်တင်ရန် နက်ရှိုင်းစွာလုပ်ဆောင်နိုင်သည်။ ဤကန့်သတ်ချက်ကြောင့် ကျွန်ုပ်တို့သည် ကြီးမားသောဒေတာအတွဲများပေါ်တွင် ဖြတ်တောက်ထားသော အစွန်းမရောက်နိုင်ပါ။
- ၎င်းတို့၏ structural dynamics များသည် dynamic ဖြစ်သောကြောင့် ဂရပ်များတွင် model တစ်ခုကို လေ့ကျင့်ရန် ပို၍ခက်ခဲပါသည်။
- ဤကွန်ရက်များ၏ မြင့်မားသော တွက်ချက်မှုကုန်ကျစရိတ်များကြောင့် ထုတ်လုပ်မှုအတွက် မော်ဒယ်ကို ချဲ့ထွင်ခြင်းသည် စိန်ခေါ်မှုများကို ဖြစ်ပေါ်စေပါသည်။ သင့်ဂရပ်ဖစ်ဖွဲ့စည်းပုံသည် ကြီးမားပြီး ရှုပ်ထွေးပါက ထုတ်လုပ်မှုအတွက် GNN များကို ချဲ့ထွင်ရန် စိန်ခေါ်မှုဖြစ်ပါမည်။
ကောက်ချက်
လွန်ခဲ့သည့်နှစ်အနည်းငယ်အတွင်း၊ GNN များသည် ဂရပ်ဒိုမိန်းရှိ စက်သင်ယူမှုပြဿနာများအတွက် အစွမ်းထက်ပြီး ထိရောက်သောကိရိယာများအဖြစ် တီထွင်ခဲ့သည်။ ဤဆောင်းပါးတွင် ဂရပ်အာရုံကြောကွန်ရက်များ၏ အခြေခံအကျုံးဝင်မှုကို ဖော်ပြထားပါသည်။
ထို့နောက် မော်ဒယ်ကို လေ့ကျင့်ရန်နှင့် စမ်းသပ်ရန်အတွက် အသုံးပြုမည့် ဒေတာအတွဲကို သင်စတင်ဖန်တီးနိုင်သည်။ ၎င်းလုပ်ဆောင်ပုံနှင့် ၎င်းသည် မည်သို့လုပ်ဆောင်နိုင်သည်ကို နားလည်ရန်၊ သင်သည် များစွာဝေးကွာသွားပြီး မတူညီသောဒေတာအတွဲကို အသုံးပြု၍ ၎င်းကိုလေ့ကျင့်နိုင်သည်။
မင်္ဂလာ Coding!
တစ်ဦးစာပြန်ရန် Leave