
นักเขียนด้านเทคโนโลยี AI ชื่อดัง Sebastian Raschka ได้เผยแพร่ “แกลเลอรีสถาปัตยกรรม LLM” เมื่อเร็วๆ นี้ ซึ่งได้รับความสนใจและคำชมเชยอย่างกว้างขวางในชุมชน AI

รูปที่ 1: แกลเลอรีแผนผังสถาปัตยกรรม LLM และภาพรวมการ์ดโมเดลภาพ
แกลเลอรีนี้ได้รับความนิยมอย่างมาก และ Raschka ก็ได้เริ่มผลิตโปสเตอร์จริงร่วมกับพันธมิตร ซึ่งมียอดขายดีในปัจจุบัน

รูปที่ 2: เวอร์ชันโปสเตอร์แกลเลอรีสถาปัตยกรรมที่มีวัตถุสุ่มสำหรับเปรียบเทียบขนาด
หลังจากผ่านไปเพียงสัปดาห์กว่า Raschka ได้เผยแพร่บล็อกสำคัญอีกชิ้นชื่อ “คู่มือการมองเห็นความหลากหลายของ Attention ใน LLM สมัยใหม่” ในบทความนี้ เขาได้ทบทวนอย่างเป็นระบบถึงความหลากหลายของ Attention ทั้งหมดที่ได้รับการพัฒนาขึ้นในช่วงหลายปีที่ผ่านมาและถูกใช้ในสถาปัตยกรรมโอเพ่นเวทที่รู้จักกันดี เขากล่าวว่า “เป้าหมายของฉันคือทำให้ชุดนี้เป็นทั้งแหล่งอ้างอิงและแหล่งเรียนรู้แบบเบา”

ตอนนี้ เรามาดูเนื้อหาหลักของบล็อกนี้กัน:
1. Multi-Head Attention (MHA)
กลไก Self-Attention อนุญาตให้แต่ละโทเค็นในลำดับสนใจโทเค็นอื่นๆ ที่มองเห็นได้ทั้งหมด มอบน้ำหนักให้กับพวกมัน และใช้น้ำหนักเหล่านี้เพื่อสร้างการแสดงแทนอินพุตใหม่ที่ตระหนักถึงบริบท
Multi-Head Attention คือการนำมาตรฐานใน Transformer มันรันหัว Self-Attention หลายหัวพร้อมกับการฉายภาพการเรียนรู้ที่แตกต่างกันแบบขนานกัน จากนั้นรวมผลลัพธ์ของพวกมันเข้าด้วยกันเป็นการแสดงแทนที่สมบูรณ์ยิ่งขึ้น

รูปที่ 3: สถาปัตยกรรม MHA โดยใช้ Olmo 2 เป็นตัวอย่าง
ส่วนต่อไปนี้จะแนะนำกลไก Self-Attention โดยย่อก่อน เพื่อวางรากฐานสำหรับการทำความเข้าใจแนวคิด Attention ที่เกี่ยวข้องในภายหลัง เช่น Grouped Query Attention, Sliding Window Attention เป็นต้น
สถาปัตยกรรมตัวอย่าง: GPT-2, OLMo 2 7B และ OLMo 3 7B
1.2 พื้นหลังทางประวัติศาสตร์และต้นกำเนิดของกลไก Attention
การปรากฏตัวของกลไก Attention นั้นเกิดขึ้นก่อน Transformer และ MHA พื้นหลังโดยตรงของมันคือสถาปัตยกรรม RNN แบบ Encoder-Decoder สำหรับการแปลภาษา
ในระบบยุคแรกๆ เหล่านี้ RNN Encoder อ่านประโยคต้นทางทีละโทเค็น และบีบอัดมันเป็นลำดับสถานะซ่อน หรือลดรูปเป็นสถานะสุดท้ายเดียว RNN Decoder ต้องสร้างประโยคเป้าหมายจากบทสรุปอันจำกัดนี้ วิธีนี้ใช้ได้กับประโยคสั้นๆ ง่ายๆ แต่จะกลายเป็นคอขวดที่ชัดเจนทันทีที่ข้อมูลที่จำเป็นสำหรับการสร้างคำถัดไปอยู่ที่ตำแหน่งอื่นในประโยคอินพุต
พูดสั้นๆ ข้อจำกัดคือสถานะซ่อนไม่สามารถเก็บข้อมูลหรือบริบทได้ไม่จำกัด และการมองย้อนกลับไปที่ลำดับอินพุตทั้งหมดโดยตรงบางครั้งก็มีประโยชน์มาก
ตัวอย่างการแปลด้านล่างแสดงให้เห็นข้อจำกัดนี้ แม้การเลือกคำเฉพาะจุดหลายๆ แห่งจะดูสมเหตุสมผล แต่การแปลก็อาจล้มเหลวได้เนื่องจากโครงสร้างระดับประโยคถูกละเลย (แผงด้านบนแสดงตัวอย่างการแปลคำต่อคำที่เกินจริง ซึ่งไวยากรณ์ผิดอย่างชัดเจน) ในความเป็นจริง คำถัดไปที่ถูกต้องขึ้นอยู่กับโครงสร้างระดับประโยคและคำต้นทางก่อนหน้าที่เกี่ยวข้องในขั้นตอนนั้น

