เรื่องเล่าจากโลก LLMs: พาไปส่องโครงสร้างภายในของโมเดล AI ยักษ์ยุคใหม่
7 ปีผ่านไปจาก GPT-2 ถึงวันนี้ แม้โมเดลจะดูคล้ายกันมาก แต่ภายใต้ “กลไกเล็ก ๆ” กลับมีการเปลี่ยนแปลงครั้งใหญ่ในเรื่องประสิทธิภาพและหน่วยความจำ เช่น:
- เปลี่ยนจาก Multi-Head Attention (MHA) เป็น Grouped-Query Attention (GQA)
- ใช้ Multi-Head Latent Attention (MLA) ในบางโมเดล เช่น DeepSeek V3
- การใช้ Mixture-of-Experts (MoE) เพื่อเพิ่มพารามิเตอร์โดยไม่เพิ่มต้นทุน inference
- การปรับตำแหน่งของ Normalization Layer เพื่อให้โมเดลเสถียรขึ้น
- ใช้ Sliding Window Attention และ QK-Norm เพื่อประหยัด KV cache และเร่งการเรียนรู้
- ลดขนาดโมเดลโดยยังให้ความสามารถสูง เช่น SmolLM3 กับ Gemma 3n
DeepSeek V3 ใช้ Multi-Head Latent Attention (MLA) แทน GQA เพื่อประหยัด KV cache
ขณะเดียวกันยังให้ผลลัพธ์ดีกว่า MHA และใช้พารามิเตอร์น้อยลง
MLA แม้มีผลดี แต่ยังใหม่และซับซ้อนในการ implement
ต้องใช้การบีบอัดและ projection ซึ่งเพิ่มขั้นตอนในการ inference
DeepSeek V3 ใช้ Mixture-of-Experts (MoE) ที่มี 256 expert layers
ใช้เพียง 9 expert ต่อ token ขณะ inference ทำให้ประหยัดพลังงาน
การใช้ MoE ทำให้ parameter ทั้งหมดเยอะมาก แม้จะใช้จริงเพียงส่วนน้อย
หากระบบ routing ไม่ดีหรือไม่เสถียร อาจเกิด undertraining ในบาง expert
OLMo 2 ใช้ Post-Norm แบบใหม่ และเพิ่ม QK-Norm ภายใน attention block
ช่วยเสถียรภาพในการฝึกและลด loss
QK-Norm และการสลับ Pre/Post-Norm ต้องทดลองอย่างระวัง
ถ้าใช้ผิดจังหวะอาจทำให้ training loss แปรปรวน
Gemma 3 ใช้ Sliding Window Attention เพื่อลดการใช้หน่วยความจำ
ลดขนาด window เหลือ 1024 token และมี Global Attention เฉพาะบางชั้น
Sliding Window Attention ลด memory แต่ไม่ลด latency เสมอไป
เพราะยังต้องประมวลผลแบบ local ซึ่งไม่สามารถใช้ FlashAttention ได้เต็มที่
Gemma 3n ใช้ Per-Layer Embedding เพื่อให้ inference บนอุปกรณ์เล็ก
แยก parameter บางส่วนไว้บน CPU หรือ SSD แล้วโหลดตามต้องการ
Per-Layer Embedding ทำให้พารามิเตอร์ถูกสตรีมจากอุปกรณ์ภายนอก
ถ้า bandwidth หรือ latency สูงเกินไปจะกระทบต่อการ inference อย่างหนัก
Mistral Small 3.1 เลิกใช้ Sliding Attention เพื่อรองรับ FlashAttention แบบเต็ม
ทำให้ inference เร็วขึ้นแม้จะมีพารามิเตอร์ใกล้เคียงกับ Gemma 3
Llama 4 ใช้ MoE แบบ alternated (สลับชั้น MoE กับ Dense)
Active parameter มีแค่ 17B แม้ model จะมี 400B
Qwen3 มีรุ่น dense ขนาดเล็กมาก (เช่น 0.6B) และ MoE ขนาดใหญ่ถึง 235B
รุ่น MoE ไม่มี shared expert แต่ยังใช้ GQA เหมือนรุ่นก่อน
SmolLM3 ใช้ NoPE (No Positional Embeddings) แบบไม่ระบุตำแหน่งเลย
แสดงให้เห็นว่าไม่ต้องใช้ embedding ก็สามารถเรียนรู้ลำดับได้บางส่วน
การไม่มี Positional Embedding (เช่น NoPE) อาจกระทบโมเดลใน task ที่ต้องอิงลำดับ
เช่นการสรุปเนื้อหายาว หรือการจัดเรียงข้อมูลตามเวลา
https://magazine.sebastianraschka.com/p/the-big-llm-architecture-comparison
7 ปีผ่านไปจาก GPT-2 ถึงวันนี้ แม้โมเดลจะดูคล้ายกันมาก แต่ภายใต้ “กลไกเล็ก ๆ” กลับมีการเปลี่ยนแปลงครั้งใหญ่ในเรื่องประสิทธิภาพและหน่วยความจำ เช่น:
- เปลี่ยนจาก Multi-Head Attention (MHA) เป็น Grouped-Query Attention (GQA)
- ใช้ Multi-Head Latent Attention (MLA) ในบางโมเดล เช่น DeepSeek V3
- การใช้ Mixture-of-Experts (MoE) เพื่อเพิ่มพารามิเตอร์โดยไม่เพิ่มต้นทุน inference
- การปรับตำแหน่งของ Normalization Layer เพื่อให้โมเดลเสถียรขึ้น
- ใช้ Sliding Window Attention และ QK-Norm เพื่อประหยัด KV cache และเร่งการเรียนรู้
- ลดขนาดโมเดลโดยยังให้ความสามารถสูง เช่น SmolLM3 กับ Gemma 3n
DeepSeek V3 ใช้ Multi-Head Latent Attention (MLA) แทน GQA เพื่อประหยัด KV cache
ขณะเดียวกันยังให้ผลลัพธ์ดีกว่า MHA และใช้พารามิเตอร์น้อยลง
MLA แม้มีผลดี แต่ยังใหม่และซับซ้อนในการ implement
ต้องใช้การบีบอัดและ projection ซึ่งเพิ่มขั้นตอนในการ inference
DeepSeek V3 ใช้ Mixture-of-Experts (MoE) ที่มี 256 expert layers
ใช้เพียง 9 expert ต่อ token ขณะ inference ทำให้ประหยัดพลังงาน
การใช้ MoE ทำให้ parameter ทั้งหมดเยอะมาก แม้จะใช้จริงเพียงส่วนน้อย
หากระบบ routing ไม่ดีหรือไม่เสถียร อาจเกิด undertraining ในบาง expert
OLMo 2 ใช้ Post-Norm แบบใหม่ และเพิ่ม QK-Norm ภายใน attention block
ช่วยเสถียรภาพในการฝึกและลด loss
QK-Norm และการสลับ Pre/Post-Norm ต้องทดลองอย่างระวัง
ถ้าใช้ผิดจังหวะอาจทำให้ training loss แปรปรวน
Gemma 3 ใช้ Sliding Window Attention เพื่อลดการใช้หน่วยความจำ
ลดขนาด window เหลือ 1024 token และมี Global Attention เฉพาะบางชั้น
Sliding Window Attention ลด memory แต่ไม่ลด latency เสมอไป
เพราะยังต้องประมวลผลแบบ local ซึ่งไม่สามารถใช้ FlashAttention ได้เต็มที่
Gemma 3n ใช้ Per-Layer Embedding เพื่อให้ inference บนอุปกรณ์เล็ก
แยก parameter บางส่วนไว้บน CPU หรือ SSD แล้วโหลดตามต้องการ
Per-Layer Embedding ทำให้พารามิเตอร์ถูกสตรีมจากอุปกรณ์ภายนอก
ถ้า bandwidth หรือ latency สูงเกินไปจะกระทบต่อการ inference อย่างหนัก
Mistral Small 3.1 เลิกใช้ Sliding Attention เพื่อรองรับ FlashAttention แบบเต็ม
ทำให้ inference เร็วขึ้นแม้จะมีพารามิเตอร์ใกล้เคียงกับ Gemma 3
Llama 4 ใช้ MoE แบบ alternated (สลับชั้น MoE กับ Dense)
Active parameter มีแค่ 17B แม้ model จะมี 400B
Qwen3 มีรุ่น dense ขนาดเล็กมาก (เช่น 0.6B) และ MoE ขนาดใหญ่ถึง 235B
รุ่น MoE ไม่มี shared expert แต่ยังใช้ GQA เหมือนรุ่นก่อน
SmolLM3 ใช้ NoPE (No Positional Embeddings) แบบไม่ระบุตำแหน่งเลย
แสดงให้เห็นว่าไม่ต้องใช้ embedding ก็สามารถเรียนรู้ลำดับได้บางส่วน
การไม่มี Positional Embedding (เช่น NoPE) อาจกระทบโมเดลใน task ที่ต้องอิงลำดับ
เช่นการสรุปเนื้อหายาว หรือการจัดเรียงข้อมูลตามเวลา
https://magazine.sebastianraschka.com/p/the-big-llm-architecture-comparison
🎙️ เรื่องเล่าจากโลก LLMs: พาไปส่องโครงสร้างภายในของโมเดล AI ยักษ์ยุคใหม่
7 ปีผ่านไปจาก GPT-2 ถึงวันนี้ แม้โมเดลจะดูคล้ายกันมาก แต่ภายใต้ “กลไกเล็ก ๆ” กลับมีการเปลี่ยนแปลงครั้งใหญ่ในเรื่องประสิทธิภาพและหน่วยความจำ เช่น:
- เปลี่ยนจาก Multi-Head Attention (MHA) เป็น Grouped-Query Attention (GQA)
- ใช้ Multi-Head Latent Attention (MLA) ในบางโมเดล เช่น DeepSeek V3
- การใช้ Mixture-of-Experts (MoE) เพื่อเพิ่มพารามิเตอร์โดยไม่เพิ่มต้นทุน inference
- การปรับตำแหน่งของ Normalization Layer เพื่อให้โมเดลเสถียรขึ้น
- ใช้ Sliding Window Attention และ QK-Norm เพื่อประหยัด KV cache และเร่งการเรียนรู้
- ลดขนาดโมเดลโดยยังให้ความสามารถสูง เช่น SmolLM3 กับ Gemma 3n
✅ DeepSeek V3 ใช้ Multi-Head Latent Attention (MLA) แทน GQA เพื่อประหยัด KV cache
➡️ ขณะเดียวกันยังให้ผลลัพธ์ดีกว่า MHA และใช้พารามิเตอร์น้อยลง
‼️ MLA แม้มีผลดี แต่ยังใหม่และซับซ้อนในการ implement
⛔ ต้องใช้การบีบอัดและ projection ซึ่งเพิ่มขั้นตอนในการ inference
✅ DeepSeek V3 ใช้ Mixture-of-Experts (MoE) ที่มี 256 expert layers
➡️ ใช้เพียง 9 expert ต่อ token ขณะ inference ทำให้ประหยัดพลังงาน
‼️ การใช้ MoE ทำให้ parameter ทั้งหมดเยอะมาก แม้จะใช้จริงเพียงส่วนน้อย
⛔ หากระบบ routing ไม่ดีหรือไม่เสถียร อาจเกิด undertraining ในบาง expert
✅ OLMo 2 ใช้ Post-Norm แบบใหม่ และเพิ่ม QK-Norm ภายใน attention block
➡️ ช่วยเสถียรภาพในการฝึกและลด loss
‼️ QK-Norm และการสลับ Pre/Post-Norm ต้องทดลองอย่างระวัง
⛔ ถ้าใช้ผิดจังหวะอาจทำให้ training loss แปรปรวน
✅ Gemma 3 ใช้ Sliding Window Attention เพื่อลดการใช้หน่วยความจำ
➡️ ลดขนาด window เหลือ 1024 token และมี Global Attention เฉพาะบางชั้น
‼️ Sliding Window Attention ลด memory แต่ไม่ลด latency เสมอไป
⛔ เพราะยังต้องประมวลผลแบบ local ซึ่งไม่สามารถใช้ FlashAttention ได้เต็มที่
✅ Gemma 3n ใช้ Per-Layer Embedding เพื่อให้ inference บนอุปกรณ์เล็ก
➡️ แยก parameter บางส่วนไว้บน CPU หรือ SSD แล้วโหลดตามต้องการ
‼️ Per-Layer Embedding ทำให้พารามิเตอร์ถูกสตรีมจากอุปกรณ์ภายนอก
⛔ ถ้า bandwidth หรือ latency สูงเกินไปจะกระทบต่อการ inference อย่างหนัก
✅ Mistral Small 3.1 เลิกใช้ Sliding Attention เพื่อรองรับ FlashAttention แบบเต็ม
➡️ ทำให้ inference เร็วขึ้นแม้จะมีพารามิเตอร์ใกล้เคียงกับ Gemma 3
✅ Llama 4 ใช้ MoE แบบ alternated (สลับชั้น MoE กับ Dense)
➡️ Active parameter มีแค่ 17B แม้ model จะมี 400B
✅ Qwen3 มีรุ่น dense ขนาดเล็กมาก (เช่น 0.6B) และ MoE ขนาดใหญ่ถึง 235B
➡️ รุ่น MoE ไม่มี shared expert แต่ยังใช้ GQA เหมือนรุ่นก่อน
✅ SmolLM3 ใช้ NoPE (No Positional Embeddings) แบบไม่ระบุตำแหน่งเลย
➡️ แสดงให้เห็นว่าไม่ต้องใช้ embedding ก็สามารถเรียนรู้ลำดับได้บางส่วน
‼️ การไม่มี Positional Embedding (เช่น NoPE) อาจกระทบโมเดลใน task ที่ต้องอิงลำดับ
⛔ เช่นการสรุปเนื้อหายาว หรือการจัดเรียงข้อมูลตามเวลา
https://magazine.sebastianraschka.com/p/the-big-llm-architecture-comparison
0 Comments
0 Shares
62 Views
0 Reviews