ဘောင်းဘီခြေထောက်ဖြတ်တဲ့ဒုက္ခ

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

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

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

ညှော်တယ်အော်တယ်

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

နောက်တစ်ယောက်က စိတ်ရှည်လက်ရှည် ရှင်းပြပါတယ် ကန်တင်းနားမှာ ရှို့မလို့ပြင်ဆင်ထားတဲ့နေရာ ခေါ်သွားပြီးတော့ စက္ကူတွေကိုပြပါတယ် ဒါကစက္ကူမဟုတ်ဘူး ပိုက်ဆံတဲ့ အဲဒါရှို့မှ တစ္ဆေတွေက တမလွန်ကနေ ပိုက်ဆံရတာတဲ့ ဒါမှသူတို့ကပျော်တာတဲ့ တစ်နှစ်မှာတစ်လ သေမင်းတံခါးကပွင့်တော့ ဒီလမှဒို့ကပိုက်ဆံလွဲရ​တာတဲ့။ အဲဒါနဲ့ သူတို့ကသုံးစရာနေရာ ရှိလိုလားမေးကြည်တော့ ငါလည်းမသိဘူးလေ မရောက်ဖူးသေးဘူးတဲ့။ ဒါနဲ့အဲဒါတွေက ဝယ်တာဘယ်လောက် ပေးရသလဲမေးကြည့်​တယ် တစ်စုံကို ၂၀ လောက်တော့ရှိတယ်​ပြောတယ် အခုပုံထားတဲ့အပုံလောက်ဆို ၁၀၀ လောက်တန်မယ်ထင်တယ်တဲ့။ ဒါနဲ့အဲဒါဆိုရင် အဲဒါတွေ ဘာလို့ရှို့နေသလဲ ၁၀၀ တန်တစ်ရွက်လောက် ရှို့လိုက်ရင်အဆင်​ပြေတယ် အဲဒါဆိုရင် တစ္ဆေတွေလည်း ဒေါ်လာအစစ်ရလို့ အတော်ကိုပျော်မယ် အခုတော့အတုတွေ မီးရှို့တော့ဒို့ကညှော်တာပေါ့လို့ ​အကြံပေးမိတယ်။ သူကလည်းကိုယ့်ကို ပြန်ပြီးတော့ အချွန်နဲ့မပါတယ် အကြံဉာဏ်ကောင်းတယ်တဲ့ ရှို့နေတဲ့အန်ကယ်ကြီးကို မင်းသွားပြောပါလားတဲ့။

အိမ်ြပန်ရင် ကုလားတွေကလည်း ဥပုသ်လဖြစ်လေတော့ တိုက်အောက်မှာ ယိုင်ပတ်ပြီးတော့ ဝတ်ပြုစရာနေရာတွေ လုပ်ထားပါတယ် ပုံမှန်ကပတ်ဝန်းကျင် အနှောင့်အယှက် ဖြစ်မှာစိုးလို့ ဗမာပြည်မှာလို လော်စပီကာနဲ့ အော်လို့မရပါဘူး။ ဗမာပြည်တော့ ဗလီကနာရီခြားနဲ့ အော်တာပါပဲ အတော်ဆူတာပဲ မထူးပါဘူး ဘုရားပေါ်ကလည်း သူများတွေ အိမ်မှန်းမသိ မအိပ်မှန်းမသိ မနက်စောကြီး တရားတိတ်ခွေ လော်စပီကာနဲ့ဖွင့်တာလည်း အင်မတန်ဆူတာပဲ ဒီမှာပဲအေးတယ် ဘယ်သူမှမဆူနဲ့ Church လည်း အကြောင်းထွေထူးမရှိရင် ခေါင်းလောင်းထိုးလို့မရ ကုလားလည်း ပွဲမရှိမအော်ရ ဘုန်းကြီးကျောင်းလည်း တရားတိတ်ခွေကို လော်စပီကာနဲ့မဖွင့်ရပဲ။ ဘာပဲပြောပြော ဆူဆူညံညံမရှိတာ အတော်စိတ်ချမ်းသာစရာ ကောင်းတယ်။ ဒါပေမယ့်ဒီလတော့ ကုလားလည်း ဥပုသ်ထွက်ချိန် အော်လို့ရပါတယ် အဲဒါကို ဓာတ်လှေခါးထဲအတူတူ ပါလာတဲ့ တရုတ်မကြီးက စကားစပ်မိလို၌ ဆူတယ်တဲ့ အဲဒါနဲ့ သူ့လက်ထဲက တမလွန်ကို လွှဲမယ့်ငွေအထပ်လိုက်ကို လက်ညှိုးထိုးပြီး ညှော်တယ်လို့​ပြောခဲ့လိုက်တယ်။

