Data Lighthouse

Data Lighthouse

Share

We, Data Lighthouse, is intended to support data enthusiastic youths in Myanmar

22/03/2026

အခုခေတ်မှာ AI ဆိုတာ အရမ်းခေတ်စားလာပြီး
LLM (Large Language Model) တွေ၊ API တွေ၊
GPT Wrapper တွေဆိုတာလည်း
တစ်နေ့တစ်ခြား ပိုများလာပါတယ်။

ဒီနေ့ခေတ်မှာ AI Tool တွေကို အသုံးပြုနိုင်တာက အရေးကြီးပေမယ့် အဲဒီ Tool တွေကို
ဘယ်လိုတည်ဆောက်ထားလဲ (How)နဲ့
ဘာကြောင့် ဒီလိုအလုပ်လုပ်နေတာလဲ (Why) ဆိုတာကို
နားလည်နိုင်တာက ပိုပြီး အရေးကြီးလာပါတယ်။

ကျွန်တော်အနေနဲ့တော့ Tool ကို သုံးတတ်ရုံနဲ့
မတင်းတိမ်ဘဲ အဲဒီ Tool တွေရဲ့ အောက်ခံမှာရှိတဲ့
Model တွေ Architecture တွေ
Concept တွေကို Deep Dive လုပ်ပြီး
လေ့လာမိပါတယ်။

ဒါကြောင့် AI ကို စိတ်ဝင်စားပြီး “အသုံးပြုသူ” ကနေ
“တည်ဆောက်သူ” အဖြစ် ပြောင်းချင်တဲ့သူတွေ
အတွက် AI နဲ့ပတ်သက်တဲ့ Knowledge Sharing တွေကို
Deep Dive အနေနဲ့ ဆက်လက်မျှဝေပေးသွားပါမယ်။

ဆက်လက်စောင့်မျှော်ပေးကြပါဦး 🙏

22/03/2026

ကျွန်တော် အခုလက်ရှိ Chip Huyen ရဲ့ AI Engineering စာအုပ်
ဖတ်ဖြစ်ရင်း အဲဒီထဲက Prompt Engineering Chapter နဲ့
ပတ်သက်ပြီးမျှဝေပေးချင်ပါတယ်။

အမှန်တိုင်းပြောရရင် အဲဒီအခန်းလေးကို ဖတ်ပြီးသွားတဲ့အချိန်မှာ
"Prompt Engineering" နဲ့ ပတ်သက်ပြီး ကျွန်တော့်ရဲ့ အမြင်တွေ
တော်တော်လေး ပြောင်းလဲသွားတယ်။
အရင်တုန်းကဆိုရင် Prompt Engineering ဆိုတာ
ကျွန်တော်တို့ ကိုယ်လိုချင်တဲ့ ပုံစံမျိုး (Format) နဲ့
အဖြေရအောင် Prompt တွေ ရေးတာလောက်ပဲလို့ ထင်ခဲ့မိတာ။
ဒါပေမယ့် တကယ်တမ်းကျတော့ သူ့မှာလည်း စိတ်ဝင်စားစရာတွေနဲ့
Challenges တွေအများကြီး ရှိနေသေးတယ်။

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

LLM Application ရဲ့ အလွှာ ၄ ခု (Four Layers of LLM)
ပထမဆုံးအနေနဲ့ LLM (Large Language Model) အသုံးပြုမှုမှာ
ပါဝင်တဲ့ အလွှာ ၄ ခု အကြောင်းလေး နည်းနည်း ရှင်းပြချင်ပါတယ်။
ကျွန်တော် အပါအဝင် User အများစုက Foundation model တွေကို
စသုံးတဲ့အခါ Prompt ကနေပဲ စကြတာများတယ်။
LLM Application တွေမှာ အဓိက ချဉ်းကပ်ပုံ (၄) မျိုးရှိပြီး၊
ဒါက အချက် (၂) ချက်ပေါ် မူတည်ပါတယ်။
- External Knowledge (ပြင်ပ ဗဟုသုတ) ဘယ်လောက် လိုအပ်လဲ။
- Adaptation (Model ကို ကိုယ့်လုပ်ငန်းစဉ်နဲ့ကိုက်အောင် ဘယ်လောက်အထိ ပြုပြင်ပြောင်းလဲဖို့) လိုအပ်လဲ။

ဒီနှစ်ခုလုံးကို အရမ်းကြီး လိုအပ်မနေဘူးဆိုရင်တော့
ကျွန်တော်တို့ ရိုးရိုး Basic Prompt Engineering လောက်နဲ့ပဲ
အဆင်ပြေပါတယ်။ ဒါပေမယ့် ကျွန်တော်တို့ရဲ့ Task တွေက
ပိုရှုပ်ထွေးလာပြီ၊ ပြင်ပက အချက်အလက် အမှန်တွေ လိုအပ်လာပြီ၊
ဒါမှမဟုတ် Model ကို သီးသန့် အပြုအမူတွေ သင်ပေးဖို့
လိုလာပြီဆိုရင်တော့ RAG (Retrieval-Augmented Generation),
Fine-tuning ဒါမှမဟုတ် အဲဒီနှစ်ခုကို ပေါင်းထားတဲ့ Hybrid တွေဆီကို
ကူးပြောင်းရတော့မှာပါ။ Prompting ဆိုတာ ပိုမိုကြီးမားကျယ်ပြန့်တဲ့
AI Ecosystem ကြီးတစ်ခုရဲ့ ပထမဆုံး ခြေလှမ်းလေးတစ်ခုသာ
ဖြစ်တယ်ဆိုတာပါပဲ။

စာအုပ်ထဲမှာ ပြောထားတဲ့အတိုင်းဆိုရင် Prompt တစ်ခုမှာ အဓိက အပိုင်း (၃) ပိုင်း ပါဝင်ပါတယ် -
- Task Description (လုပ်ဆောင်ရမယ့် အလုပ်ရဲ့ အသေးစိတ် ဖော်ပြချက်)
- Example (ဒီအလုပ်ကို ဘယ်လို ပြီးမြောက်အောင် လုပ်ရမလဲ ဆိုတဲ့ ဥပမာ) - Actual Task (တကယ် လုပ်ရမယ့် အလုပ်)
နောက်ထပ် ကျွန်တော် လေ့လာဖြစ်ခဲ့တာကတော့
In-context learning အကြောင်းပါ။
အရင်ကဆိုရင် Examples (Shots လို့လည်း ခေါ်ကြတယ်) တွေ
ပေးတာက Bias ဖြစ်စေနိုင်တယ်လို့ ထင်ခဲ့တာ။
ဒါပေမယ့် တကယ်တမ်းကျတော့ အဲဒါက Model ကို
အလုပ်တွေ ပိုပြီး ကိုင်တွယ်ဖြေရှင်းနိုင်အောင် ကူညီပေးနိုင်ပါတယ်။

ကျွန်တော်ရဲ့ Workflow အများစုမှာ System Prompt ရော
User Prompt တွေပါ ကိုင်တွယ်ဖြေရှင်းနေရတော့
ဒီနှစ်ခု ဘယ်လို အလုပ်လုပ်လဲဆိုတာကို သိချင်နေခဲ့တာ။
ကျွန်တော် သိလိုက်ရတာကတော့ အဲဒီ Prompt နှစ်ခုလုံးကို
အဆုံးမှာ Prompt တစ်ခုတည်းအနေနဲ့ ပေါင်းလိုက်ပြီး
အတူတူပဲ Process လုပ်သွားတာပါ။
"Task descriptions" တွေကို System Prompts အနေနဲ့
သတ်မှတ်နိုင်ပြီး၊ "Actual tasks" တွေကိုတော့
User Prompts တွေအနေနဲ့ မှတ်ယူနိုင်တယ်လို့
စာအုပ်ထဲမှာ ဆိုထားပါတယ်။

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