รูปที่ 4: แม้การเลือกคำเฉพาะจุดหลายแห่งจะดูสมเหตุสมผล การแปลก็อาจล้มเหลวได้เนื่องจากละเลยโครงสร้างประโยค
รูปด้านล่างแสดงให้เห็นการเปลี่ยนแปลงที่กลไก Attention นำมาอย่างชัดเจนยิ่งขึ้น เมื่อ Decoder สร้างโทเค็นเอาต์พุต มันไม่ถูกจำกัดด้วยเส้นทางความจำแบบบีบอัดเดียวอีกต่อไป แต่สามารถมองย้อนกลับไปยังโทเค็นอินพุตที่เกี่ยวข้องกว่าได้โดยตรง

รูปที่ 5: กลไก Attention ทำลายคอขวดของ RNN โดยให้ตำแหน่งเอาต์พุตปัจจุบันมองย้อนกลับไปที่ลำดับอินพุตทั้งหมด
Transformer รักษาแนวคิดหลักของ Attention RNN ที่ได้รับการปรับปรุงนี้ ในขณะที่กำจัดโครงสร้างแบบวนซ้ำออกไป ในเอกสารคลาสสิก “Attention Is All You Need” กลไก Attention เองกลายเป็นกลไกหลักในการประมวลผลลำดับ แทนที่บทบาทเสริมของ RNN Encoder และ Decoder ในอดีต
ใน Transformer กลไกนี้เรียกว่า Self-Attention โดยแต่ละโทเค็นในลำดับจะคำนวณน้ำหนักกับโทเค็นอื่นๆ ทั้งหมด และใช้น้ำหนักเหล่านี้เพื่อผสมข้อมูลให้เป็นการแสดงแทนใหม่ Multi-Head Attention คือการรันกลไกดังกล่าวหลายตัวแบบขนานกัน
1.3 เมทริกซ์ Attention แบบ Masked
สำหรับลำดับที่มี T โทเค็น กลไก Attention ต้องสร้างน้ำหนักหนึ่งแถวสำหรับแต่ละโทเค็น ส่งผลให้เกิดเมทริกซ์ Attention ขนาด T×T
แต่ละแถวตอบคำถามง่ายๆ: เมื่ออัปเดตโทเค็นปัจจุบัน โทเค็นที่มองเห็นได้แต่ละตัวควรมีความสำคัญแค่ไหน? ใน Large Language Model แบบ Decoder-Only ตำแหน่งในอนาคตจะถูกปิดบังด้วย Mask นี่คือเหตุผลที่ส่วนบนขวาของเมทริกซ์ในรูปด้านล่างถูกทำให้เป็นสีเทา
แก่นแท้ของ Self-Attention คือการเรียนรู้รูปแบบน้ำหนักจากโทเค็นไปยังโทเค็นภายใต้ Causal Mask และใช้พวกมันเพื่อสร้างการแสดงแทนโทเค็นที่ตระหนักถึงบริบท