ဘာတဲ့ သဝေထိုး ရယ်ရသကွာ

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

လတ်တလောအနေနဲ့ ဗမာစာတွေ Google မှာအလုပ်လုပ်နေပုံကို အကြမ်းပြောမယ်ဆိုရင် Preprocess ဘာမှမလုပ်နိုင်ဘူး Space နဲ့ Tokenize လုပ်ပြီး Index လုပ်ထားတယ် Sorting လည်း စာလုံးတွေရဲ့ Code အပေါ်မူတည်ပြီး Lexicographically ပဲစီထားတာပါပဲ။ ဒီတော့ ကိုယ့်ဝဘ်ဆိုက်မှာရေးထားတဲ့ Space ခြားထားတဲ့အပေါ် မူတည်ပြီးတော့ ရှာလို့ရမှာပါပဲ။ ဥပမာပြောရင် “မော်လမြိုင်” နဲ့ “မော်လမြိုင်သို့” ဆိုရင်မတူဘူး။ Search Engine ဆိုတာ ဂူဂဲတစ်ခုတည်းမဟုတ်ဘူး ကိုယ်ပိုင်လည်းလုပ်လို့ရတာပဲ ဗမာစာအတွက် လုပ်နိုင်တာတွေရှိပါတယ်။ ဗမာစာ Search Engine ဆိုတာ လူအမြင်ကပ်အောင်ပြောရရင် Lucene, Sphinx, Sciencenet, …. ဒါတွေကို ယူသုံးတတ်တာလား။ အဲဒါတွေက ခက်ခဲ့တဲ့အရာတွေမပါပါဘူး ဖတ်ကြည့်သုံးတတ်ပါတယ်။ အရေးကြီးတာက ဗမာစာအတွက် ဘယ်နေရာက Improve လုပ်ဖို့လိုအပ်သလဲ။ လက်ရှိအနေနဲ့က စကားလုံး ဘယ်လိုဖြတ်မလဲက အရေးအကြီးဆုံး ဖြစ်နေတယ်။ ဖြစ်နိုင်တဲ့နည်းလမ်း ၂ ခုရှိမယ်။

ပထမတစ်ခုက ဗမာစာလုံးတွေဟာ Syllabic ဖြစ်နေလို့ Consonant ကနေအစပြုပြီးတော့ Syllabic တွေကုန်သွားရင် တစ်လုံးအဖြစ် သတ်မှတ်တာက အခြေခံအကျဆုံးနည်းစနစ်ပဲ။ ဒီတော့ ဗမာစကားလုံးမှာက ပဌ်ဆင့်နဲ့ အသတ်ဆုံးတာတွေမှာက နောက်ထပ် Consonant တစ်ခုအပိုပါတယ် အဲဒါကိုပါတစ်ခုတည်းအဖြစ် စဥ်းစားလိုက်ရင် Syllabic နဲ့ဖြတ်တာလွယ်ပါတယ်။ ဒီနေရာမှာ ဇော်ဂျီနဲ့လား ယူနီကုဒ်နဲ့လား ဒါကအရေးပါတယ်။ ဒါလည်း ခက်ခက်ခဲခဲမဟုတ်သေးပါဘူး ယူနီကုဒ်ဆိုရင် Consonant တစ်ခုအစကနေ Syllabic တွေအဆုံးသတ်တဲ့အထိ သို့မဟုတ် နောက်ထပ် Consonant မှာအသတ် (သို့) ပဌ်ဆင့် Syllabic အထိဆို တစ်လုံးပေါ့။ ဇော်ဂျီနဲ့ဆို Consonant တစ်ခုတည်းမဟုတ်ပဲ သဝေထိုး (သို့) ရရစ်လိုလည်း အစပြုနိုင်သည်ပေါ့။ Index လုပ်ရင် Bigram နဲ့လုပ်ပေါ့ ပြောမယ်ဆိုရင် Bidex ပေါ့။ ဥပမာ- မော်လမြိုင် လို့ရှာမယ်ဆိုရင် “မော်လ” AND “လမြိုင်” ဆိုပြီးတော့ Phrasal Search နဲ့ရှာလို့ရတယ်။ Precision မြင့်တဲ့ Search Engine တစ်ခုဖြစ်လာနိုင်တယ်။ ဒါတွေက Technical ဖြစ်လာလို့ အသေးစိတ်မရေးတော့ဘူး။