ဒီစာအုပ်ထဲမှာ လက်တွေ့အသုံးချနိုင်တဲ့ Best practices တွေကိုလည်း အများကြီး ဖော်ပြပေးထားပါတယ်။
- Clear Instructions: ညွှန်ကြားချက်တွေကို
မရှင်းမလင်းဖြစ်တာမျိုးမရှိဘဲ တိတိကျကျ ရေးဖို့နဲ့
ဥပမာတွေ ပေးဖို့ လိုပါတယ်။
- Persona: Model အနေနဲ့ Task ကို ရှုထောင့်ပေါင်းစုံကနေ
ပိုနားလည်နိုင်အောင် Persona
(ဥပမာ - "မင်းက ကျွမ်းကျင်တဲ့ Data Analyst တစ်ယောက်ပါ" စသဖြင့်)
တစ်ခု သတ်မှတ်ပေးသင့်ပါတယ်။
- Output Format: JSON ဒါမှမဟုတ် Markdown စသဖြင့်
ကိုယ်လိုချင်တဲ့ Output format ကို တိတိကျကျ သတ်မှတ်ပေးပါ။
- Sufficient Context: Hallucination (မရှိတဲ့ အချက်အလက်တွေကို ယောင်ယမ်းဖြေဆိုခြင်း) တွေကို ရှောင်ရှားနိုင်ဖို့ Model ကို လုံလောက်တဲ့ Context (နောက်ခံ အချက်အလက်) တွေ ပေးဖို့က အရမ်း အရေးကြီးပါတယ်။
- Task Breakdown: ရှုပ်ထွေးတဲ့ Task ကြီးတွေကို
Subtasks လေးတွေအဖြစ် ခွဲထုတ်လိုက်တာက
Queries အရေအတွက်တော့ များသွားနိုင်ပေမယ့်
Performance ကိုတော့ သိသိသာသာ တက်လာစေပါတယ်။
ဒါ့အပြင် Monitoring၊ Debugging၊ Parallelism နဲ့ Effort တွေမှာပါ
ပိုပြီး အကျိုးကျေးဇူးတွေ ရနိုင်ပါတယ်။

ကျွန်တော်တို့အနေနဲ့ Prompt တွေကို အကြိမ်ကြိမ် စမ်းသပ်မှုတွေ
လုပ်ပြီး Iterative process (အထပ်ထပ် အခါခါ ပြင်ဆင်လေ့ကျင့်ခြင်း)
တစ်ခုလိုမျိုး လုပ်ဆောင်သင့်ပါတယ်။
ဒီအဆင့်မှာဆိုရင် Prompt Engineering Tools တချို့ကို
စမ်းသုံးကြည့်သင့်ပြီး ကျွန်တော်တို့ရဲ့ Prompt တွေကို
Version ခွဲပြီး မှတ်သား (Versioning) ထားသင့်ပါတယ်။
Prompt တွေကို စနစ်တကျ စီစဉ်ထားခြင်းကနေ
အကျိုးကျေးဇူးတွေ ရနိုင်ပါတယ်။ ဥပမာ - Prompt တွေနဲ့ Code တွေကို
သီးသန့်စီ ခွဲထုတ်ထားခြင်းအားဖြင့် ဖတ်ရလွယ်ကူလာစေပြီး
(Readability)၊ Prompt တွေကိုလည်း အကြိမ်ကြိမ် ပြန်လည်
အသုံးပြုနိုင်ပါတယ်။

ကျွန်တော်တို့ရဲ့ System ကို ဘယ်လို ကာကွယ်ရမလဲ ဆိုတာကိုလည်း
မဖြစ်မနေ စဉ်းစားရမှာဖြစ်ပြီး အဓိက Attack (တိုက်ခိုက်မှု) ၃ မျိုးကို
သတိပြုထားသင့်ပါတယ်။
- Prompt Extraction (ရေးထားတဲ့ Prompt တွေကို ခိုးယူခြင်း)
- Jailbreaking & Prompt Injection (Model ရဲ့ စည်းမျဉ်းတွေကို ဖောက်ဖျက်စေခြင်း၊ ညွှန်ကြားချက်အမှားများ ထည့်သွင်းခြင်း)
- Information Extraction (အတွင်းရေး အချက်အလက်များကို ခိုးယူခြင်း)
ဒီလို တိုက်ခိုက်မှုတွေကို ကာကွယ်ဖို့အတွက် Model Level, Prompt Level နဲ့ System Level ဆိုပြီး အဆင့် ၃ ဆင့်နဲ့ လုပ်ဆောင်နိုင်ပါတယ်။ အဓိကကတော့ ကိုယ့်ရဲ့ System က ဘယ်လို တိုက်ခိုက်မှုမျိုးတွေကို ခံရနိုင်ခြေရှိလဲ ဆိုတာကို ကြိုတင် သိထားဖို့ လိုအပ်ပါတယ်။

နိဂုံးချုပ်အနေနဲ့ ပြောရရင် Prompt Engineering ဆိုတာ
စာကြောင်းလေးတွေ ရေးရုံသက်သက် မဟုတ်ပါဘူး။
ကိုယ်လိုချင်တဲ့ ရလဒ်ကို အကောင်းဆုံးနဲ့ အထိရောက်ဆုံး နည်းလမ်းတွေနဲ့
ထွက်လာအောင် ညွှန်ကြားချက်တွေကို ဖန်တီးယူရတဲ့
အနုပညာ တစ်ခုလို့တောင် ခံစားရပါတယ်။
ဒါ့အပြင် အနာဂတ်မှာ ပြန်သုံးဖို့နဲ့ အကဲဖြတ်ဖို့ (Evaluate and Reuse) တွေကိုလည်း
ထည့်သွင်းစဉ်းစားရမှာပါ။ ဒီအပြင် ကျွန်တော်တို့ရဲ့ System ကို
ဘယ်လို တိုက်ခိုက်မှုတွေ လာနိုင်လဲ ဆိုတာကို သတိပြုနေရမယ့်အပြင်
အဲဒီ တိုက်ခိုက်မှုတွေအတွက် ဘယ်လို ကြိုတင်ပြင်ဆင်ထားရမလဲ
ဆိုတာကိုပါ ထည့်သွင်း စဉ်းစားထားဖို့ လိုအပ်ပါတယ်။

19/03/2026

Embeddings & Vector Databases - 2 (How Embedding Models Actually Work)

ရှေ့က Article မှာ Embeddings & Vector Databases အကြောင်းကို
Introduction အနေနဲ့ ပြောပြပေးပြီးပြီဆိုတော့ ဒီ Post မှာ
Embedding Model တွေ ဘယ်လိုအလုပ်လုပ်လဲဆိုတဲ့
အကြောင်းကို ပိုပြီး ရှင်းပြပေးသွားပါမယ်။

ပထမဆုံး အနေနဲ့ ဒီ Embedding Model တွေ မပေါ်ခင်တုန်းက
Text တွေကို Machine တွေ နားလည်မယ့် Numerical Vectors တွေအဖြစ်
ဘယ်လိုပြောင်းလဲခဲ့တဲ့ နည်းလမ်းတွေကို အရင်သွားကြည့်ရအောင်ပါ

Bag of Words (BoW) ဆိုတာကတော့ Document တစ်ခုထဲမှာရှိတဲ့
စာလုံးတစ်လုံးချင်းစီ (Word) ရဲ့ အကြိမ်အရေအတွက်နဲ့
Represent လုပ်တာပဲ ဖြစ်ပါတယ်။
အဲဒီ Frequency ကို Count လုပ်ခြင်းအားဖြင့် Corpus ထဲမှာရှိတဲ့
Unique words တွေ ရရှိပါတယ်။

ဥပမာ အနေနဲ့ ကျွန်တော်တို့မှာ "AI is fast" နဲ့ "AI is smart" ဆိုတဲ့
စာကြောင်းနှစ်ကြောင်း ရှိတယ်ဆိုပါစို့။
BoW က စာလုံးတွေကို [AI, is, fast, smart] ဆိုပြီး စာရင်းလုပ်လိုက်ပါမယ်။

ပထမစာကြောင်းအတွက် Vector က [1, 1, 1, 0] ဖြစ်သွားပြီး၊
ဒုတိယစာကြောင်းအတွက်ကတော့ [1, 1, 0, 1] ဖြစ်သွားမှာပါ။

ဒါပေမဲ့ သူ့ရဲ့ Limitation ကတော့ သူက Word တွေအားလုံးဟာ
Independent ဖြစ်တယ်လို့ ယူဆပြီး
Grammar, Context နဲ့ Word Level တွေကို Ignore လုပ်ပါတယ်။
တစ်နည်းပြောရရင် စာလုံးတွေရဲ့ အစီအစဉ်ကို ထည့်မတွက်ဘဲ
အိတ်တစ်ခုထဲ စုထည့်ထားသလိုမျိုး ဖြစ်နေတာပါ။

