Buckets:

HuggingFaceDocBuilder's picture
|
download
raw
19.6 kB
# คำถามท้ายบท
<CourseFloatingBanner
chapter={3}
classNames="absolute z-10 right-0 top-0"
/>
ทดสอบความรู้ที่คุณได้เรียนมาจากบทนี้กัน!
### 1. ใน `emotion` dataset ซึ่งได้รวบรวมข้อความ Twitter ที่มีการ labeled ว่าแต่ละข้อความนั้นเป็นข้อความที่มีอารมณ์แบบใด ลองค้นข้อมูลดูจาก [Hub](https://huggingface.co/datasets)และอ่าน dataset card ดูแล้วตอบว่า ข้อใดไม่ใช่หนึ่งในอารมณ์พื้นฐานของ dataset นี้?
<Question
choices={[
{
text: "Joy",
explain: "ลองอกครั้อารมณี้อยู่ใน dataset นะ!"
},
{
text: "Love",
explain: "ลองอกครั้อารมณี้อยู่ใน dataset นะ!"
},
{
text: "Confusion",
explain: "กตอง! Confusion ไมไดเปนหนึ่งในหกอารมณื้นฐาน",
correct: true
},
{
text: "Surprise",
explain: "Surprise! งไมกนะ ลองใหมกครั้!"
}
]}
/>
### 2. ลองหาข้อมูล `ar_sarcasm` dataset ใน [Hub](https://huggingface.co/datasets) ดูว่ามันสามารถทำ Task อะไรได้บ้าง?
<Question
choices={[
{
text: "Sentiment classification (การจำแนกอารมณของขอความ)",
explain: "กตองเลย! นะที่าน tags.",
correct: true
},
{
text: "Machine translation (การแปลภาษา)",
explain: "งไมกนะลองดอมลใหมกครั้งที่ dataset card!"
},
{
text: "Named entity recognition (การจำแนกหนวยยอยของประโยค)",
explain: "งไมกนะลองดอมลใหมกครั้งที่ dataset card!"
},
{
text: "Question answering (การตอบคำถาม)",
explain: "ตอบคำถามไดแตงไมกนะ ลองใหมกครั้!"
}
]}
/>
### 3. โมเดล BERT ต้องการข้อมูลนำเข้า เป็นคู่ประโยคในลักษณะใด?
<Question
choices={[
{
text: "Tokens_of_sentence_1 [SEP] Tokens_of_sentence_2",
explain: "ณตองใสToken เศษชื่ [SEP] เพื่อแยกระหวางคู่ประโยคดวย แตแคี้งไมครบถวนนะ!"
},
{
text: "[CLS] Tokens_of_sentence_1 Tokens_of_sentence_2",
explain: "ณตองใสToken เศษชื่ [CLS] ไวี่นประโยคแรกดวย แตแคี้งไมครบถวนนะ!"
},
{
text: "[CLS] Tokens_of_sentence_1 [SEP] Tokens_of_sentence_2 [SEP]",
explain: "กตอง!",
correct: true
},
{
text: "[CLS] Tokens_of_sentence_1 [SEP] Tokens_of_sentence_2",
explain: "ณตองใสToken เศษชื่ [CLS] ไวี่นประโยคแรก รวมถ Token เศษชื่ [SEP] เพื่อแยกระหวางคู่ประโยค แตแคี้งไมครบถวนนะ!"
}
]}
/>
{#if fw === 'pt'}
### 4. ข้อใดเป็นประโยชน์ที่ได้จากการใช้เมธอด `Dataset.map()`?
<Question
choices={[
{
text: "การเกบผลลพธของฟงกั่นไวใน cache ทำใหณไมองเสยเวลาเพิ่มเตมหากมการรนโคดใหม่",
explain: "ั่นเปนหนึ่งในประโยชนของเมธอดนี้จร วย! แตนไมไดประโยชนแคอนี้อเดยวนะ...",
correct: true
},
{
text: "นสามารถใชmultiprocessing ทำใหประมวลผลไดเรวกวาการใชงกั่นก element แตละตวใน dataset",
explain: "ั่นกเปนหนึ่งในประโยชนของเมธอดนี้ แตนไมไดประโยชนแคอนี้อเดยวนะ..",
correct: true
},
{
text: "นไมไดโหลดเอา dataset ั้งหมดเขาไปใน memory แตจะบนทกผลลพธเมื่อประมวลผล element แตละตวเสร",
explain: "ั่นกเปนหนึ่งในประโยชนของเมธอดนี้ แตนยงมประโยชนานอื่นดวยนะ!",
correct: true
},
]}
/>
### 5. dynamic padding หมายถึงอะไร?
<Question
choices={[
{
text: "หมายถงการเตมขอมลในแตละ batch ใหเทากบขอมลที่ยาวที่ดใน dataset",
explain: "นมการเตมขอมลในแตละ batch นะ แตไมไดเตมใหเทากบขอมลที่ยาวที่ดใน dataset"
},
{
text: "หมายถงการเตมขอมลในแตละ batch ใหเทากบขอมลที่ยาวที่ดใน batch ั้",
explain: "กตอง! คำว \"dynamic\" ี่มาจากการที่ขนาดของแตละ batch ั้นมความแตกตางกนและถกกำหนดเมื่อสรางแตละ batch",
correct: true
},
{
text: "หมายถงการเตมขอมลเพื่อใหแตละประโยคมจำนวน token เทากบประโยคกอนหนาใน dataset.",
explain: "ั่นไมกตองนะ และมนกไมสมเหตสมผลที่จะไปดอมลของประโยคกอนหน เพราะเราจะมการ shuffle อมลระหวางการเทรนโมเดลดวย"
},
]}
/>
### 6. ข้อใดคือหน้าที่ของฟังก์ชั่น collate?
<Question
choices={[
{
text: "เพื่อทำใหั่นใจวาท sequences ใน dataset ความยาวเทาก",
explain: "งกั่ collate ั้นมการจดการเพยงในแตละ batch ไมไดดการทั้ dataset นอกจากนี้เรากำลงพดถงฟงกั่ collate ั่ ไป ไมไดเจาะจงถ DataCollatorWithPadding"
},
{
text: "เพื่อเกบขอมลเขามาทำเป batch อยางเหมาะสม",
explain: "กตอง! ณสามารถใสงกั่ collate เปนอากวเมนตของ DataLoader เราไดใชงกั่ DataCollatorWithPadding ในการเตมขอมลทกตวใน batch ใหความยาวเทาก",
correct: true
},
{
text: "เพื่อประมวลผลขอมลทั้ dataset.",
explain: "ั่นเปนหนาที่ของฟงกั่นประมวลผล (preprocessing) ไมใชหนาที่ของฟงกั่ collate"
},
{
text: "เพื่อต sequences กตวใน dataset.",
explain: "งกั่ collate ั้นมการจดการเพยงในแตละ batch ไมไดดการทั้ dataset และถาคณตองการต (truncating) ณสามารถใชอากวเมนตtruncate ของ tokenizer."
}
]}
/>
### 7. จะเกิดอะไรขึ้นถ้าคุณสร้างออพเจ็กต์ของคลาส `AutoModelForXxx` ตัวหนึ่งซึ่งมี pretrained language model (เช่น `bert-base-uncased`) เพื่อนำไปทำ task ที่แตกต่างไปจาก task ที่เคยเทรนไว้?
<Question
choices={[
{
text: "ไมอะไรเกดขึ้ แตณจะไดบขอความ warning",
explain: "ณจะไดอความ warning แตนไมใชแคั้นนะ!"
},
{
text: "head ของ pretrained model จะถกตดทิ้งไป และจะมการสราง head ใหมใหเหมาะสมก task ั้นขึ้นมาแทนที่",
explain: "กตอง ยกตวอยางเช เมื่อเราใชAutoModelForSequenceClassification bert-base-uncased เราจะไดอความ warnings เพราะ pretrained head ั้นไมใชในการทำ sequence classification นจงถกตดทิ้งและมการสราง head ใหมึ้นมาแทน โดยกำหนดค weights ึ้นแบบสุ่",
correct: true
},
{
text: "head ของ pretrained model จะถกตดทิ้งไป",
explain: "งมกสิ่งหนึ่งที่จะตองเกดขึ้นดวย ลองใหมกครั้งนะ!"
},
{
text: "ไมอะไรเกดขึ้ เนื่องจากเราสามารถ fine tune โมเดลใหทำ task ี่างออกไปได้",
explain: "head ของ pretrained model ไมไดกเทรนมาใหทำ task ี้ เราจงตองตดมนทิ้งไป!"
}
]}
/>
### 8. ข้อใดคือหน้าที่ของ `TrainingArguments`?
<Question
choices={[
{
text: "เพื่อเก hyperparameters กตวที่ใชในการเทรนและประเมนผลโมเดลดวย Trainer",
explain: "กตอง!",
correct: true
},
{
text: "เพื่อกำหนดขนาดของโมเดล",
explain: "ขนาดของโมเดลนั้นจะถกกำหนดโดย model configuration ไมใชTrainingArguments"
},
{
text: "เพื่อเก hyperparameters ี่ใชในการประเมนผลโมเดล",
explain: "ในตวอยางเราไดกำหนดวาจะเกบโมเดลและ checkpoints ไวี่ไหนดวย ลองใหมกครั้!"
},
{
text: "เพื่อเก hyperparameters ี่ใชในการเทรนโมเดล",
explain: "ในตวอยางเราไดใชevaluation_strategy วย นจงสงผลตอการประเมนผลโมเดลดวย ลองใหมกครั้!"
}
]}
/>
### 9. ทำไมคุณจึงควรใช้ไลบรารี่ 🤗 Accelerate?
<Question
choices={[
{
text: "เพื่อเรยกใชโมเดลที่ทำงานไดเรวกว",
explain: "ไมใชนะ ไลบรารี่ 🤗 Accelerate ไมอมลเกี่ยวกบโมเดลเลย"
},
{
text: "นมhigh-level API ใหใชนจงไมองเขยนลปในการเทรนเอง",
explain: "ั้นตอนนั้นเปนการเรยกใชTrainer ไมใชไลบรารี่ 🤗 Accelerate ลองใหมกครั้!"
},
{
text: "วยใหปในการเทรนของคณใชการได distributed setup",
explain: "กตอง! การใช้ 🤗 Accelerate จะชวยใหปในการเทรนของคณใชการไดเมื่อตองเทรนดวย GPUs หร TPUs หลาย ",
correct: true
},
{
text: "นมงกั่ optimization ใหเลอกใชมากกว",
explain: "ไมใชนะ ไลบรารี่ 🤗 Accelerate ไมงกั่ optimization เลย"
}
]}
/>
{:else}
### 4. จะเกิดอะไรขึ้นถ้าคุณสร้างออพเจ็กต์ของคลาส `AutoModelForXxx` ตัวหนึ่งซึ่งมี pretrained language model (เช่น `bert-base-uncased`) เพื่อนำไปทำ task ที่แตกต่างไปจาก task ที่เคยเทรนไว้?
<Question
choices={[
{
text: "ไมอะไรเกดขึ้ แตณจะไดบขอความ warning",
explain: "ณจะไดอความ warning แตนไมใชแคั้นนะ!"
},
{
text: "head ของ pretrained model จะถกตดทิ้งไป และจะมการสราง head ใหมใหเหมาะสมก task ั้นขึ้นมาแทนที่",
explain: "กตอง ยกตวอยางเช เมื่อเราใชAutoModelForSequenceClassification bert-base-uncased เราจะไดอความ warnings เพราะ pretrained head ั้นไมใชในการทำ sequence classification นจงถกตดทิ้งและมการสราง head ใหมึ้นมาแทน โดยกำหนดค weights ึ้นแบบสุ่",
correct: true
},
{
text: "head ของ pretrained model จะถกตดทิ้งไป",
explain: "งมกสิ่งหนึ่งที่จะตองเกดขึ้นดวย ลองใหมกครั้งนะ!"
},
{
text: "ไมอะไรเกดขึ้ เนื่องจากเราสามารถ fine tune โมเดลใหทำ task ี่างออกไปได้",
explain: "head ของ pretrained model ไมไดกเทรนมาใหทำ task ี้ เราจงตองตดมนทิ้งไป!"
}
]}
/>
### 5. โมเดล TensorFlow จาก `transformers` นั้นเป็นโมเดล Keras อยู่แล้ว การที่เป็นแบบนี้นั้นมีประโยชน์อะไรบ้าง?
<Question
choices={[
{
text: "โมเดลจะทำงานก TPU ไดเลยทนที",
explain: "เกอบแล! นยงตองปรบแกกเลกนอย ยกตวอยางเช ณจะตองรนทกอยางใน TPUStrategy scope รวมถงการ initialize โมเดลดวย"
},
{
text: "ณสามารถใชประโยชนจากเมธอดที่อยู่แลวอยางเช compile(), fit() และ predict()",
explain: "กตอง! เมื่อคณมอม การเทรนกไมยาก แคองทำงานเพิ่มอกนดเดยวเทานั้",
correct: true
},
{
text: "ณจะไดเรยนวใชKeras และ transformers.",
explain: "กนะ แตเราอยากไดคำตอบอื่ :)",
correct: true
},
{
text: "ณจะสามารถคำนวณ metrics ี่เกี่ยวของก dataset ไดโดยงาย",
explain: "Keras ั้นชวยในการเทรนและประเมนผลโมเดล แตไมไดวยคำนวณ metrics ี่เกี่ยวของก dataset"
}
]}
/>
### 6. คุณสามารถสร้าง metric ของคุณเองได้อย่างไร?
<Question
choices={[
{
text: "โดยการสรางคลาสยอยของ tf.keras.metrics.Metric.",
explain: "เยี่ยมเลย!",
correct: true
},
{
text: "ใชKeras functional API.",
explain: "ลองใหมกครั้!"
},
{
text: "โดยการใชcallable วย signature metric_fn(y_true, y_pred).",
explain: "กตอง!",
correct: true
},
{
text: "ใชgoogle นหาวี",
explain: "ั่นไมใชคำตอบที่เราตองการนะ แตนกาจะชวยคณหาวไดจร ",
correct: true
}
]}
/>
{/if}

Xet Storage Details

Size:
19.6 kB
·
Xet hash:
490f94cec4e334c8721535b21f763c8633edd1c3c62adccb0ec841c4f02111c1

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