ဒုတိယတစ်ခုကတော့ ခက်ဖို့များတယ် ဗမာစာကြောင်းတစ်ခုကို Part of Speech နဲဲ့ဖြတ်ပေးမယ့် Parser တစ်ခုလိုမယ်။ ထွက်လာမယ့် စကားလုံးတွေကိုပဲ Index လုပ်ယူလို့ရတယ်။ ဒီနေရာမှာ Preprocessing လုပ်မှာလားဆိုတာကလည်း လိုအပ်ချက်အပေါ်မူတည်တယ်။ ကိုသာသာနဲ့ တစ်ခါက ဗမာစကားလုံးတွေစုပြီးတော့ Stemming လုပ်ကြည့်ဖူးတယ်။ မဆိုးပါဘူး ရလဒ်တွေက စကားလုံးကို မူရင်းပုံစံရောက်အောင် ၉၀% လောက်ပြန်ပို့လို့ရတယ်။ တစ်ခုပဲချို့ယွင်းချက်ရှိတယ် ဗမာစာ Parser မရှိလို့ Space နဲ့ဖြတ်ထားရတယ်။ ဒီနေရာမှာ ဗမာစာ Parser တစ်ခု လုပ်ကြမယ်ဆိုပါစို့။ သတ်မှတ်ချက်အတိုင်း အစဥ်အလိုက်သိမ်းတဲ့ ယူနီကုဒ်က လုပ်လို့လွယ်မှာငြင်းစရာမလိုဘူး။ ဇော်ဂျီကတော့ ဗြောက်သောက်ရိုက်တဲ့ အက္ခရာစဥ်နဲ့ဆို သေလုအောင်လုပ်ရမယ် ဘာလို့လဲဆိုတော့ အမှန်လို့ သတ်မှတ်ထားတာမရှိတော့ ဖြစ်နိုင်သမျကို လိုက်ပြင်ကြည့်ပြီးသုံးရမလိုဖြစ်မယ်။ ပြောမယ်ဆိုရင် မူရင်းကိုပြင်တယ်ဆိုတာ တန်ဖိုးကျပါတယ် ဖြစ်နိုင်သမျပြင်ကြည့်ပြီး စဥ်းစားဖို့ဆိုတာ အဓိပ္ပာယ်မရှိဘူး။ ဒီနည်းကတော့ Bidex, Tridex လိုမသုံးပဲ Term Index နဲ့ပဲ Search Engine လုပ်လို့ရမယ်။

လတ်တလော နည်းပညာအခြေအနေအရ ပထမနည်းက အတိကျဆုံး ဗမာစာ Search Engine ဖြစ်လာနိုင်မယ်။ ဒုတိယနည်းမှာတော့ Parser တစ်ခုလိုအပ်နေလို့ သိပ်မလွယ်လှသေးဘူး Research လိုအပ်နေတယ်။ ဒီနေရာမှာ သုံးတ
ဲ့လူတွေကို အနည်းငယ်ယုံကြည်လိုက်ပြီး Space and Punctuation တွေနဲ့ဖြတ်ပြီး ယာယီအစားထိုးထားနိုင်တယ်။ လက်ရှိသုံးနေတဲ့ ဂူဂဲက အဲဒီ့နည်းစနစ်လို့ ပြောလို့ရမယ် သူ့အနေနဲ့ Preprocess မလုပ်နိုင်ဘူး နောက်ပြီးတော့ စာလုံးဖြတ်တာမမှန်နိုင်ဘူးဖြစ်နေတယ်။ အဲဒါတွေ ထပ်ထည့်နိုင်ရင် လက်ရှိထက်ကောင်းတဲ့ အဖြေတွေထွက်မှာ သေချာပါတယ်။ ဟုတ်ပြီ ယူနီကုဒ်နဲ့ဇော်ဂျီစကားလုံးတွေ Index တစ်ခုထဲမှာ သိမ်းလို့ရသလားဆိုတာ စဥ်းစားစရာရှိတယ်။ သိမ်းလို့တော့ရတယ်လို့ ပြောလို့ရပါတယ် ပထမနည်းမှာကတော့ Syllabic ကိုဦးစားပေးလို့ ရှာတဲ့လူကတော့ သူဘာနဲ့ရိုက်တယ်ဆိုတာ ပြောဖို့တော့လိုလိမ့်မယ် အဲဒါဆိုရင် Query ကိုသက်ဆိုင်ရာနဲ့ Syllabic ဖြတ်လိုက်ဖို့လိုမယ်။ ဒုတိယနည်းကတော့ လက်ရှိအနေထားနဲ့ ဘာနဲ့သုံးတယ်ဆိုတာ မလိုအပ်သေးဘူး ဒါ့ကြောင့် ဂူဂဲမှာဘာနဲ့ရှာရှာ ရှာလို့ရနေတာပေါ့။ ဒါပေမယ့် Parser တစ်ခုသုံးလိုက်ရင်တော့ သူလည်းဘာသုံးတယ်ဆိုတာ သိဖို့လိုအပ်ပါတယ်။