နောက်တစ်ခုကတော့ TF-IDF လို့ခေါ်တဲ့
Term Frequency-Inverse Document Frequency ပါ။
Term Frequency ဆိုတာကတော့ ခုနက BoW နဲ့ အလားတူပဲ
Document တစ်ခုမှာ Word တစ်ခုချင်းစီဟာ
ဘယ်လောက်ကြိမ်ရေပါသလဲဆိုတာပါပဲ။
ဒါပေမဲ့ TF-IDF မှာကျတော့ Weight ပါ ပါလာပါတယ်။
IDF ကျတော့ Word တစ်ခုချင်းစီဟာ Corpus တစ်ခုလုံးမှာ
ဘယ်လောက် Rare ဖြစ်သလဲဆိုတာကို ပြောတာပါ။

ဥပမာ အနေနဲ့ "The", "Is", "And" တို့လို စာလုံးတွေက
Document တိုင်းမှာ ခဏခဏ ပါနေတတ်ပါတယ်။
TF-IDF က ဒီလိုစာလုံးတွေကို အရေးမကြီးဘူးလို့ သတ်မှတ်ပြီး
Weight လျှော့ချပစ်ပါတယ်။
တစ်ဖက်မှာတော့ "Deep Learning" ဒါမှမဟုတ် "Transformer" လိုမျိုး
Document အနည်းငယ်မှာပဲ ထူးထူးခြားခြား ပါတတ်တဲ့ စာလုံးတွေကိုကျတော့ Weight ပိုပေးပြီး
ဒါဟာ ဒီ Document ရဲ့ အဓိက Key ဖြစ်တယ်လို့ မှတ်ယူတာမျိုးပါ။

Word2Vec ဆိုတာကတော့ Neural Network ကို
အခြေခံထားတဲ့ အစောပိုင်း Word Embedding နည်းလမ်းတစ်ခုပါပဲ။
သူက စာလုံးတွေရဲ့ ဆက်စပ်မှုကို Vector Space ပေါ်မှာ
အကွာအဝေးနဲ့ တိုင်းတာနိုင်အောင် စတင်လုပ်ဆောင်ပေးခဲ့တာပါ။
ဒါပေမဲ့ ဒီနေရာမှာ ကျွန်တော်တို့ သိထားရမှာက Embedding တွေကို
Static နဲ့ Dynamic ဆိုပြီး နှစ်မျိုး ခွဲခြားနိုင်တာပါပဲ။

Static Embedding (ဥပမာ - Word2Vec, GloVe)
Static Embedding ဆိုတာကတော့ စာလုံးတစ်လုံးကို
Vector တစ်ခုတည်းအဖြစ်ပဲ ပုံသေ သတ်မှတ်ထားတာမျိုးပါ။
တစ်နည်းပြောရရင် စာလုံးတစ်လုံးဟာ ဘယ်စာကြောင်းထဲမှာပဲ ပါပါ၊
သူ့ရဲ့ Vector တန်ဖိုးက အမြဲတမ်း တူညီနေပါတယ်။
သူ့ရဲ့ အဓိက Limitation ကတော့ Context မရှိတာပါပဲ။
ဥပမာဆိုရရင် "I am eating an apple." (ပန်းသီး) နဲ့ "I just bought an apple iPhone." (Apple ကုမ္ပဏီ)
ဒီနေရာမှာ "Apple" ဆိုတဲ့ စာလုံးက အဓိပ္ပာယ် နှစ်မျိုး ဖြစ်နေပေမဲ့
Static Embedding မှာကျတော့ သူတို့ကို ခွဲခြားနိုင်စွမ်း မရှိပါဘူး။
Apple ဆိုတာနဲ့ Vector တစ်မျိုးတည်းကိုပဲ ထုတ်ပေးတာဖြစ်လို့
စာလုံးရဲ့ အဓိပ္ပာယ် အစစ်အမှန်ကို ယူရတာ ခက်ခဲစေပါတယ်။

Dynamic (Contextual) Embedding (ဥပမာ - BERT, RoBERTa)
ဒီနေရာမှာ Dynamic Embedding ကျတော့ Context ကိုပါ
နားလည်အောင် လုပ်ပေးနိုင်ပါတယ်။
သူက စာလုံးတစ်လုံးတည်းကိုပဲ ပတ်ဝန်းကျင်မှာရှိတဲ့
တခြားစာလုံးတွေနဲ့ နှိုင်းယှဉ်ပြီး မတူညီတဲ့ Vector တွေကို ထုတ်ပေးတာပါ။
ဒါကို Transformer Architecture ထဲက Attention Mechanism ကို
သုံးပြီး လုပ်ဆောင်တာ ဖြစ်ပါတယ်။
ခုနက "Apple" ဥပမာကိုပဲ ပြန်ကြည့်ရင် Dynamic Embedding (BERT လို Model မျိုး) က
“Eating" ဆိုတဲ့ စာလုံးပါရင် ဒါဟာ "အသီး" ဖြစ်တယ်လို့ သိပြီး Vector တစ်မျိုး ထုတ်ပေးပါတယ်။ "iPhone" ဆိုတဲ့ စာလုံးနဲ့ တွဲပါလာရင်တော့ ဒါဟာ "Company" ဖြစ်တယ်ဆိုတာကို သိပြီး နောက်ထပ် Vector တစ်မျိုး ပြောင်းလဲထုတ်ပေးတာမျိုးပါ။

ဒါကြောင့်မို့လို့ Dynamic Embedding တွေဟာ စာလုံးတစ်လုံးတည်းရဲ့ မတူညီတဲ့ အဓိပ္ပာယ် (Polysemy) တွေကို ပိုပြီး တိတိကျကျ ဖော်ပြနိုင်လာတာ ဖြစ်ပါတယ်။

ဒီနေရာမှာ Attention Mechanism ဆိုတာလေးကို နည်းနည်းလေးပိုပြီး ရှင်းပြပေးချင်ပါတယ်။
Attention ဆိုတာကတော့ အခုလက်ရှိခေတ်စားနေတဲ့ Large Language Model တွေရဲ့ အဓိက core ပဲဖြစ်ပါတယ်

ဒီ Attention Mechanism ကြောင့် Model တွေဟာ
Sentence တခုတည်းမှာရှိတဲ့ Word တခုချင်းစီဟာ
တခြားသော Word တွေနဲ့ ဘယ်လိုဆက်နွယ်နေလဲဆိုတဲ့
Information ကိုပေးပါတယ်။
တနည်းအားဖြင့် သူတို့ဟာ Context ကို
နားလည်တယ်လို့ပြောချင်တာပါ။
မြန်မာမှာ “လူတွေ ဆုံးပါးသွားတဲ့ အခါ သေသည်၊ ဆုံးသည်လို့သုံးပြီး
ဘုန်းကြီးတွေဆုံးပါးသွားတဲ့အခါကျ ပျံလွန်တော်မူသည်” ဆိုပြီး
သုံးနှုန်းကျသလိုပါပဲ။
သူတို့ဟာ Context အပေါ်မူတည်ပြီး Word တွေကို
Processing လုပ်နိုင်စွမ်းရှိပါတယ်။

Attention Mechanism ကိုမှ Self-Attention Mechanism နဲ့ Multi-Head Attention Mechanism ကို နည်းနည်းပိုရှင်းပြချင်ပါတယ်။

Self-Attention Mechanism
Transformer လို့ခေါ်တဲ့ Attention Mechanism based model တစ်ခုဟာ Word တစ်ခုချင်းစီကို Vector ၃ ခု ပေးပါတယ်။
သူတို့တွေကတော့ Q, K, V ပါ။
Query (Q): ဒီစာလုံးက ဘာကို ရှာနေတာလဲ?
Key (K): တခြားစာလုံးတွေမှာ ဘယ်လို Information တွေ ရှိသလဲ?
Value (V): ဒီစာလုံးမှာ ရှိနေတဲ့ တကယ့် အနှစ်သာရက ဘာလဲ?
ဥပမာအနေနဲ့ မြင်အောင်ပြောရမယ်ဆိုရင် စာအုပ်တစ်အုပ်ရဲ့ Page Number တွေဟာ Key ဖြစ်ပြီး အဲဒီ Page Number ထဲက Content ကတော့ Value ဖြစ်ပါတယ်။ Query ဆိုတာကတော့ ကျွန်တော်တို့ ရှာနေတဲ့ Information ပေါ့။