รูปที่ 6: เมทริกซ์ Attention แบบ Masked ที่เป็นรูปธรรม แถวแต่ละแถวสอดคล้องกับโทเค็นหนึ่งตัว แต่ละรายการคือน้ำหนัก Attention โดยรายการของโทเค็นในอนาคตถูกกำจัดออกโดย Causal Mask
1.4 กลไกภายในของ Self-Attention
รูปด้านล่างแสดงให้เห็นว่า Transformer คำนวณเมทริกซ์ Attention A จาก Embedding อินพุต X และใช้มันสร้างอินพุตที่ถูกแปลง Z อย่างไร
โดยที่ Q, K และ V แทน Query, Key และ Value ตามลำดับ Query ของโทเค็นหนึ่งตัวแทนสิ่งที่มันกำลังมองหา Key แทนสิ่งที่แต่ละโทเค็นนำเสนอเพื่อจับคู่ และ Value คือข้อมูลที่จะถูกผสมเข้าไปในเอาต์พุตหลังจากคำนวณน้ำหนัก Attention แล้ว
ขั้นตอนมีดังนี้:
* Wq, Wk และ Wv คือเมทริกซ์น้ำหนักที่ฉายภาพ Embedding อินพุตไปยัง Q, K และ V
* QK^T คำนวณเพื่อสร้างคะแนนความสัมพันธ์จากโทเค็นไปยังโทเค็นดิบ
* ฟังก์ชัน Softmax ทำให้คะแนนเหล่านี้เป็นมาตรฐานเป็นเมทริกซ์ Attention A ที่เราพูดถึงในส่วนที่แล้ว
* นำ A ไปใช้กับ V เพื่อสร้างเมทริกซ์เอาต์พุต Z
สิ่งสำคัญที่ควรทราบคือ เมทริกซ์ Attention ไม่ได้ถูกเขียนด้วยมือ แต่เกิดขึ้นตามธรรมชาติจาก Q, K ผ่านกระบวนการ Softmax

รูปที่ 7: แผนภาพลำดับงาน Attention แบบ Single-Head เต็มรูปแบบ ตั้งแต่ Embedding อินพุต X ไปจนถึงเมทริกซ์ Attention ที่เป็นมาตรฐาน A และการแสดงแทนเอาต์พุต Z
รูปด้านล่างแสดงแนวคิดเดียวกันกับรูปด้านบน ความแตกต่างคือการคำนวณเมทริกซ์ Attention ถูกห่อหุ้มไว้ในกล่อง “Scaled Dot-Product Attention” และการคำนวณถูกขยายสำหรับโทเค็นอินพุตเดียวเท่านั้น ไม่ใช่ทั้งหมด นี่แสดงรูปแบบกะทัดรัดของ Self-Attention แบบ Single-Head ซึ่งจะถูกขยายเป็น Multi-Head Attention ในส่วนถัดไป

รูปที่ 8: แผนภาพกลไก Single Attention Head ชุดการฉายภาพที่เรียนรู้สร้างเมทริกซ์ Attention หนึ่งตัวและสตรีมเอาต์พุตที่ตระหนักถึงบริบท
1.5 จาก Single-Head สู่ Multi-Head Attention
ชุดเมทริกซ์ Wq/Wk/Wv หนึ่งชุดกำหนด Attention Head หนึ่งตัว ซึ่งสร้างเมทริกซ์ Attention หนึ่งตัวและเมทริกซ์เอาต์พุต Z (แนวคิดนี้อธิบายไว้ในส่วนที่แล้ว)
Multi-Head Attention ทำงานหลายหัวดังกล่าวแบบขนานกันอย่างง่ายๆ โดยใช้เมทริกซ์การฉายภาพการเรียนรู้ที่แตกต่างกัน
วิธีนี้มีประสิทธิภาพมาก เพราะหัวที่แตกต่างกันสามารถเชี่ยวชาญการเรียนรู้ความสัมพันธ์ระหว่างโทเค็นประเภทต่างๆ ตัวอย่างเช่น หัวหนึ่งอาจมุ่งเน้นการจับการพึ่งพาในพื้นที่ อีกหัวหนึ่งสนใจความเชื่อมโยงทางความหมายที่กว้างขึ้น และหัวที่สามอาจสนใจโครงสร้างตำแหน่งหรือวากยสัมพันธ์