အဲဒါကို တစ်ခါကကြားဖူးတယ် ယူနီကုတ်များ စည်းရုံးရေးဆင်းနေတုံးက ဂူဂဲကသုံးတဲ့ Database ကများ ဇော်ဂျီကို Support လုပ်လို့မရတော့ရင် အားလုံးရှာလို့မရတော့ဘူးဆိုပဲ။ ဂူဂဲက Index ကို Database သုံးတယ်လို့ ဘယ်သူကများပြောလိုက်ပါလိမ့်။ အခုလည်းလာပြန်ပြီနောက်တစ်ဖွဲ့ ဇော်ဂျီမှာ သဝေထိုးအရှေ့ထားတာ Search Engine နဲ့ဆိုင်လို့ဆိုပဲ ငါပဲဥာဏ်မမှီတာဖြစ်မယ် အပေါ်မှာပြောခဲ့တာတွေနဲ့ ဆက်စပ်ကြည့်တယ် ဘယ်လိုသက်ဆိုင်မှန်း စဥ်းစားလို့မရဘူး။ ဇော်ဂျီကို စလုပ်ကာစအခြေအနေက Microsoft Keyboard Layout Creator မှာ Input အတွက် Keystroke Order ကို Swap လုပ်မပေးနိုင်ဘူး နောက်ပြီးတော့ Shaping Engine မရှိဘူးဒါ့ကြောင့် သဝေထိုးနဲ့ ရရစ်တွေက အရှေ့မှာရောက်နေတယ် အဲဒီလိုပဲငါနားလည်ထားတာ။ အေးလေ ငါသိတာမှားနေတာပဲ ဖြစ်မယ်ထင်ပါတယ်။ ဘယ်သူဖြစ်ဖြစ် နောက်ဆုံး Search Engine အကြောင်းပြတာ ထုံးစံဖြစ်လာသလား။

ပျက်နေတာကို ပြန်မပြင်ဖြစ်တာက နားလည်လို့ရပါတယ် အခြေအနေအရပေါ့ အခုအချိန်မှာသုံးနေတဲ့ မှားနေတာတွေက အများကြီးဖြစ်နေပြီမဟုတ်လား ပြင်ဖို့မလွယ်ဘူးဆိုတာ လက်ခံပါတယ်။ လတ်တစ်လော လိုအပ်ချက်တစ်ခုအရ မှန်နေပြီးသားအရာတစ်ခုကို ငါ့လိုလိုက်မှားစေမယ်ဆိုရင်တော့ အဲဒါကိုကန့်ကွက်ရမယ်။ သိမ်းချင်သလို သိမ်းခွင့်လို့အော်မလား အဲဒါဆိုလည်း ဘာလို့အပင်ပန်းခံနေကြလဲ ဟိုးအရင်က ASCII Fonts တွေလည်း သုံးရနေသားပဲ။ ဗမာစာနဲ့ ရှမ်းစာမှာ ဘုံသုံးတဲ့ အက္ခရာတွေ ရှိနေတာငါလည်းသိတယ် ကိုယ်ကိစ္စနဲ့ကိုယ် ဘယ်နားမှာ သဝေထိုးထားထား အစကတည်းက စံကိုလိုက်နာတဲ့ ရှမ်းစာက သဝေထိုးတော့ ရှေ့ကိုပို့စရာ အကြောင်းမရှိပါဘူးလေ။ Search Engine နဲ့သဝေထိုး ဂူဂဲရဲ့ Database ဟေးဟေးဟေး ကြားဖူးသမျ ဟာသတွေထဲမှာ ဒီဟာသတွေအရယ်ရဆုံးပဲ။ ဘယ်ဘက်အဖွဲ့ကမှမနေဘူး ဒါပေမယ့် ဘယ်သူလိမ်တာမှမခံဘူး လူနားမလည်ဘူးဆိုပြီး အလုံးကြီးကြီးပြောပြီး ထင်ယောင်ထင်မှားပြောတာကို အင်မတန်သောက်မြင်ကပ်တယ်။