Self-Attention ဆိုတာကတော့ စာကြောင်းတစ်ကြောင်းထဲမှာရှိတဲ့
စာလုံးတစ်လုံးချင်းစီဟာ ကျန်တဲ့စာလုံးတွေနဲ့ ဘယ်လောက်အထိ
အဓိပ္ပာယ်သက်ရောက်မှု ရှိသလဲဆိုတာကို တွက်ချက်တာပါ။
ခုနက ပြောခဲ့တဲ့ Q, K, V ကို သုံးပြီး Machine က ဘယ်လိုတွက်လဲဆိုရင်
Machine က Q နဲ့ K ကို မြှောက်လိုက်တဲ့အခါ
(Dot Product) Attention Score ဆိုတာ ရလာပါတယ်။
အဲဒီ Score က "ဒီစာလုံးနှစ်လုံးဟာ တစ်လုံးနဲ့တစ်လုံး
ဘယ်လောက် အရေးကြီးလဲ" ဆိုတာကို ပြောပြတာပါ။
အဲဒီ Score အတိုင်း Value (V) ကို Weight ပေးပြီး
ပေါင်းလိုက်တဲ့အခါမှာတော့ Context ကို
နားလည်တဲ့ Vector တစ်ခု ထွက်လာတာ ဖြစ်ပါတယ်။

Multi-Head Attention Mechanism
ဒါဆိုရင် Multi-Head Attention ကရော ဘာလဲ?
အလွယ်ပြောရရင်တော့ Self-Attention တွေကို
အပြိုင် (Parallel) အများကြီး လုပ်ဆောင်တာပါပဲ။
ဘာဖြစ်လို့ အများကြီး လုပ်ဖို့ လိုတာလဲဆိုရင်
စာလုံးတစ်လုံးတည်းကိုပဲ မတူညီတဲ့ ရှုထောင့်တွေကနေ
နားလည်ချင်လို့ပါ။
ဥပမာ -
Head 1: က သဒ္ဒါ (Grammar) ဆက်စပ်မှုကို ကြည့်နေမယ်။
Head 2: က အဓိပ္ပာယ် (Meaning) ဆက်စပ်မှုကို ကြည့်နေမယ်။
Head 3: ကတော့ အချိန်ကာလ (Tense) ဆက်စပ်မှုကို ကြည့်နေမယ်။

"The animal didn't cross the street because it was too tired."
ဒီနေရာမှာ "it" ဆိုတာ "Animal" ကို ပြောတာလား၊ "Street" ကို ပြောတာလား?
Head တစ်ခု ကနေ ကြည့်ရင် "it" နဲ့ "Animal" ရဲ့ ဆက်စပ်မှုကို မိသွားမယ်။
နောက် Head တစ်ခု ကနေ ကြည့်ရင် "Tired" ဖြစ်နေတာဟာ
"Animal" ပဲ ဖြစ်နိုင်တယ်ဆိုတဲ့ အဓိပ္ပာယ်ကို မိသွားပါမယ်။

ဒီလိုမျိုး Head အများကြီးကနေ ရလာတဲ့ Information တွေကို
ပြန်ပေါင်းလိုက်တဲ့အခါမှာတော့ Model က
စာကြောင်းတစ်ကြောင်းလုံးရဲ့ အဓိပ္ပာယ်ကို
ရှုထောင့်ပေါင်းစုံကနေ ကျယ်ကျယ်ပြန့်ပြန့်
နားလည်သွားတာ ဖြစ်ပါတယ်။

ဒီလိုမျိုး Context ကို နားလည်သွားတဲ့ Vector တွေဟာ
Latent Space လို့ခေါ်တဲ့ အတိုင်းအဆမဲ့ ကိန်းဂဏန်း ကမ္ဘာထဲမှာ
သွားပြီး နေရာယူကြပါတယ်။
ကျွန်တော်တို့ ရှေ့မှာ ပြောခဲ့သလို Embedding ဆိုတာ
Text တွေကို နံပါတ်တွေအဖြစ် ပြောင်းလိုက်တာပါ။
ဒါပေမဲ့ အဲဒီ နံပါတ်တွေက တစ်လုံး၊ နှစ်လုံးတည်း မဟုတ်ပါဘူး။

ဥပမာအားဖြင့်:
768 dimensions (BERT base model တွေမှာ သုံးလေ့ရှိတယ်)
1536 dimensions (OpenAI ရဲ့ text-embedding-3-small မှာ သုံးလေ့ရှိတယ်)
ဒီ Dimensions ဆိုတာကို အလွယ်ပြောရရင်
စာလုံးတစ်လုံးရဲ့ "စရိုက်လက္ခဏာ" တွေလို့ မှတ်ယူလို့ ရပါတယ်။
စာလုံးတစ်လုံးမှာ dimension တွေ များလေလေ၊ သူ့ရဲ့ အဓိပ္ပာယ်ကို
ပိုပြီး အသေးစိတ် ဖော်ပြနိုင်လေလေပါပဲ။
ဒီ Latent Space ထဲမှာ:
အဓိပ္ပာယ်တူတဲ့အရာတွေ က Vector Space ထဲမှာ
တစ်ခုနဲ့တစ်ခု နီးကပ်စွာ ရှိနေကြပြီး၊
အဓိပ္ပာယ်မတူတဲ့အရာတွေ ကတော့
တစ်ခုနဲ့တစ်ခု ဝေးကွာနေမှာ ဖြစ်ပါတယ်။

ဒီနေရာမှာ "Bank" ဥပမာကိုပဲ Deep Dive ပြန်ကြည့်ရအောင်။
ကျွန်တော်တို့မှာ "Bank" ဆိုတဲ့ စာလုံး ရှိမယ်။
Dynamic Embedding Model ကနေ ဖြတ်လိုက်တဲ့အခါ:
၁။ အကယ်၍ Context က Finance (ငွေကြေး) ဖြစ်နေရင်
အဲဒီ "Bank" ရဲ့ Vector ဟာ Space ထဲမှာ
Money, Loan, Deposit စတဲ့ စာလုံးတွေ ရှိရာဘက်ကို
စုကပ် သွားပါတယ်။
၂။ အကယ်၍ Context က Nature (မြစ်ကမ်းပါး) ဖြစ်နေရင်
အဲဒီ "Bank" ရဲ့ Vector က Water, Shore, River စတဲ့ စာလုံးတွေ
ရှိရာဘက်ကို ပြောင်းပြီး စုကပ်သွားမှာပါ။
ဒါဟာ "Apple" (အသီး) နဲ့ "Apple" (Company) အတွက်လည်း အတူတူပါပဲ။

ဒါကြောင့်မို့လို့ Vector Database တွေမှာ Vector Similarity Search (ဥပမာ - Cosine Similarity) ကို သုံးပြီး ရှာလိုက်တဲ့အခါ စာသားချင်း မတူရင်တောင် အဓိပ္ပာယ်တူတာကို Model က ရှာပေးနိုင်တာ ဖြစ်ပါတယ်။

နိဂုံးချုပ်အနေနဲ့ ပြောရရင် Embedding Model တွေဟာ စာသားတွေကို နံပါတ်တွေအဖြစ် ပြောင်းပေးရုံတင် မဟုတ်ဘဲ၊ လူသားတွေရဲ့ ဘာသာစကားထဲက နက်ရှိုင်းလှတဲ့ Context တွေ၊ ဆက်စပ်မှုတွေကို Latent Space ထဲမှာ သင်္ချာနည်းအရ နေရာချပေးလိုက်တာပဲ ဖြစ်ပါတယ်။

ကျွန်တော်တို့ အပေါ်မှာ ပြောခဲ့တာတွေက Text Embedding တွေ အကြောင်းပါ။ ဒါပေမဲ့ အခုခေတ်မှာတော့ Multimodal Embedding တွေကြောင့် တခြား Data Type တွေကိုပါ Vector ပြောင်းပြီး Latent Space ထဲမှာ အတူတူ နေရာချလို့ ရလာပါပြီ။