2. Grouped Query Attention (GQA)
Grouped Query Attention (GQA) เป็นความหลากหลายที่มาจาก Multi-Head Attention (MHA) มาตรฐาน ซึ่งเสนอโดย Joshua Ainslie และคณะในเอกสารปี 2023 “GQA: Training Generalized Multi-Query Transformer Models from Multi-Head Checkpoints”
การออกแบบหลักของมันคือให้ Query Head หลายตัวแชร์ชุดการฉายภาพ Key และ Value เดียวกัน แทนที่จะมี Key และ Value Head อิสระสำหรับแต่ละ Query Head วิธีนี้ลดการใช้หน่วยความจำของ Cache คีย์-ค่า (KV) ระหว่างการอนุมานลงอย่างมาก ในขณะที่ไม่ต้องการการปรับเปลี่ยนสถาปัตยกรรม Decoder ครั้งใหญ่

รูปที่ 10: GQA รักษารูปแบบ Attention โดยรวมที่คล้ายกับ MHA แต่ลดจำนวน Key-Value Head ลงโดยการแชร์พวกมันข้าม Query Head หลายตัว
สถาปัตยกรรมตัวอย่าง
* โมเดลแบบหนาแน่น: Llama 3 8B, Qwen3 4B, Gemma 3 27B, Mistral Small 3.1 24B, SmolLM3 3B, Tiny Aya 3.35B
* โมเดลแบบเบาบาง (Mixture of Experts): Llama 4 Maverick, Qwen3 235B-A22B, Step 3.5 Flash 196B, Sarvam 30B
2.1 เหตุผลที่ GQA เป็นที่นิยม
ในการเปรียบเทียบสถาปัตยกรรม GQA มักถูกมองว่าเป็นทางเลือกมาตรฐานใหม่แทน Multi-Head Attention (MHA) แบบคลาสสิก MHA มาตรฐานให้ Key และ Value อิสระสำหรับแต่ละหัว ซึ่งมีความสามารถในการสร้างแบบจำลองที่ดีกว่า แต่ระหว่างการอนุมานต้องเก็บสถานะทั้งหมดลงใน Cache KV ซึ่งมีค่าใช้จ่ายสูง
GQA รักษา Query Head ไว้ค่อนข้างมาก แต่ลดจำนวน Key-Value Head ลง และให้ Query Head หลายตัวแชร์พวกมัน วิธีนี้ลดปริมาณพารามิเตอร์รวมและปริมาณข้อมูลของ Cache KV และไม่ต้องการการปรับเปลี่ยนการนำไปใช้ที่ซับซ้อนเหมือนกับแผนการเช่น MLA ดังนั้น สำหรับทีมวิจัยและพัฒนาที่ต้องการความสมดุลระหว่างต้นทุนของ MHA กับความซับซ้อนในการนำไปใช้ของแผนการใหม่ๆ เช่น MLA GQA จึงกลายเป็นตัวเลือกที่น่าสนใจมาก
2.2 การประหยัดหน่วยความจำของ GQA
GQA ประหยัดพื้นที่จัดเก็บ KV อย่างมีนัยสำคัญโดยลดจำนวน Key-Value Head ที่ต้องแคชในแต่ละเลเยอร์ลง ประโยชน์จากการประหยัดนี้จะเด่นชัดยิ่งขึ้นเมื่อความยาวลำดับเพิ่มขึ้น
GQA สามารถมองได้ว่าเป็นสเปกตรัม: หากลด Key-Value Head ลงจนเหลือเพียงกลุ่ม Key-Value ที่แชร์กันหนึ่งกลุ่ม มันจะพัฒนาเป็น Multi-Query Attention (MQA) ซึ่งมีต้นทุนต่ำกว่า แต่อาจส่งผลกระทบต่อคุณภาพการสร้างแบบจำลองที่เห็นได้ชัดเจนกว่า จุดสมดุลที่ดีที่สุดมักอยู่ระหว่าง MQA (1 กลุ่มแชร์) กับ MHA (จำนวนกลุ่ม Key-Value เท่ากับจำนวน Query Head) ซึ่งให้การประหยัดแคชที่สำคัญ ในขณะที่ควบคุมการสูญเสียประสิทธิภาพเมื่อเทียบกับ MHA ให้อยู่ในระดับที่ยอมรับได้

