พื้นฐาน NLP ที่ไม่ควรมองข้าม: เข้าใจ Bag of Words ก่อนก้าวสู่ยุค LLM

Bag of Words (BoW) ถือเป็นรากฐานสำคัญ ที่ช่วยให้เข้าใจแนวคิดพื้นฐานของการประมวลผลภาษาธรรมชาติ (NLP) ซึ่งนำไปสู่การพัฒนาโมเดล LLM ได้อย่างลึกซึ้งขึ้น
🔤 Bag of Words คืออะไร?
Bag of Words (BoW) คือเทคนิคง่ายๆ ในการแปลง ข้อความ (Text) ให้กลายเป็น ข้อมูลตัวเลข (Vector) ที่คอมพิวเตอร์สามารถนำไปวิเคราะห์หรือใช้ในโมเดล Machine Learning ได้
💡 แนวคิดหลัก
- มองข้อความเหมือน “ถุงคำ” (Bag of Words)
- สนใจแค่ คำว่าอะไรปรากฏบ้าง และ ปรากฏกี่ครั้ง
- ไม่สนลำดับคำ หรือไวยากรณ์
🧠 ทำงานยังไง?
ตัวอย่างง่าย
สมมติเรามี 3 ประโยค
- “แมว น่ารัก”
- “หมา น่ารัก”
- “แมว กับ หมา”
1. สร้าง Vocabulary
(รายการคำทั้งหมดที่ไม่ซ้ำกัน):
["แมว", "หมา", "น่ารัก", "กับ"]
2. แปลงแต่ละประโยคเป็น
Vector นับจำนวนคำ
ประโยค |
แมว |
หมา |
น่ารัก |
กับ |
“แมว น่ารัก” |
1 |
0 |
1 |
0 |
“หมา น่ารัก” |
0 |
1 |
1 |
0 |
“แมว กับ หมา” |
1 |
1 |
0 |
1 |
📦 สรุปสั้นๆ
สิ่งที่ BoW ทำได้ดี |
ข้อจำกัดของ BoW |
- เข้าใจง่าย |
- ไม่รู้ลำดับคำ |
- ใช้ได้กับ ML เบื้องต้น |
- ไม่เข้าใจความหมายคำ |
- เร็ว และเบา |
- ข้อมูลเบาบางเมื่อคำเยอะ (Sparse Vector) |
✅ ใช้ BoW ตอนไหน?
- งาน วิเคราะห์ข้อความเบื้องต้น เช่น การจำแนกอารมณ์, สแปมอีเมล
- ใช้คู่กับ Naive Bayes, Logistic Regression, SVM
- เมื่อข้อมูลไม่เยอะมาก และต้องการความเร็ว
หากต้องการแบบเข้าใจบริบทมากขึ้น เช่น “หมาดุ” กับ “ดุหมา” ให้ไปใช้พวก Word Embedding เช่น Word2Vec, หรือ Transformer-based models อย่าง BERT