Files & Documents: PDF တွေ၊ Word File တွေကို
စာမျက်နှာအလိုက် ဒါမှမဟုတ် အဓိပ္ပာယ်အလိုက် အပိုင်းပိုင်းဖြတ်
(Chunking) ပြီး Vector ပြောင်းလိုက်တာပါ။
ဒါမှသာ ကျွန်တော်တို့က "ဒီ File ထဲမှာ ဘယ်အကြောင်းအရာ ပါလဲ?"
ဆိုတာကို AI ကို မေးလို့ရမှာ ဖြစ်ပါတယ်။
Audio Embedding: အသံလှိုင်း (Sound waves) တွေကို
Numerical Features တွေအဖြစ် ပြောင်းလိုက်တာပါ။
ဒါကြောင့် Model တွေက စကားပြောသံတင်မကဘဲ
နောက်ခံဆူညံသံ ဒါမှမဟုတ် သီချင်းတစ်ပုဒ်ရဲ့ အမျိုးအစား (Genre) ကိုပါ
ခွဲခြားနိုင်လာတာ ဖြစ်ပါတယ်။
Video Embedding: ဗီဒီယိုဆိုတာ တကယ်တော့ Frames တွေ
အများကြီးကို အစီအစဉ်အလိုက် ပြထားတာပါ။
Model က Frame တစ်ခုချင်းစီရဲ့ အဓိပ္ပာယ်နဲ့
အဲဒီ Frame တွေကြားက ဆက်စပ်မှု (Movement) ကိုပါ
Vector ပြောင်းလိုက်ပါတယ်။
ဒါကြောင့် "ဗီဒီယိုထဲမှာ ခွေးလေး ပြေးနေတဲ့ အပိုင်းကို ရှာပေးပါ"
ဆိုတာမျိုးတွေ လုပ်လို့ရလာတာပါ။

အခုဆိုရင် Embedding Model တွေ
ဘယ်လို အလုပ်လုပ်လဲဆိုတာကို Traditional နည်းလမ်းတွေကနေ
အခုခေတ် Attention Mechanism တွေအထိ
နှံ့နှံ့စပ်စပ် သိသွားကြပြီလို့ မျှော်လင့်ပါတယ်။

ဒီ Article ကို အနှစ်ချုပ်ရမယ်ဆိုရင်:
BoW နဲ့ TF-IDF တို့လို ရိုးရာနည်းလမ်းတွေဟာ
စာလုံးအရေအတွက် (Frequency) ကိုပဲ ကြည့်နိုင်ပေမဲ့၊
Embedding Model တွေကတော့ စာလုံးတွေရဲ့ အဓိပ္ပာယ်နဲ့
ဆက်စပ်မှု (Context) ကိုပါ နားလည်လာကြပါတယ်။
Transformer Architecture ထဲက
Self-Attention နဲ့ Multi-Head Attention တို့ကြောင့်
စာလုံးတစ်လုံးတည်းကိုပဲ ရှုထောင့်ပေါင်းစုံကနေ ကြည့်ပြီး
ပိုမို တိကျတဲ့ Vector တွေ ထုတ်ပေးနိုင်တာ ဖြစ်ပါတယ်။
Embedding တွေဟာ မြင့်မားတဲ့ Dimension တွေရှိတဲ့
Latent Space ထဲမှာ နေရာယူကြပါတယ်။
အဓိပ္ပာယ်တူရင် နီးကပ်ပြီး၊ အဓိပ္ပာယ်ကွဲလွဲရင်
ဝေးကွာသွားတဲ့ သဘောတရားကို အသုံးပြုထားတာပါ။

အခုခေတ်မှာ Text တင်မကဘဲ Audio, Video နဲ့ Files တွေကိုပါ
Vector ပြောင်းလဲပြီး AI က Processing လုပ်နိုင်နေပြီ ဖြစ်ပါတယ်။
နောက်တစ်ပတ်မှာတော့ 'Vector Similarity: How AI Finds Meaningful Information' ဆိုတဲ့ ခေါင်းစဉ်နဲ့အတူ Vector တွေကြားက
အကွာအဝေးကို တိုင်းတာတဲ့ Cosine Similarity, Euclidean Distance, Manhattan Distance တို့အပြင်၊ အချက်အလက်တွေ
အများကြီးထဲကနေ မြန်မြန်ဆန်ဆန် ရှာပေးနိုင်တဲ့
ANN (Approximate Nearest Neighbor) အကြောင်းတွေကို
အသေးစိတ် ဆက်လက် ရှင်းပြပေးသွားပါဦးမယ်။

11/03/2026

Embeddings & Vector Databases - 1

ကျွန်တော်တို့ Web Application တွေ၊
သုံးနေကျ Application တွေ Software တွေမှာဖြစ်ဖြစ်
Search ဆိုတဲ့ အရာကတော့ ရှောင်လွှဲလို့ရတဲ့ဟာ မဟုတ်ပါဘူး။

အခုခေတ် AI တွေ ခေတ်မစားခင်တုန်းက ကျွန်တော်တို့ဟာ
Traditional Search ဖြစ်တဲ့ Keyword Search ကိုပဲ မှီခိုခဲ့ကြပါတယ်။

Keyword Search ဆိုတာကတော့ ရိုးရှင်းပါတယ် ။
E-Commerce App တခုမှာ ကိုယ်လိုချင်တဲ့
Product တခုကို ရိုက်ရှာလိုက်တယ်။
အကယ်၍ ကိုယ်ရှာလိုက်တဲ့ Keyword နဲ့
Database ထဲက Product Keyword နဲ့
ကိုက်တယ်ဆိုရင် ရှာတွေ့မယ်ပေါ့။

ဒါပေမယ့် Keyword Search မှာက Limitation ရှိပါတယ်။
ဥပမာ အနေနဲ့ ကျွန်တော်တို့က Car ဆိုပြီးရိုက်ရှာတယ်။
Database ထဲမှာကျ Vehicle ပဲရှိတယ်ဆိုပါစို့ ။
အဲဒီအခါကျ ဒီနှစ်ခုဟာ အဓိပ္ပာယ်ချင်းတူတယ်ဆိုရင်တောင်မှ
Result ကထွက်မလာတော့ပါဘူး။

ဘာလို့ဆို Keyword Search ဟာ Word အပေါ်မှာပဲ
အလုပ်လုပ်ပြီး သူက အဓိပ္ပာယ်ကို နားမလည်ပါဘူး။

ဒီလိုနဲ့ ကျွန်တော်တို့ဟာ Word တွေကို Machine တွေ
နားလည်မယ့် Number အဖြစ်ပြောင်းလဲပြီး ဖော်ပြခဲ့ကြပါတယ်။

ကွန်ပျူတာတွေဟာ စာသား (Raw Text) တွေကို
နားမလည်ပါဘူး။ သူတို့ နားလည်တာက
ကိန်းဂဏန်း (Number) တွေပဲ ဖြစ်ပါတယ်။
ဒါကြောင့် စကားလုံးတွေရဲ့ အဓိပ္ပာယ်ကို
Machine တွေ နားလည်အောင် Number Array တွေ၊
တနည်းအားဖြင့် Vector တွေအဖြစ်
ပြောင်းလဲပေးရပါတယ်။

ဥပမာပြရရင် -
cat → [0.21, -0.45, 0.90, ...]
dog → [0.19, -0.42, 0.88, ...]
car → [-0.81, 0.11, 0.35, ...]

ဒီနေရာမှာ သတိထားကြည့်ရင် 'cat' နဲ့ 'dog' ရဲ့
Number လေးတွေဟာ ခပ်ဆင်ဆင်တူနေပြီး၊
'car' ကတော့ သူတို့နဲ့ လုံးဝကွဲထွက်နေပါတယ်။
ဆိုလိုတာက အဓိပ္ပာယ်တူရင် Vector တန်ဖိုးတွေလည်း ဆင်တူပါတယ်။
ဒီလိုမျိုး Data တွေရဲ့ အဓိပ္ပာယ် (Meaning) ကို
ကွန်ပျူတာနားလည်အောင် ကိုယ်စားပြုဖော်ပြပေးတဲ့
Numerical Representation ကို Embedding လို့ ခေါ်ပါတယ်။

Embedding Vector တွေကို ရပြီဆိုရင် နောက်တစ်ဆင့်အနေနဲ့
Space ဆိုတဲ့ သဘောတရားကို သွားပါမယ်။
Vector တစ်ခုစီတိုင်းကို Coordinate System ပေါ်က
အမှတ် (Point) တစ်ခုအနေနဲ့ မြင်ကြည့်လို့ရပါတယ်။

ဥပမာ - [2, 3] ဆိုတဲ့ 2D Vector လေးဆိုရင် X-axis မှာ 2၊
Y-axis မှာ 3 ဆိုတဲ့ အမှတ်လေးတစ်ခု ဖြစ်သွားပါမယ်။