รูปที่ 11: การเปรียบเทียบค่าใช้จ่าย Cache KV (ยิ่งต่ำยิ่งดี) เมื่อหน้าต่างบริบทขยายออก การประหยัดของ GQA จะเด่นชัดยิ่งขึ้น
2.3 ความสำคัญที่ยั่งยืนของ GQA
แม้ว่าความหลากหลายที่ก้าวหน้ากว่า เช่น MLA จะได้รับความนิยมมากขึ้นเนื่องจากอาจให้ประสิทธิภาพการสร้างแบบจำลองที่ดีกว่าในระดับประสิทธิภาพ KV ที่เทียบเคียงได้ แต่พวกมันก็เกี่ยวข้องกับการนำไปใช้และการออกแบบสแต็ก Attention ที่ซับซ้อนกว่า
ข้อได้เปรียบของ GQA อยู่ที่ความแข็งแกร่ง ความง่ายในการนำไปใช้และการฝึก (มักต้องการไฮเปอร์พารามิเตอร์ที่ต้องปรับน้อยกว่า) ดังนั้น โมเดลที่เผยแพร่ใหม่บางรุ่นจึงยังเลือกใช้การออกแบบคลาสสิกนี้อย่างจงใจ ตัวอย่างเช่น MiniMax M2.5 และ Nanbeige 4.1 รักษาสถาปัตยกรรมที่เรียบง่ายโดยใช้เฉพาะ GQA ซีรีส์โมเดลของ Sarvam ก็ให้การเปรียบเทียบที่ชัดเจน: โมเดล 30B ของพวกเขาใช้ GQA แบบคลาสสิก ในขณะที่เวอร์ชัน 105B อัปเกรดเป็น MLA

รูปที่ 12: การเปรียบเทียบขนาด Cache KV รวมระหว่าง Sarvam 105B (ใช้ MLA), Sarvam 30B (ใช้ GQA) และโมเดลที่ใช้ MHA มาตรฐาน
3. Multi-Head Latent Attention (MLA)
แรงจูงใจของ Multi-Head Latent Attention (MLA) คล้ายกับ GQA ซึ่งมุ่งลดความต้องการหน่วยความจำของ Cache KV ข้อแตกต่างหลักระหว่างทั้งสองคือ: GQA ประหยัดพื้นที่โดยลดจำนวน Key-Value Head ที่จัดเก็บ ในขณะที่ MLA ทำเช่นนั้น
⚠️ หมายเหตุ: เนื้อหาได้รับการแปลโดย AI และตรวจสอบโดยมนุษย์ หากมีข้อผิดพลาดโปรดแจ้ง
☕ สนับสนุนค่ากาแฟทีมงาน
หากคุณชอบบทความนี้ สามารถสนับสนุนเราได้ผ่าน PromptPay
本文来自网络搜集,不代表คลื่นสร้างอนาคต立场,如有侵权,联系删除。转载请注明出处:https://www.itsolotime.com/th/archives/27108
