Buckets:

rtrm's picture
|
download
raw
21.4 kB
# အခန်း (၅) ဆိုင်ရာ မေးခွန်းများ[[end-of-chapter-quiz]]
ဒီအခန်းမှာ အချက်အလက်များစွာကို ဖော်ပြခဲ့ပါတယ်။ အသေးစိတ်အချက်အလက်အားလုံးကို နားမလည်သေးရင်လည်း စိတ်မပူပါနဲ့၊ နောက်အခန်းတွေက အတွင်းပိုင်းလုပ်ဆောင်မှုတွေကို နားလည်အောင် ကူညီပေးပါလိမ့်မယ်။
ဒါပေမယ့် ဆက်မသွားခင်၊ ဒီအခန်းမှာ သင်ယူခဲ့တာတွေကို စစ်ဆေးကြည့်ရအောင်။
### ၁။ 🤗 Datasets မှာရှိတဲ့ `load_dataset()` function က အောက်ပါနေရာတွေထဲက ဘယ်နေရာကနေ dataset တစ်ခုကို load လုပ်နိုင်စေသလဲ။
load_dataset('emotion')။",
correct: true
},
{
text: "Remote server တစ်ခုကနေ",
explain: "မှန်ပါတယ်။ remote files တွေကို load လုပ်ဖို့အတွက် URLs တွေကို `load_dataset()` ရဲ့ `data_files` argument ကို ပေးနိုင်ပါတယ်။",
correct: true
},
]}
/>
### ၂။ အောက်ပါအတိုင်း GLUE tasks ထဲက တစ်ခုကို load လုပ်တယ်လို့ ယူဆပါစို့-
```py
from datasets import load_dataset
dataset = load_dataset("glue", "mrpc", split="train")
```
အောက်ပါ commands တွေထဲက ဘယ်ဟာက `dataset` ကနေ elements ၅၀ ကို random sample အဖြစ် ထုတ်လုပ်ပေးမလဲ။
dataset.sample(50)",
explain: "ဒါက မမှန်ပါဘူး -- Dataset.sample() method မရှိပါဘူး။"
},
{
text: "dataset.shuffle().select(range(50))",
explain: "မှန်ပါတယ်။ ဒီအခန်းမှာ သင်တွေ့ခဲ့ရတဲ့အတိုင်း၊ သင်ဟာ dataset ကို အရင် shuffle လုပ်ပြီးမှ ၎င်းကနေ samples တွေကို ရွေးထုတ်တာပါ။",
correct: true
},
{
text: "dataset.select(range(50)).shuffle()",
explain: "ဒါက မမှန်ပါဘူး -- code က run မှာဖြစ်ပေမယ့်၊ dataset ထဲက ပထမဆုံး elements ၅၀ ကိုပဲ shuffle လုပ်ပါလိမ့်မယ်။"
}
]}
/>
### ၃။ `pets_dataset` လို့ခေါ်တဲ့ အိမ်မွေးတိရစ္ဆာန်တွေနဲ့ ပတ်သက်တဲ့ dataset တစ်ခုရှိပြီး၊ တိရစ္ဆာန်တစ်ခုစီရဲ့ နာမည်ကို ဖော်ပြတဲ့ `name` column ပါဝင်တယ်လို့ ယူဆပါ။ အောက်ပါနည်းလမ်းတွေထဲက ဘယ်ဟာက နာမည် "L" စာလုံးနဲ့ စတင်တဲ့ တိရစ္ဆာန်တွေအားလုံးအတွက် dataset ကို filter လုပ်နိုင်စေမှာလဲ။
pets_dataset.filter(lambda x : x['name'].startswith('L'))",
explain: "မှန်ပါတယ်။ ဒီလို မြန်ဆန်တဲ့ filters တွေအတွက် Python lambda function ကို အသုံးပြုတာက အကောင်းဆုံးပါပဲ။ တခြားဖြေရှင်းနည်းတစ်ခုကို စဉ်းစားနိုင်မလား။",
correct: true
},
{
text: "pets_dataset.filter(lambda x['name'].startswith('L'))",
explain: "ဒါက မမှန်ပါဘူး -- lambda function တစ်ခုက lambda *arguments* : *expression* ပုံစံရှိတာကြောင့်၊ ဒီကိစ္စမှာ arguments တွေ ပေးဖို့လိုပါတယ်။"
},
{
text: "def filter_names(x): return x['name'].startswith('L') လို function တစ်ခု ဖန်တီးပြီး pets_dataset.filter(filter_names) ကို run ပါ။",
explain: "မှန်ပါတယ်။ Dataset.map() နဲ့ အတူတူပါပဲ၊ သင်ဟာ Dataset.filter() ကို explicit functions တွေ ပေးနိုင်ပါတယ်။ ဒါက တိုတောင်းတဲ့ lambda function နဲ့ မသင့်လျော်တဲ့ ရှုပ်ထွေးတဲ့ logic တွေရှိတဲ့အခါ အသုံးဝင်ပါတယ်။ တခြားဘယ်ဖြေရှင်းနည်းတွေ အလုပ်ဖြစ်မလဲ။",
correct: true
}
]}
/>
### ၄။ Memory mapping ဆိုတာ ဘာလဲ။
### ၅။ အောက်ပါတို့ထဲက ဘယ်အရာတွေက memory mapping ရဲ့ အဓိက အကျိုးကျေးဇူးတွေလဲ။
### ၆။ အောက်ပါ code က ဘာကြောင့် အလုပ်မလုပ်တာလဲ။
```py
from datasets import load_dataset
dataset = load_dataset("allocine", streaming=True, split="train")
dataset[0]
```
IterableDataset ကို ဝင်ရောက်ကြည့်ရှုဖို့ ကြိုးစားနေတာ။",
explain: "မှန်ပါတယ်။ IterableDataset ဆိုတာ generator တစ်ခုဖြစ်ပြီး container မဟုတ်ပါဘူး၊ ဒါကြောင့် ၎င်းရဲ့ elements တွေကို next(iter(dataset)) ကို အသုံးပြုပြီး ဝင်ရောက်ကြည့်ရှုသင့်ပါတယ်။",
correct: true
},
{
text: "allocine dataset မှာ train split မရှိပါဘူး။",
explain: "ဒါက မမှန်ပါဘူး -- Hub ပေါ်က [allocine dataset card](https://huggingface.co/datasets/allocine) ကို ကြည့်ပြီး ၎င်းမှာ ဘယ် splits တွေ ပါဝင်လဲဆိုတာ စစ်ဆေးပါ။"
}
]}
/>
### ၇။ Dataset card တစ်ခု ဖန်တီးခြင်းရဲ့ အဓိက အကျိုးကျေးဇူးတွေက ဘာတွေလဲ။
### ၈။ Semantic search ဆိုတာ ဘာလဲ။
### ၉။ Asymmetric semantic search အတွက်၊ သင်အများအားဖြင့် ဘာတွေရှိလဲ။
### ၁၀။ 🤗 Datasets ကို speech processing လိုမျိုး အခြား domains တွေမှာ အသုံးပြုဖို့ data တွေ load လုပ်ဖို့ အသုံးပြုနိုင်မလား။
MNIST dataset ကို ကြည့်ပါ။"
},
{
text: "ရပါတယ်။",
explain: "မှန်ပါတယ်။ 🤗 Transformers library မှာ speech နဲ့ vision နဲ့ပတ်သက်တဲ့ စိတ်လှုပ်ရှားဖွယ် တိုးတက်မှုတွေကို ကြည့်ပြီး 🤗 Datasets ကို ဒီ domains တွေမှာ ဘယ်လိုအသုံးပြုလဲဆိုတာ ကြည့်ပါ။",
correct : true
},
]}
/>
## ဝေါဟာရ ရှင်းလင်းချက် (Glossary)
* **🤗 Datasets Library**: Hugging Face က ထုတ်လုပ်ထားတဲ့ library တစ်ခုဖြစ်ပြီး AI မော်ဒယ်တွေ လေ့ကျင့်ဖို့အတွက် ဒေတာအစုအဝေး (datasets) တွေကို လွယ်လွယ်ကူကူ ဝင်ရောက်ရယူ၊ စီမံခန့်ခွဲပြီး အသုံးပြုနိုင်စေပါတယ်။
* **`load_dataset()` Function**: Hugging Face Datasets library မှ dataset များကို download လုပ်ပြီး cache လုပ်ရန် အသုံးပြုသော function။
* **Locally**: သင့်ကွန်ပျူတာ (laptop သို့မဟုတ် desktop) ၏ hard drive ပေါ်တွင်။
* **Laptop**: သယ်ဆောင်ရလွယ်ကူသော ကိုယ်ပိုင်ကွန်ပျူတာ။
* **`data_files` Argument**: `load_dataset()` function တွင် dataset files (local သို့မဟုတ် remote) ၏ path (သို့မဟုတ် URL) ကို သတ်မှတ်ရန် အသုံးပြုသော argument။
* **Hugging Face Hub**: AI မော်ဒယ်တွေ၊ datasets တွေနဲ့ demo တွေကို အခြားသူတွေနဲ့ မျှဝေဖို့၊ ရှာဖွေဖို့နဲ့ ပြန်လည်အသုံးပြုဖို့အတွက် အွန်လိုင်း platform တစ်ခု ဖြစ်ပါတယ်။
* **Dataset ID**: Hugging Face Hub ပေါ်ရှိ dataset တစ်ခု၏ ထူးခြားသော ဖော်ထုတ်ကိန်း (identifier)။
* **Remote Server**: ကွန်ရက်တစ်ခုပေါ်တွင် ဝန်ဆောင်မှုများ သို့မဟုတ် အရင်းအမြစ်များကို ပံ့ပိုးပေးသော ကွန်ပျူတာ။
* **URL (Uniform Resource Locator)**: web ပေါ်ရှိ အရင်းအမြစ်တစ်ခု (ဥပမာ- web page, file) ၏ လိပ်စာ။
* **GLUE Tasks (General Language Understanding Evaluation Tasks)**: စာသားခွဲခြားသတ်မှတ်ခြင်း လုပ်ငန်း ၁၀ ခုတွင် ML model များ၏ စွမ်းဆောင်ရည်ကို တိုင်းတာရန် အသုံးပြုသည့် academic benchmark တစ်ခု။
* **`mrpc` (Microsoft Research Paraphrase Corpus)**: GLUE benchmark ထဲက paraphrase detection task တစ်ခု။
* **`split="train"`**: dataset ရဲ့ training split ကို ရွေးချယ်ခြင်း။
* **Random Sample**: dataset တစ်ခုမှ ကျပန်းရွေးချယ်ထားသော elements များ။
* **`Dataset.sample()` Method**: `Dataset` object မှာ မရှိပါ။
* **`Dataset.shuffle()` Method**: dataset အတွင်းရှိ elements များကို ကျပန်းရောနှော (shuffle) ရန် အသုံးပြုသော method။
* **`Dataset.select(range(50))` Method**: dataset ၏ ပထမဆုံး elements ၅၀ ကို ရွေးထုတ်ရန် အသုံးပြုသော method။
* **`Dataset.filter()` Method**: 🤗 Datasets library မှာ ပါဝင်တဲ့ method တစ်ခုဖြစ်ပြီး သတ်မှတ်ထားသော အခြေအနေများနှင့် ကိုက်ညီသော ဒေတာများကိုသာ dataset မှ ရွေးထုတ်ရန် အသုံးပြုသည်။
* **Lambda Function (Python Lambda)**: အမည်မရှိသော (anonymous) function တစ်ခုဖြစ်ပြီး code လိုင်းတစ်ကြောင်းတည်းဖြင့် သတ်မှတ်နိုင်သည်။
* **`x['name'].startswith('L')`**: dictionary `x` အတွင်းရှိ `name` key ၏ value သည် 'L' ဖြင့် စတင်ခြင်းရှိမရှိ စစ်ဆေးသော Python expression။
* **Memory Mapping**: ဖိုင်တစ်ခု၏ အကြောင်းအရာများကို ကွန်ပျူတာ၏ virtual memory နေရာသို့ တိုက်ရိုက်ချိတ်ဆက်ပေးသည့် နည်းလမ်း။
* **CPU (Central Processing Unit)**: ကွန်ပျူတာ၏ ပင်မ processor။
* **GPU (Graphics Processing Unit)**: ဂရပ်ဖစ်လုပ်ဆောင်မှုအတွက် အထူးဒီဇိုင်းထုတ်ထားသော processor တစ်မျိုးဖြစ်သော်လည်း AI/ML လုပ်ငန်းများတွင် အရှိန်မြှင့်ရန် အသုံးများသည်။
* **RAM (Random Access Memory)**: ကွန်ပျူတာ၏ ယာယီမှတ်ဉာဏ်သိုလှောင်ရာနေရာ။
* **Filesystem Storage**: ကွန်ပျူတာ၏ hard disk သို့မဟုတ် solid-state drive (SSD) ကဲ့သို့သော အမြဲတမ်းသိုလှောင်ရာနေရာ။
* **🤗 Datasets Cache**: 🤗 Datasets library မှ download လုပ်ထားသော datasets များနှင့် processing လုပ်ထားသော ဒေတာများကို ယာယီသိမ်းဆည်းထားသော နေရာ။
* **Blazing Fast**: အလွန်လျင်မြန်စွာ လုပ်ဆောင်ခြင်း။
* **Multi-gigabyte Datasets**: gigabyte အရွယ်အစားများစွာရှိသော datasets များ။
* **CPU (Central Processing Unit)**: ကွန်ပျူတာ၏ ပင်မ processor။ (ဤနေရာတွင် "blowing up your CPU" ဆိုသည်မှာ CPU ကို အလွန်အမင်း ဝန်ပိစေခြင်းကို ဆိုလိုသည်)။
* **`streaming=True`**: `load_dataset()` function တွင် dataset ကို memory ထဲသို့ တစ်ခါတည်း အားလုံး load မလုပ်ဘဲ၊ လိုအပ်သလို အပိုင်းလိုက် stream လုပ်ရန် သတ်မှတ်ခြင်း။
* **`IterableDataset`**: 🤗 Datasets library ၏ class တစ်ခုဖြစ်ပြီး dataset ကို generator တစ်ခုအဖြစ် လုပ်ဆောင်စေကာ memory ထဲသို့ ဒေတာအားလုံးကို တစ်ခါတည်း load မလုပ်ဘဲ လိုအပ်သလို ထုတ်ပေးသည်။
* **Generator**: Python တွင် iteration လုပ်နိုင်သော object တစ်ခုဖြစ်ပြီး ၎င်းသည် အရာအားလုံးကို memory ထဲသို့ တစ်ပြိုင်နက်တည်း သိမ်းဆည်းမထားဘဲ လိုအပ်သလို တန်ဖိုးများကို ထုတ်ပေးသည်။
* **Container**: Python တွင် elements များကို သိမ်းဆည်းထားနိုင်သော object (ဥပမာ- list, tuple, dictionary)။
* **`next(iter(dataset))`**: `IterableDataset` မှ နောက်ထပ် element တစ်ခုကို ရယူရန် အသုံးပြုသော Python code။
* **`allocine` Dataset**: Hugging Face Hub ပေါ်ရှိ dataset တစ်ခု (ပြင်သစ်ရုပ်ရှင် reviews များ ပါဝင်နိုင်သည်)။
* **Dataset Card**: Hugging Face Hub တွင် dataset တစ်ခုစီအတွက် ပါရှိသော အချက်အလက်များပါသည့် စာမျက်နှာ။
* **Intended Use**: Dataset ကို အသုံးပြုရန် ရည်ရွယ်ထားသော ကိစ္စရပ်များ။
* **Supported Tasks**: Dataset ကို အသုံးပြု၍ လုပ်ဆောင်နိုင်သော လုပ်ငန်းများ။
* **Informed Decision**: အချက်အလက်အပြည့်အစုံကို အခြေခံပြီး ဆုံးဖြတ်ချက်ချခြင်း။
* **Undocumented Datasets**: အသုံးပြုပုံ၊ ကန့်သတ်ချက်များ သို့မဟုတ် ဘက်လိုက်မှုများအတွက် တရားဝင်မှတ်တမ်းမရှိသော datasets များ။
* **Legal Status**: ဥပဒေရေးရာ အခြေအနေ။
* **Murky**: ရှင်းရှင်းလင်းလင်း မရှိခြင်း၊ မရေမရာဖြစ်ခြင်း။
* **Privacy Restrictions**: ကိုယ်ရေးကိုယ်တာ အချက်အလက်များနှင့် ပတ်သက်သော ကန့်သတ်ချက်များ။
* **Licensing Restrictions**: လိုင်စင်နှင့် ပတ်သက်သော ကန့်သတ်ချက်များ။
* **Corpus**: စာသား (သို့မဟုတ် အခြားဒေတာ) အစုအဝေးကြီးတစ်ခု။
* **Bias**: Model တစ်ခု၏ ခန့်မှန်းချက်များတွင် ဒေတာ သို့မဟုတ် သင်္ချာဆိုင်ရာ အကြောင်းများကြောင့် ဖြစ်ပေါ်လာသော ဘက်လိုက်မှုများ။
* **Negative Consequences Downstream**: နောက်ဆက်တွဲအဆင့်များတွင် ဖြစ်ပေါ်လာနိုင်သော အနုတ်လက္ခဏာဆောင်သည့် ရလဒ်များ။
* **Semantic Search**: စာလုံးများကို ကိုက်ညီမှု ရှာဖွေခြင်းထက် အဓိပ္ပာယ်ပေါ်မူတည်၍ ရှာဖွေနိုင်သော search engine။
* **Lexical Search**: စကားလုံးများကို တိကျသော ကိုက်ညီမှုအပေါ် အခြေခံ၍ ရှာဖွေခြင်း။
* **Query**: search engine တွင် ရှာဖွေရန် ထည့်သွင်းသော စကားလုံး သို့မဟုတ် စာကြောင်း။
* **Documents**: ရှာဖွေရန် စုစည်းထားသော စာသားအချက်အလက်များ။
* **Contextual Meaning**: စာသားတစ်ခု၏ အကြောင်းအရာအလိုက် အဓိပ္ပာယ်။
* **Embedding Vectors**: စာသား သို့မဟုတ် အခြားဒေတာများကို ဂဏန်းဆိုင်ရာ vector များအဖြစ် ကိုယ်စားပြုခြင်း။
* **Similarity Metric**: elements နှစ်ခုကြား ဆင်တူမှုပမာဏကို တိုင်းတာသော တန်ဖိုး။
* **Overlap**: အရာနှစ်ခုကြား တူညီသော သို့မဟုတ် ထပ်နေသော အစိတ်အပိုင်းများ။
* **Search Accuracy**: ရှာဖွေမှုရလဒ်များ၏ မှန်ကန်မှုပမာဏ။
* **Keyword Matching**: search query ထဲက စကားလုံးတွေနဲ့ document ထဲက စကားလုံးတွေ တိကျစွာ ကိုက်ညီမှုကို ရှာဖွေခြင်း။
* **Precision**: search results များထဲမှ သက်ဆိုင်ရာရလဒ်များ၏ ရာခိုင်နှုန်း။
* **Asymmetric Semantic Search**: Query နှင့် Document များ၏ အရှည် သို့မဟုတ် ပုံစံ ကွာခြားသည့် semantic search အမျိုးအစား (ဥပမာ- တိုတိုလေး query နှင့် ရှည်လျားသော document)။
* **Symmetric Semantic Search**: Query နှင့် Document များ၏ အရှည် သို့မဟုတ် ပုံစံ တူညီသည့် semantic search အမျိုးအစား။
* **Tabular Data**: جداول ပုံစံဖြင့် စုစည်းထားသော ဒေတာ (rows and columns)။
* **Audio (Speech Processing)**: အသံအချက်အလက်များကို AI စနစ်များဖြင့် စီမံဆောင်ရွက်ခြင်း။
* **Computer Vision**: ကွန်ပျူတာများကို ပုံရိပ်များ သို့မဟုတ် ဗီဒီယိုများမှ အချက်အလက်များ နားလည်စေရန် သင်ကြားပေးခြင်း။
* **MNIST Dataset**: handwritten digits များပါဝင်သော computer vision dataset တစ်ခု။

Xet Storage Details

Size:
21.4 kB
·
Xet hash:
50987bf5261f4b6126c19476aaed6b0b2b778db1f79a80325799f64bcf7bab2a

Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.