ဒါပေမယ့် တကယ့်လက်တွေ့ AI Model တွေမှာသုံးတဲ့
Embedding တွေက Dimension (၂) ခုတည်း မကပါဘူး။
Dimension ပေါင်း ရာနဲ့ထောင်နဲ့ချီပြီး ရှိပါတယ်။
ဥပမာ - 768-dimensional vector ဆိုပါစို့။
ကျွန်တော်တို့ လူသားတွေအနေနဲ့ 3D ထက်ကျော်လွန်တဲ့
Space ကို မျက်စိထဲမှာ Visualizeလုပ်နိုင်စွမ်း မရှိပေမယ့်၊
သင်္ချာသဘောတရားအရတော့ ဒါဟာ တည်ရှိနေပါတယ်။

ဒီလို Dimension တွေ အများကြီးနဲ့ ဖွဲ့စည်းထားတဲ့ နေရာကို
Latent Space လို့ခေါ်ပါတယ်။ "Latent" ဆိုတဲ့ စကားလုံးရဲ့
အဓိပ္ပာယ်က "Hidden"လို့ အဓိပ္ပာယ်ရပါတယ်။
ဒါကြောင့် Latent Space ဆိုတာ Data တွေရဲ့
နောက်ကွယ်က သဘောတရားတွေ၊ Feature တွေကို
သင်္ချာနည်းကျကျ ကိုယ်စားပြုဖော်ပြပေးထားတဲ့
Hidden Space တစ်ခုပဲ ဖြစ်ပါတယ်။
ဥပမာ - ကျွန်တော်တို့ လူတွေက 'dog', 'cat', 'car' လို့ မြင်ပေမယ့်၊
Model ကတော့ အဲဒီစကားလုံးတွေရဲ့ နောက်ကွယ်က
Hidden Feature တွေဖြစ်တဲ့ animalness, vehicle-ness, size, shape, behavior
စတာတွေကို လေ့လာမှတ်သားထားပြီး
Latent Space ထဲမှာ နေရာချပေးပါတယ်။

ဒီ Latent Space ရဲ့ အဓိက အားသာချက်ကတော့ ဆက်စပ်မှုရှိတဲ့၊
အဓိပ္ပာယ်တူတဲ့ Concept တွေဟာ ဒီ Space ထဲမှာ
အချင်းချင်း နီးနီးကပ်ကပ် စုဝေးနေကြတာပါပဲ။

ဥပမာ - 'dog' နဲ့ 'cat'၊ 'tiger' နဲ့ 'lion' တို့ဟာ
တိရိစ္ဆာန်ဖြစ်တဲ့ Feature တွေ တူတဲ့အတွက်
တစ်စုတစ်စည်းတည်း (Cluster) ဖြစ်နေပါလိမ့်မယ်။
အလားတူပဲ 'car', 'truck', 'bus' တို့ကလည်း
ယာဉ်တွေဖြစ်တဲ့အတွက် အခြားတစ်နေရာမှာ
သီးသန့် Cluster လေး သွားဖြစ်နေမှာပါ။
ဒါဟာ Latent Space ကနေပြီး Knowledge တွေကို
သူ့အလိုလို စနစ်တကျ Organize ပေးလိုက်တာပဲ ဖြစ်ပါတယ်။

Latent Space ထဲမှာ နောက်ထပ် စိတ်ဝင်စားစရာကောင်းတာက
စကားလုံးတွေကြားက ဆက်စပ်မှု (Relationships) တွေကိုပါ
Model က နားလည်သွားတာပါ။
ဥပမာတစ်ခုကတော့ king - man + woman ≈ queen
'ဘုရင် (king)' ဆိုတဲ့ Vector ထဲက 'ယောက်ျား (man)' ဆိုတဲ့
Feature ကို နှုတ်ပြီး 'မိန်းမ (woman)' ဆိုတဲ့ Feature ကို
ပေါင်းထည့်လိုက်ရင် 'ဘုရင်မ (queen)' ဆိုတဲ့ အဓိပ္ပာယ်ကို
သွားရရှိတာပဲ ဖြစ်ပါတယ်။
ဆိုလိုတာက Model ဟာ Gender၊ Royalty၊ အလုပ်အကိုင် နဲ့ ပထဝီဝင်ဆိုင်ရာ
Pattern တွေကိုပါ ကောင်းကောင်း သဘောပေါက်ထားလို့ပဲ ဖြစ်ပါတယ်။

ဒီလို Latent Space ထဲမှာ နေရာချထားနိုင်ဖို့အတွက်
Embedding Model တွေဟာ အဓိကအားဖြင့်
အချက် (၃) ချက်ကို သင်ယူလေ့လာကြပါတယ်။
Semantics: စကားလုံးတွေရဲ့ တကယ့် အဓိပ္ပာယ်ကို နားလည်အောင် လုပ်ပါတယ်။
Relationships: စကားလုံး တစ်လုံးနဲ့ တစ်လုံးကြားက ဆက်စပ်ပုံတွေကို လေ့လာပါတယ်။
Contextual Meaning: ရှေ့နောက် စာသားတွေပေါ် မူတည်ပြီး အဓိပ္ပာယ်တွေ
ဘယ်လိုပြောင်းသွားလဲ ဆိုတာကိုပါ မှတ်သားပါတယ်။
ဥပမာအားဖြင့် -
"doctor" ဆိုတဲ့ စကားလုံးဟာ "nurse" ဆိုတဲ့ စကားလုံးနဲ့
အလုပ်အကိုင်၊ ဆေးရုံ စတဲ့ Feature တွေ တူတဲ့အတွက်
Latent Space ထဲမှာ နီးနီးကပ်ကပ် ရှိနေပါလိမ့်မယ်။
အလားတူပဲ "apple" ဆိုတာကလည်း "fruit" ဆိုတဲ့
စကားလုံးနဲ့ အုပ်စုတစ်ခုတည်း ဖြစ်တဲ့အတွက်
နီးကပ်စွာ တည်ရှိနေမှာပါ။

ဒီလောက်ဆိုရင် သဘောတရားကို
အတော်လေး မြင်သာလောက်ပါပြီ။
အနှစ်ချုပ်ရရင်တော့ Embedding Vector ဆိုတာ
Data Point တစ်ခုရဲ့ Latent Space ထဲမှာရှိတဲ့
Coordinate (တည်နေရာ) တစ်ခုပါပဲ။
'cat' ဆိုတာ Latent Space ထဲက အမှတ်တစ်ခု
'dog' ဆိုတာ အဲဒီအနားက ဆက်စပ်နေတဲ့ အမှတ်တစ်ခု
'car' ကတော့ သူတို့နဲ့ အဝေးကြီးမှာရှိတဲ့ အမှတ်တစ်ခု
ဒီလို တည်နေရာ (Coordinates) တွေ ရှိလာတဲ့အတွက်
Machine တွေဟာ စကားလုံးတွေရဲ့ အဓိပ္ပာယ်
ဘယ်လောက်နီးစပ်လဲ၊ ဘယ်လောက်ကွာဝေးလဲ
(Similarity Distance) ကို သင်္ချာနည်းအရ
တိုင်းတာလို့ ရသွားတာ ဖြစ်ပါတယ်။

ဒီနေရာမှာ မဖြစ်မနေ သိထားသင့်တဲ့ နောက်ထပ်
အရေးကြီးတဲ့ အဆင့်တစ်ဆင့် ရှိပါသေးတယ်။
အဲဒါကတော့ Transformer Embeddings ပါပဲ။
အရင်ခေတ်က သုံးခဲ့တဲ့ Word2Vec လို Model တွေမှာ
စကားလုံးတစ်လုံးအတွက် Vector (Embedding) တစ်ခုတည်းပဲ
အမြဲတမ်း ရှိပါတယ်။
ဥပမာ - "Bank" ဆိုတဲ့ စကားလုံးကို ကြည့်ရအောင်။
မြစ်ကမ်းပါး (River bank)
ငွေအပ်တဲ့ဘဏ် (Bank account)
အရင် Model တွေက ဒီနှစ်ခုလုံးအတွက်
Vector အတူတူပဲ ထုတ်ပေးပါတယ်။
ဒါပေမယ့် တကယ်တမ်းမှာ အဓိပ္ပာယ်က လုံးဝ မတူပါဘူး။
ဒီပြဿနာကို ဖြေရှင်းပေးလိုက်တာကတော့
BERT, GPT စတဲ့ Transformer Models တွေပါပဲ။
Transformer တွေဟာ စကားလုံးတစ်လုံးတည်းကိုပဲ
ကြည့်တာမဟုတ်ဘဲ တစ်ကြောင်းလုံးရဲ့ ရှေ့နောက်
အခြေအနေ (Context) ကိုပါ ထည့်သွင်းစဉ်းစားပြီးမှ
(Contextualized Embeddings) ထုတ်ပေးတာ ဖြစ်ပါတယ်။
ဒါကြောင့် "I went to the bank to deposit money" မှာရှိတဲ့
Bank နဲ့ "I sat on the river bank" မှာရှိတဲ့ Bank ဟာ
Latent Space ထဲမှာ လုံးဝ မတူညီတဲ့ နေရာ နှစ်ခုမှာ သွားပြီး
နေရာယူပါတော့တယ်။ ဒါဟာ ယနေ့ခေတ် LLM တွေ
လူတွေလို နားလည်လာရခြင်းရဲ့ အဓိက လျှို့ဝှက်ချက်ပဲ ဖြစ်ပါတယ်။

