| | --- |
| | license: apache-2.0 |
| | language: |
| | - my |
| | pipeline_tag: feature-extraction |
| | tags: |
| | - myanmar |
| | - burmese |
| | - nlp |
| | - embeddings |
| | - semantic |
| | - fasttext |
| | library_name: fasttext |
| | datasets: |
| | - DatarrX/myX-Mega-Corpus |
| | --- |
| | |
| | # myX-Semantic: A High-Performance Burmese Word Embedding Model |
| |
|
| | ## ၁။ နိဒါန်း (Introduction) |
| | **myX-Semantic** သည် မြန်မာဘာသာစကား၏ အနက်အဓိပ္ပာယ် ဆက်စပ်မှုများကို ကိန်းဂဏန်းများအဖြစ် ပြောင်းလဲပေးနိုင်သော (Word Embedding) မော်ဒယ်တစ်ခုဖြစ်သည်။ ဤမော်ဒယ်သည် မြန်မာစာသားများအတွင်းရှိ စကားလုံးများ၏ ရှေ့နောက်ဆက်စပ်မှု (Contextual relationships) နှင့် အဓိပ္ပာယ်တူညီမှု (Semantic similarity) များကို နားလည်နိုင်ရန် FastText (Skip-gram) နည်းပညာကို အခြေခံ၍ တည်ဆောက်ထားခြင်းဖြစ်သည်။ |
| |
|
| | ## ၂။ ထုတ်လုပ်သူ (Developer Information) |
| | ဤ Model ကို [**DatarrX (Myanmar Open Source NGO)**](https://huggingface.co/DatarrX) မှ ထုတ်ဝေခြင်းဖြစ်ပြီး [**Khant Sint Heinn (Kalix Louis)**(https://huggingface.co/kalixlouiis)] မှ အဓိက ဖန်တီးတည်ဆောက်ထားခြင်း ဖြစ်ပါသည်။ မြန်မာဘာသာစကားဆိုင်ရာ သဘာဝဘာသာစကား စီမံဆောင်ရွက်မှု (Natural Language Processing - NLP) အရင်းအမြစ်များကို ပိုမိုပေါများလာစေရန် ရည်ရွယ်၍ ဖန်တီးခဲ့ခြင်းဖြစ်သည်။ |
| |
|
| | ## ၃။ အသုံးပြုနိုင်သည့် နယ်ပယ်များ (Intended Use) |
| | myX-Semantic ကို အောက်ပါ NLP လုပ်ငန်းစဉ်များတွင် အခြေခံအုတ်မြစ်အဖြစ် အသုံးပြုနိုင်သည် - |
| | * **Semantic Search:** စာလုံးပေါင်း တိတိကျကျ မတူသော်လည်း အဓိပ္ပာယ်တူညီသည့် စာသားများကို ရှာဖွေခြင်း။ |
| | * **Text Classification:** စာသားများကို အမျိုးအစား ခွဲခြားခြင်း။ |
| | * **Sentiment Analysis:** စာသားများ၏ ခံစားချက်ဖော်ပြမှုကို ခွဲခြားခြင်း။ |
| | * **Foundation for LLMs:** ကြီးမားသော ဘာသာစကားမော်ဒယ်များ (Large Language Models) အတွက် အဓိပ္ပာယ်ပိုင်းဆိုင်ရာ အခြေခံအဖြစ် အသုံးပြုခြင်း။ |
| |
|
| | ## ၄။ နည်းပညာဆိုင်ရာ အချက်အလက်များ (Technical Details) |
| | ဤမော်ဒယ်ကို လေ့ကျင့်ရာတွင် အောက်ပါ နည်းပညာဆိုင်ရာ သတ်မှတ်ချက်များကို အသုံးပြုထားသည် - |
| | * **မော်ဒယ်တည်ဆောက်ပုံ (Architecture):** FastText (Skip-gram)။ |
| | * **လေ့ကျင့်ထားသော ဒေတာပမာဏ (Training Data):** စာကြောင်းရေ ၁၆ သန်းကျော် (၅.၃ GB ဝန်းကျင်) ရှိသော [**myX-Mega-Corpus**](https://huggingface.co/datasets/DatarrX/myX-Mega-Corpus)။ |
| | * **စကားလုံးခွဲစနစ် (Tokenizer):** myX-Tokenizer (64,000 Vocabulary size)။ |
| | * **Vector Dimension:** 100။ |
| | * **အနည်းဆုံးပါဝင်မှုနှုန်း (Min Count):** 20။ |
| | * **Window Size:** 5။ |
| | * **Epochs:** 3။ |
| |
|
| | ## ၅။ ကန့်သတ်ချက်များနှင့် လိုင်စင် (Limitations and License) |
| |
|
| | ### ၅.၁ ကန့်သတ်ချက်များ (Limitations) |
| | * ဤမော်ဒယ်သည် Unicode စံနှုန်းဖြင့် ရေးသားထားသော စာသားများတွင်သာ အကောင်းဆုံး စွမ်းဆောင်နိုင်မည်ဖြစ်သည်။ |
| | * လေ့ကျင့်ထားသော ဒေတာများအတွင်းမှ ဘက်လိုက်မှု (Bias) များသည် မော်ဒယ်၏ ရလဒ်အပေါ် သက်ရောက်မှု ရှိနိုင်သည်။ |
| |
|
| | ### ၅.၂ လိုင်စင် (License) |
| | ဤမော်ဒယ်အား **Apache License 2.0** အောက်တွင် ထုတ်ဝေထားပါသည်။ စီးပွားရေးလုပ်ငန်းများနှင့် သုတေသနလုပ်ငန်းများတွင် လွတ်လပ်စွာ အသုံးပြုနိုင်သော်လည်း မူရင်းဖန်တီးသူကို သတ်မှတ်ထားသည့်အတိုင်း ကိုးကားဖော်ပြရမည်ဖြစ်သည်။ |
| |
|
| | ## ၆။ အသုံးပြုနည်း လမ်းညွှန် (How to Use) |
| | ဤ Model ကို Python environment တွင် အောက်ပါအဆင့်များအတိုင်း အသုံးပြုနိုင်သည်။ |
| |
|
| | ### ၆.၁ လိုအပ်သော Library များ ထည့်သွင်းခြင်း (Installation) |
| |
|
| | ပထမဦးစွာ Model ကို Load လုပ်ရန်နှင့် Hugging Face မှ Download ရယူရန် လိုအပ်သော Library များကို Install လုပ်ပါ။ |
| | ```BASH |
| | pip install fasttext huggingface_hub |
| | ``` |
| | ### ၆.၂ Model ကို Load လုပ်ခြင်း (Loading the Model) |
| |
|
| | Hugging Face Hub မှ Model ကို တိုက်ရိုက် Download ရယူပြီး Load လုပ်ရန် အောက်ပါ Code ကို အသုံးပြုပါ။ |
| |
|
| | ```Python |
| | import fasttext |
| | from huggingface_hub import hf_hub_download |
| | |
| | # Hugging Face မှ model ဖိုင်ကို download ဆွဲခြင်း |
| | model_path = hf_hub_download(repo_id="DatarrX/myX-Semantic", filename="myX-Semantic.bin") |
| | |
| | # fasttext ကို သုံးပြီး model ကို load လုပ်ခြင်း |
| | model = fasttext.load_model(model_path) |
| | ``` |
| | ### ၆.၃ အခြေခံ အသုံးပြုနည်းများ (Basic Operations) |
| | Model ရရှိပြီးနောက် အောက်ပါ NLP လုပ်ငန်းစဉ်များကို စမ်းသပ်နိုင်သည်။ |
| |
|
| | - က) အဓိပ္ပာယ်တူညီသော စကားလုံးများ ရှာဖွေခြင်း (Finding Nearest Neighbors) |
| | စကားလုံးတစ်လုံးနှင့် အနီးစပ်ဆုံး အဓိပ္ပာယ်ရှိသော စကားလုံး (၁၀) လုံးကို ရှာဖွေရန်: |
| |
|
| | ```Python |
| | # 'နည်းပညာ' နှင့် အနီးစပ်ဆုံးစကားလုံးများ ရှာခြင်း |
| | neighbors = model.get_nearest_neighbors("နည်းပညာ") |
| | for score, neighbor in neighbors: |
| | print(f"{neighbor}: {score:.4f}") |
| | ``` |
| | - ခ) စကားလုံးနှစ်လုံး၏ အဓိပ္ပာယ် နီးစပ်မှုကို စစ်ဆေးခြင်း (Calculating Similarity Score) |
| | စကားလုံးနှစ်လုံးသည် အဓိပ္ပာယ်အရ မည်မျှ နီးစပ်သလဲဆိုသည်ကို တွက်ချက်ရန်: |
| |
|
| | ```Python |
| | import numpy as np |
| | |
| | def get_similarity(w1, w2): |
| | v1 = model.get_word_vector(w1) |
| | v2 = model.get_word_vector(w2) |
| | return np.dot(v1, v2) / (np.linalg.norm(v1) * np.linalg.norm(v2)) |
| | |
| | score = get_similarity("ပျော်တယ်", "ဝမ်းသာတယ်") |
| | print(f"Similarity Score: {score:.4f}") |
| | ``` |
| |
|
| | - ဂ) စာကြောင်းတစ်ခုလုံး၏ Vector ကို ရယူခြင်း (Getting Sentence Vector) |
| | စာကြောင်းတစ်ခုလုံးကို Vector အဖြစ် ပြောင်းလဲရန် (Text Classification သို့မဟုတ် Semantic Search လုပ်ရန်အတွက် အသုံးဝင်သည်): |
| |
|
| | ```Python |
| | sentence_vector = model.get_sentence_vector("မြန်မာနိုင်ငံ၏ နည်းပညာ ကဏ္ဍ တိုးတက်လာပုံ") |
| | print(sentence_vector) |
| | ``` |
| |
|
| | ## ၇။ လေ့ကျင့်မှု ဖြစ်စဉ် အကျဉ်းချုပ် (Training Procedure Summary) |
| | ဤမော်ဒယ်ကို အဆင့် (၂) ဆင့်ဖြင့် စနစ်တကျ လေ့ကျင့်ခဲ့သည် - |
| | * **အဆင့် (၁) - Tokenization:** [myX-Tokenizer](https://huggingface.co/DatarrX/myX-Tokenizer) ကို အသုံးပြု၍ ၁၆ သန်းကျော်သော စာကြောင်းများကို Subword units များအဖြစ် ခွဲခြားခဲ့သည်။ လုပ်ဆောင်ချက် မြန်ဆန်စေရန် Multiprocessing စနစ်ကို အသုံးပြုခဲ့သည်။ |
| | * **အဆင့် (၂) - FastText Training:** ခွဲခြားထားသော Token များကို FastText (Skip-gram) algorithm သုံး၍ Dimension 100 ဖြင့် လေ့ကျင့်ခဲ့သည်။ ပိုမိုတိကျသော Context များရရှိရန် Window Size 5 နှင့် Negative Sampling နည်းလမ်းကို အသုံးပြုခဲ့သည်။ |
| |
|
| | ## ၈။ လေ့ကျင့်မှုဆိုင်ရာ ကုဒ်များ (Training Code) |
| | မော်ဒယ်အား ပြန်လည်စမ်းသပ်နိုင်ရန်နှင့် ပွင့်လင်းမြင်သာမှုရှိစေရန်အတွက် အသုံးပြုခဲ့သော ကုဒ်အပြည့်အစုံကို အောက်ပါ GitHub link တွင် လေ့လာနိုင်သည် - |
| | 👉 [https://github.com/DatarrX/myX-Semantic](https://github.com/DatarrX/myX-Semantic) |
| |
|
| | ## ၉။ မော်ဒယ်ဆိုင်ရာ အချက်အလက်များ (Model File Info) |
| | * **Model Version:** 1.0 |
| | * **File Format:** Binary (.bin) |
| | * **File Size:** ~851.71 MB |
| | * **Vector Dimension:** 100 |
| | * **Architecture:** FastText (Skip-gram) |
| |
|
| | ## ၁၀။ DatarrX အကြောင်း (About DatarrX) |
| | [**DatarrX**](https://huggingface.co/DatarrX) သည် မြန်မာဘာသာစကားအတွက် အဆင့်မြင့် သဘာဝဘာသာစကား စီမံဆောင်ရွက်မှု (Natural Language Processing) အရင်းအမြစ်များကို ဖန်တီးပေးနေသည့် Open-source NGO အဖွဲ့အစည်းတစ်ခုဖြစ်သည်။ မြန်မာနိုင်ငံ၏ ဒစ်ဂျစ်တယ်နည်းပညာကဏ္ဍတွင် AI နှင့် Open Data များ ပိုမိုပေါများလာစေရန်နှင့် မြန်မာဘာသာစကားဆိုင်ရာ ဒေတာစုများ၊ မော်ဒယ်များကို လူတိုင်း အခမဲ့ အသုံးပြုနိုင်ရန် ရည်ရွယ်၍ ဖွဲ့စည်းထားခြင်းဖြစ်သည်။ |
| |
|
| | ## ၁၁။ ကိုးကားအသုံးပြုရန် (Citation) |
| | သင်၏ သုတေသန သို့မဟုတ် ပရောဂျက်များတွင် ဤမော်ဒယ်ကို အသုံးပြုပါက အောက်ပါအတိုင်း ကိုးကားပေးပါရန် မေတ္တာရပ်ခံအပ်ပါသည် - |
| |
|
| | ### APA Style |
| |
|
| | Khant Sint Heinn. (2026). *myX-Semantic: A Burmese word embedding model for NLP tasks* [Computer software]. DatarrX. https://huggingface.co/DatarrX/myX-Semantic |
| |
|
| | ### BibTeX |
| | ```bibtex |
| | @software{khantsintheinn2026myxsemantic, |
| | author = {Khant Sint Heinn}, |
| | title = {myX-Semantic: A Burmese Word Embedding Model for NLP Tasks}, |
| | year = {2026}, |
| | publisher = {DatarrX}, |
| | url = {https://huggingface.co/DatarrX/myX-Semantic}, |
| | note = {Myanmar Open Source NGO} |
| | } |
| | ``` |
| |
|
| | ## ၁၂။ အသုံးပြုနိုင်သည့် ဘာသာစကား (Intended Language) |
| |
|
| | ဤမော်ဒယ်ကို **မြန်မာဘာသာစကား (Burmese)** တစ်မျိုးတည်းအတွက်သာ ရည်ရွယ်၍ တည်ဆောက်ထားခြင်းဖြစ်သည်။ အခြားဘာသာစကားများအတွက် အသုံးပြုပါက ရလဒ်ကောင်းမွန်ရန် အာမမခံပါ။ |