ဒီ Latent Space နဲ့ Embedding သဘောတရားကို
အသုံးပြုပြီး လက်ရှိခေတ် AI Application တွေမှာ
အများကြီး အသုံးချလာကြပါတယ်။
Semantic Search: Keyword မတူလည်း အဓိပ္ပာယ်တူတာတွေကို
ရှာဖွေပေးနိုင်ခြင်း။
Recommendation Systems: User နဲ့ အကြိုက်တူမယ့် Content တွေ၊
Product တွေကို ရွေးချယ်ပေးခြင်း။
Clustering & Anomaly Detection: ဆင်တူရာတွေ စုဖွဲ့ပေးခြင်းနဲ့
ပုံမှန်မဟုတ်တာတွေကို ခွဲခြားပေးခြင်း။
RAG Systems (Retrieval-Augmented Generation): AI ကို
ကိုယ်ပိုင် Data တွေထည့်ပေးပြီး အဓိပ္ပာယ်ရှိရှိ
မေးခွန်းတွေ ပြန်ဖြေခိုင်းခြင်း။
Generative AI: LLM တွေကနေ စာသားအသစ်တွေ ဖန်တီးပေးခြင်း
စတာတွေမှာ အဓိက အသုံးပြုကြပါတယ်။

ဒီ Article ရဲ့ အဓိက အချက်တွေကတော့ -
ကွန်ပျူတာတွေဟာ Raw Text တွေကို တိုက်ရိုက် နားမလည်ပါဘူး။
Embeddings တွေက Text တွေကို Vectors (ကိန်းဂဏန်းတွေ) အဖြစ် ပြောင်းလဲပေးပါတယ်။
အဲဒီ Vectors တွေဟာ Latent Space လို့ခေါ်တဲ့
Hidden Space တစ်ခုထဲက အမှတ် (Points) တွေ ဖြစ်လာပါတယ်။
အဓိပ္ပာယ်တူတဲ့ စကားလုံးတွေဟာ အဲဒီ Latent Space ထဲမှာ နီးနီးကပ်ကပ် ရှိနေကြပါတယ်။

25/01/2026

Hello everyone, I’m back! 👋

လွန်ခဲ့တဲ့ နှစ်နှစ်လောက်ကစပြီး
ကျွန်တော် Data Science နယ်ပယ်ကနေ
AI & Machine Learning ဘက်ကို
အာရုံစိုက်ပြီး ပြောင်းလဲလေ့လာဖြစ်ခဲ့ပါတယ်။

အခုတော့ ရရှိထားတဲ့ အတွေ့အကြုံသစ်တွေနဲ့
AI/ML ဆိုင်ရာ နည်းပညာရပ်တွေကို
Data Lighthouse မှာ ပြန်လည် မျှဝေပေးသွားတော့မှာပါ။

နယ်ပယ်အသစ်မှာ ထပ်တူလေ့လာချင်သူတွေ အတွက် အကျိုးရှိမယ့် Content တွေကို
အကောင်းဆုံး တင်ဆက်ပေးသွားမှာမို့
စောင့်မျှော်ကြည့်ရှုပေးကြပါဦးခင်ဗျာ။

12/01/2024

Data Analyst အဖြစ် အလုပ်လျှောက်ဖို့ Portfolio လေး ဆောက်ချင်တယ်။ ဘယ်ကနေ စလုပ်ရမလဲ။

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

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

2022 နှစ်လယ်လောက်ကျ LinkedIn မှာ Data Challenge တွေ ရှိတယ် ဆိုတာ သိခဲ့ရပါတယ်။

ကျွန်တော် သိသလောက် LinkedIn မှာ Data Challenge တွေကို လတိုင်း လုပ်ပေးနေတဲ့ Community 2 ခုရှိပါတယ်။

ပထမ တခုကတော့ ONYX Data ဖြစ်ပြီး နောက်တခုကတော့ FP20 Analytics ပါ။

ကျွန်တော်က ONYX Data က လုပ်တဲ့ Challenge တွေပဲ ဝင်ပြိုင်ဖူးတာမို့ FP20 Analytics ရဲ့ Challenge တွေကိုတော့ မသိပါဘူး။

ONYX Data မှာဆိုရင် အခုလက်ရှိ လုပ်နေတဲ့ Challenge ရဲ့ Dataset တင် မဟုတ်ဘဲ အရင်လတွေက လုပ်ခဲ့တဲ့ Challenge တွေရဲ့ Dataset တွေ ကိုလည်း သူတို့ရဲ့ Website မှာ ပေးထားသေးတာမို့ ကိုယ်စိတ်ဝင်စားတဲ့ Dataset ကိုပဲ သုံးပြီး Dashboard ဆောက်လို့ရပါတယ်။

နောက်ပြီး Data Visualization လုပ်တဲ့ Tool တွေကိုလည်း ကိုယ်ကျွမ်းကျင်တဲ့ Tool ကို သုံးလို့ရတာမို့ တကယ် အဆင်ပြေပါတယ်။

ဒါကြောင့်မို့ ကိုယ်က Data Challenge တွေကို ဝင်ပြိုင်ချင်တယ်ဆိုရင် ပြိုင်ပွဲဝင်တဲ့ သူတွေကို ကူညီပေးနေတဲ့ Community တွေ ရှိတာမို့ ကြိုးစား ကြည့်ကြဖို့ တိုက်တွန်းပါတယ်။

အားလုံးပဲ အစစအရာရာ အဆင်ပြေ ချောမွေ့ကြပါစေ။

11/12/2023

ကျွန်တော် Page မှာ ရေးခဲ့သမျှ Content အားလုံးကို Post တခုတည်းမှာ စုပေးထားပါတယ်။ နောက်ထပ် Content တွေ ကိုလည်း ဒီ Post မှာ ထပ်ပေါင်းပေးသွားပါဦးမယ်။

Data Enthusiast တွေအတွက် တစုံတရာ အထောက်အကူ ဖြစ်ပါစေလို့ မျှော်လင့်ပါတယ်။

How to apply for financial aid in Coursera?
https://m.facebook.com/story.php?story_fbid=128458930033899&id=100086093785015&mibextid=Nif5oz

Microsoft PowerBI Self-Study
https://m.facebook.com/story.php?story_fbid=224908497055608&id=100086093785015&mibextid=Nif5oz

Data Science Self-Study (Part - 1)
https://m.facebook.com/story.php?story_fbid=227339876812470&id=100086093785015&mibextid=Nif5oz

Data Science Self-Study (Part - 2)
https://m.facebook.com/story.php?story_fbid=236311902581934&id=100086093785015&mibextid=Nif5oz

Data လောကထဲကို ဝင်ရောက်ဖို့ ဆိုရင်
https://m.facebook.com/story.php?story_fbid=259299226949868&id=100086093785015&mibextid=Nif5oz

Google လား IBM လား
https://m.facebook.com/story.php?story_fbid=261336040079520&id=100086093785015&mibextid=Nif5oz

Tools for Data Analyst
https://m.facebook.com/story.php?story_fbid=322285607317896&id=100086093785015&mibextid=Nif5oz

အောက်က Post ၃ခု ကတော့ စာအုပ် ၃ အုပ် အကြောင်း Sharing လုပ်ပေးထားတ​ဲ့ ဟာပါ။

Hands-on Machine Learning with Scikit-Learn, Keras & Tensorflow
https://m.facebook.com/story.php?story_fbid=270813985798392&id=100086093785015&mibextid=Nif5oz

Practical Statistics for Data Science
https://m.facebook.com/story.php?story_fbid=226085106937947&id=100086093785015&mibextid=Nif5oz

Elementary Statistics
https://m.facebook.com/story.php?story_fbid=143582368521555&id=100086093785015&mibextid=Nif5oz

Would like to appreciate Min Thway Khaing for great posters.

07/12/2023

Data Analyst တယောက်ဖြစ်ချင်တယ်၊
ဘယ် Tools တွေကို သင်ထားရမလဲ။

ဒီနေ့တော့ ကျွန်တော်က Data Analyst တယောက္မှာ
ရှိသင့့်တဲ့၊ လိုအပ်တဲ့ Skills တွေကို ပြောသွားမှာ
မဟုတ်ဘဲ ဘယ် Tool တွေကို သင်ထား၊ တတ်ထားသင့့်သလဲ ဆိုတဲ့ အကြောင်းလေး​ကို sharing လုပ်ပေးချင်ပါတယ်။

🔹Excel
Data Analyst တယောက်အတွက် Excel ဆိုတာက
မရှိမဖြစ် တတ်ထားသင့်တဲ့ အခြေခံ အကျဆုံး Tool လို့ မြင်ပါတယ်။ တချို့ Company တွေမှာ ဆိုရင် Excel ကိုပဲ အဓိက Data Analysis Tool အဖြစ် သုံးကြပါတယ်။

နောက်ပြီး Excel ဆိုတာက ဒီ Data Analysis နယ်ပယ်မှာ တင်မဟုတ်ဘဲ နယ်ပယ်တိုင်းမှာ အသုံးဝင်တဲ့ Tool တခု ဖြစ်တာမို့ တတ်ထားရင်လည်း လုံးဝ အမှား မရှိပါဘူး။

ကျွန်တော် တွေ့ရသလောက်ဆိုရင် Company အကြီးကြီးတွေ မှာတောင် Excel ကို သုံးသင့့်တဲ့ နေရာမှာ သုံးနေကြတုန်းပါပဲ။

Excel မှာလည်း Power BI လိုမျိုး Power Pivot တွေနဲ့ Dashboard တွေကို သူ့အတိုင်းအတာနဲ့သူ ကောင်းကောင်း ဆောက်လို့ ရပါသေးတယ်။

🔹SQL
ဒုတိယအနေနဲ့ Power BI ကို မသင်ဘဲ SQL ကိုပဲ အရင်သင်ကြည့်ဖို့ အကြံပြုချင်ပါတယ်။ ဘာလို့ဆို Power BI သည် Excel ရရင် သင်ရတာ လွယ်တာကြောင့် သင်ယူရတဲ့ အချိန်က အရမ်းကြာမှာ မဟုတ်ပါဘူး။

ကိုယ် ကိုင်တွယ်ရတဲ့ Data တွေက များလာတာနဲ့ အမျှ Powerful ဖြစ်တဲ့ Tool တွေ ကိုလည်း သုံးဖို့ လိုအပ်လာပါပြီ။ Excel ဆိုတာကလည်း သူ့အတိုင်းအတာနဲ့ သူ Limitation ရှိတာမို့ Database တွေရဲ့ အခန်းကဏ္ဍက အရေးပါ လာပါတယ်။

အဲဒီတော့ Database တွေကို စကားပြောရမယ့် Langauge တခု လိုလာတယ်ဆိုပါတော့။ Database တွေနဲ့ ပတ်သက်ပြီး Data Engineer တွေ Database Administrator တွေ လောက် ထဲထဲ ဝင်ဝင် သိစရာမလိုဘဲ Data Analyst တယောက် သိသင့်တဲ့ အတိုင်းအတာ အထိပဲ SQL ကို သိထားရင် လုံလောက်တယ်လို့ ထင်မိပါတယ်။

ဒါ့အပြင် SQL နဲ့လည်း Data Analysis နဲ့ပတ်သက်တာတွေကို လွယ်လွယ်ကူကူနဲ့ လုပ်လို့ရပါသေးတယ်။

🔹Power BI
Power BI နဲ့ Tableau မှာ Power BI က Local Market မှာ Demand ပိုများပါတယ်။ အသုံးပြုရတဲ့ လွယ်ကူတဲ့ အပြင် ရိုးရိုးရှင်းရှင်းနဲ့ Dashboard တွေ ဆောက်လို့ရတာကြောင့် သိပ် အခက်အခဲမရှိတာမို့ လူကြိုက္များကြပါတယ်။

Excel မှာ Dashboard ဆောက်ဖူးတဲ့ အတွေ့အကြုံရှိတယ် ဆိုရင်တော့ Power BI ကို သင်ရတာ ခက်ခဲမှာ မဟုတ်ဘဲ လွယ်လွယ်ကူကူနဲ့ သင်လို့ရနိုင်ပါတယ်။

ဒီ Post ရဲ့နောက်ဆုံးမှာလည်း Power BI ကို Self-study လုပ်လို့ရမယ့် နည်းလေးအကြောင်း Sharing လုပ်ပေးထားတဲ့ Post လေးကို ထည့်ပေးထားပါသေးတယ်။

🔹 Python
ကျွန်တော်အပါအဝင် Data လောကထဲ စဝင်ဖို့ကြိုးစားနေတဲ့သူ တော်တော်များများက Python ကိုပဲ စသင်ဖို့တွေးကြပါတယ်။

တကယ်တော့ Python သည် Corporate တွေ၊ Data row ပေါင်း သိန်းချီ သန်းချီတဲ့ ဟာတွေကို Handle ဖို့နဲ့ အချိန်ကုန်သက်သာအောင် သုံးကြတာ များပါတယ်။

ဒါကြောင့်မို့ Python က Data Analyst တယောက်အတွက် အရင်ဆုံးသင်ရမယ့် Tool မဟုတ်ဘဲ အချိန်အတိုင်းအတာ တခုရောက္မှသာ သင်ထားသင့်တဲ့ Tool လို့ မြင်ပါတယ်။

🔹Cloud
ဒါကတော့ လုံးဝ Optional ပါ။
ကိုယ်က အပေါ်က Tool တွေကို ကျွမ်းကျွမ်းကျင်ကျင် တတ်မြောက်ပြီလို့ ခံစားရရင်တော့ Cloud နဲ့ပတ်သက်တာတွေ ကိုလည်း သင်ယူထားလို့ ရပါသေးတယ်။

ကိုယ်က Company အကြီးကြီးတွေမှာပါ လုပ်ဖို့အထိ စိတ်ကူးရှိတယ်ဆိုရင် Azure ဖြစ်ဖြစ် AWS ဖြစ်ဖြစ် သင်ထားတာက မမှားပါဘူး။ Cloud ဆိုတိုင်းလည်း Cloud Infrastructure တွေကိုလေ့လာဖို့ပြောတာမဟုတ်ပါဘူး။

Data Warehouse ပိုင်းနဲ့ ပတ်သက်ပြီး Cloud Service တွေ ဖြစ်တဲ့ Amazon Redshift, SQL Warehouse & Big Query တို့ အကြောင်းကို နည်းနည်းပါးပါး သိထားရင်ဖြင့် ကိုယ့်အတွက် အလုပ်အကိုင် အခွင့်အလမ်း ပိုများလာမယ်လို့ ထင်ပါတယ်။

❗️ဒီ Tool တွေအားလုံးကို တတ်ဖို့လိုလား?

အခုမှ စလေ့လာမယ့်သူတွေအတွက် ဒီ Tool တွေအားလုံးကို အကုန်လုံး ကျွမ်းကျင်နေအောင် လိုက်လေ့လာစရာ မလိုဘူးလို့ ထင်ပါတယ်။

နောက်ပြီး လုပ်ငန်း တခုချင်းစီမှာ သုံးတဲ့ Tools တွေကလည်း တခုခုက မတူကြတာမို့ T-shaped skills ပုံစံမျိုးနဲ့ သင်ထားတာက ပိုကောင်းမယ်လို့ ထင်မိပါတယ်။

ဒါကတော့ အကယ်၍ ကျွန်တော်သာ အခုချိန် Data Analyst တယောက်ဖြစ်ဖို့ Tools တွေကို လေ့လာမယ်ဆိုရင် တွေးမိတဲ့ Roadmap လေးတခုကို Sharing လုပ်ပေးခြင်းပဲ ဖြစ်ပါတယ်။

🔸Microsoft Power BI Self-study
https://m.facebook.com/story.php?story_fbid=224908497055608&id=100086093785015&mibextid=Nif5oz

Want your school to be the top-listed School/college in Yangon?

Click here to claim your Sponsored Listing.

Location

Website

Address


Yangon