LLM: โมเดลภาษาขนาดใหญ่คืออะไร

เทคโนโลยีที่ใหม่กว่าอย่างโมเดลภาษาขนาดใหญ่ (LLM) จะคาดคะเนโทเค็นหรือลำดับโทเค็น ซึ่งบางครั้งอาจเป็นโทเค็นหลายย่อหน้า โปรดทราบว่าโทเค็นอาจเป็นคํา คําย่อย (ชุดย่อยของคํา) หรือแม้แต่อักขระเดียว LLM ทำการคาดการณ์ได้ดีกว่ามากเมื่อเทียบกับโมเดลภาษา N-gram หรือเครือข่ายประสาทแบบซ้ำ

  • LLM มีพารามิเตอร์มากกว่าโมเดลที่เกิดซ้ำ
  • LLM จะรวบรวมบริบทได้มากกว่า

ส่วนนี้จะแนะนำสถาปัตยกรรมที่ใช้กันอย่างแพร่หลายและประสบความสำเร็จมากที่สุดในการสร้าง LLM ซึ่งก็คือ Transformer

Transformer คืออะไร

Transformer เป็นสถาปัตยกรรมล้ำสมัยสําหรับแอปพลิเคชันโมเดลภาษาที่หลากหลาย เช่น การแปล

รูปที่ 1 ข้อมูลที่ป้อนคือ: I am a good dog. เครื่องมือแปลภาษาที่ใช้ Transformer จะเปลี่ยนอินพุตเป็นเอาต์พุต: Je suis un bon chien ซึ่งเป็นประโยคเดียวกันที่แปลเป็นภาษาฝรั่งเศส
รูปที่ 1 แอปพลิเคชันที่ใช้ Transformer ซึ่งแปลจากภาษาอังกฤษเป็นภาษาฝรั่งเศส

 

ทรานฟอร์เมอร์แบบสมบูรณ์ประกอบด้วยโปรแกรมเปลี่ยนไฟล์และโปรแกรมถอดรหัส

เช่น ในโปรแกรมแปล

  • ตัวเข้ารหัสจะประมวลผลข้อความอินพุต (เช่น ประโยคภาษาอังกฤษ) ให้เป็นรูปแบบสื่อกลาง
  • โปรแกรมถอดรหัสจะแปลงการนำเสนอระดับกลางนั้นให้เป็นข้อความเอาต์พุต (เช่น ประโยคภาษาฝรั่งเศสที่เทียบเท่า)
รูปที่ 2 เครื่องมือแปลภาษาที่อิงตาม Transformer เริ่มต้นด้วยตัวเข้ารหัส ซึ่งจะสร้างการนำเสนอระดับกลางของประโยคภาษาอังกฤษ ตัวถอดรหัสจะแปลงการนำเสนอระดับกลางนั้นให้เป็นประโยคเอาต์พุตภาษาฝรั่งเศส
รูปที่ 2 Transformer แบบสมบูรณ์มีทั้งตัวเข้ารหัสและตัวถอดรหัส

 

Self-attention คืออะไร

ในการปรับปรุงบริบท Transformers อาศัยแนวคิดที่เรียกว่าการให้ความสำคัญกับตนเองเป็นอย่างมาก ในแง่หนึ่งแล้ว การใส่ใจตนเองจะถามคำถามต่อไปนี้ในนามของโทเค็นอินพุตแต่ละรายการ

"โทเค็นอินพุตแต่ละรายการส่งผลต่อความถูกต้องในการตีความโทเค็นนี้มากน้อยเพียงใด"

"Self" ใน "Self-Attention" หมายถึงลําดับข้อมูลเข้า กลไกการให้ความสำคัญบางอย่างจะให้ความสำคัญกับความสัมพันธ์ของโทเค็นอินพุตกับโทเค็นในลำดับเอาต์พุต เช่น การแปล หรือกับโทเค็นในลำดับอื่นๆ แต่การให้ความสำคัญกับตนเองจะพิจารณาเฉพาะความสำคัญของความสัมพันธ์ระหว่างโทเค็นในลำดับอินพุต

เพื่อความง่าย เราจะสมมติว่าแต่ละโทเค็นคือคํา และบริบทที่สมบูรณ์คือประโยคเดียว ลองพิจารณาประโยคต่อไปนี้

The animal didn't cross the street because it was too tired.

ประโยคก่อนหน้ามี 11 คำ คําทั้ง 11 คําให้ความสนใจกับคําอื่นๆ อีก 10 คํา โดยคํานึงถึงว่าคําแต่ละคํามีความสําคัญกับตนเองเพียงใด ตัวอย่างเช่น สังเกตว่าประโยคนี้มีคำสรรพนาม it คำสรรพนามมักมีความคลุมเครือ โดยปกติแล้วคำสรรพนาม it จะหมายถึงคำนามหรือวลีนามล่าสุด แต่ในตัวอย่างประโยคนี้ it หมายถึงคำนามใดล่าสุด สัตว์หรือถนน

กลไกการให้ความสำคัญกับตนเองจะพิจารณาความเกี่ยวข้องของคำที่อยู่ใกล้เคียงแต่ละคำกับคำสรรพนาม it รูปที่ 3 แสดงผลลัพธ์ โดยเส้นยิ่งเป็นสีน้ำเงินมาก แสดงว่าคำนั้นมีความเกี่ยวข้องกับคำสรรพนาม it มากขึ้น กล่าวคือ animal มีความสำคัญมากกว่า street สําหรับคำสรรพนาม it

รูปที่ 3 ความเกี่ยวข้องของคําทั้ง 11 คําในประโยคที่ว่า "สัตว์ไม่ข้ามถนนเพราะเหนื่อยมาก" กับคำสรรพนาม "มัน" คําว่า "สัตว์" มีความเกี่ยวข้องกับคำสรรพนาม "มัน" มากที่สุด
รูปที่ 3 การใส่ Self-Attention ลงในคำสรรพนาม it จากบทความ Transformer: A Novel Neural Network Architecture for Language Understanding

 

ในทางกลับกัน สมมติว่าคําสุดท้ายในประโยคมีการเปลี่ยนแปลงดังนี้

The animal didn't cross the street because it was too wide.

ในประโยคที่แก้ไขแล้วนี้ เราหวังว่าการใส่ใจตนเองจะจัดอันดับให้ street มีความเกี่ยวข้องกับคำสรรพนาม it มากกว่า animal

กลไกการใส่ใจตนเองบางกลไกเป็นแบบแบบ 2 ทิศทาง ซึ่งหมายความว่าจะคำนวณคะแนนความเกี่ยวข้องสำหรับโทเค็นที่อยู่ก่อนและอยู่หลังคำที่สนใจ ตัวอย่างเช่น ในรูปที่ 3 โปรดสังเกตว่าระบบจะตรวจสอบคำทั้ง 2 ด้านของ it ดังนั้น กลไกการใส่ใจตนเองแบบ 2 ทิศทางจึงรวบรวมบริบทจากคำที่อยู่ด้านข้างของคำที่สนใจได้ ในทางตรงกันข้าม กลไกการใส่ใจตนเองแบบทิศทางเดียวจะรวบรวมบริบทจากคำด้านข้างของคำที่สนใจได้เท่านั้น การใส่ใจตนเองแบบ 2 ทิศทางมีประโยชน์อย่างยิ่งในการสร้างการนําเสนอทั้งลําดับ ขณะที่แอปพลิเคชันที่สร้างลําดับทีละโทเค็นต้องใช้การใส่ใจตนเองแบบทิศทางเดียว ด้วยเหตุนี้ โปรแกรมเข้ารหัสจึงใช้การใส่ใจตนเองแบบ 2 ทิศทาง ส่วนโปรแกรมถอดรหัสจะใช้แบบทิศทางเดียว

การใส่ใจตนเองแบบหลายหัวคืออะไร

โดยปกติแล้วแต่ละเลเยอร์การใส่ใจตนเองจะประกอบด้วยส่วนหัวการใส่ใจตนเองหลายส่วน เอาต์พุตของเลเยอร์คือการดำเนินการทางคณิตศาสตร์ (เช่น ค่าเฉลี่ยถ่วงน้ำหนักหรือผลคูณจุด) ของเอาต์พุตจากส่วนต่างๆ

เนื่องจากแต่ละเลเยอร์ Self-Attention จะเริ่มต้นด้วยค่าแบบสุ่ม หัวแต่ละหัวจึงสามารถเรียนรู้ความสัมพันธ์ที่แตกต่างกันระหว่างคำแต่ละคำที่สนใจกับคำที่อยู่ใกล้เคียง เช่น เลเยอร์ Self-Attention ที่อธิบายไว้ในส่วนก่อนหน้านี้มุ่งเน้นที่การระบุคำนามที่คำสรรพนาม it อ้างอิงถึง อย่างไรก็ตาม เลเยอร์ Self-Attention อื่นๆ อาจเรียนรู้ความเกี่ยวข้องทางไวยากรณ์ของคำแต่ละคำกับคำอื่นๆ ทั้งหมด หรือเรียนรู้การโต้ตอบอื่นๆ

Why are Transformers so large?

Transformers มีพารามิเตอร์หลายร้อยพันล้านหรือหลายล้านล้านรายการ โดยทั่วไปแล้ว หลักสูตรนี้แนะนําให้สร้างโมเดลที่มีพารามิเตอร์จํานวนน้อยแทนพารามิเตอร์จํานวนมาก ท้ายที่สุดแล้ว โมเดลที่มีพารามิเตอร์จํานวนน้อยจะใช้ทรัพยากรในการทําการคาดการณ์น้อยกว่าโมเดลที่มีพารามิเตอร์จํานวนมาก อย่างไรก็ตาม งานวิจัยแสดงให้เห็นว่า Transformer ที่มีพารามิเตอร์มากกว่าทำงานได้ดีกว่า Transformer ที่มีพารามิเตอร์น้อยกว่าอย่างสม่ำเสมอ

แต่ LLM สร้างข้อความได้อย่างไร

คุณได้เห็นว่านักวิจัยฝึก LLM ให้คาดเดาคำที่ขาดหายไป 1-2 คำอย่างไร และคุณอาจไม่ประทับใจ ท้ายที่สุดแล้ว การคาดคะเนคำ 1-2 คำก็ถือเป็นฟีเจอร์เติมข้อความอัตโนมัติที่ฝังอยู่ในซอฟต์แวร์ข้อความ อีเมล และซอฟต์แวร์การเขียนต่างๆ คุณอาจสงสัยว่า LLM สามารถสร้างประโยค ย่อหน้า หรือแม้แต่บทกวีไฮกุเกี่ยวกับการเก็งกำไรได้อย่างไร

อันที่จริงแล้ว LLM นั้นเป็นกลไกการเติมข้อความอัตโนมัติที่สามารถคาดคะเน (เติม) โทเค็นหลายพันรายการโดยอัตโนมัติ ตัวอย่างเช่น ลองดูประโยคต่อไปนี้ followed by a masked sentence

My dog, Max, knows how to perform many traditional dog tricks.
___ (masked sentence)

LLM สามารถสร้างความน่าจะเป็นของประโยคที่มีการปกปิดได้ ซึ่งรวมถึงข้อมูลต่อไปนี้

Probability คํา
3.1% เช่น สุนัขสามารถนั่ง อยู่ และพลิกตัว
2.9% เช่น สุนัขรู้วิธีนั่ง อยู่ และพลิกตัว

LLM ที่มีขนาดใหญ่พอสามารถสร้างความน่าจะเป็นของย่อหน้าและเรียงความทั้งเรื่อง คุณสามารถมองว่าคําถามของผู้ใช้ต่อ LLM เป็นประโยค "ที่ระบุ" ตามด้วยมาสก์สมมติ เช่น

User's question: What is the easiest trick to teach a dog?
LLM's response:  ___

LLM จะสร้างความน่าจะเป็นสําหรับคําตอบที่เป็นไปได้ต่างๆ

อีกตัวอย่างหนึ่งคือ LLM ที่ผ่านการฝึกด้วย "โจทย์ปัญหา" ทางคณิตศาสตร์จํานวนมากอาจดูเหมือนกำลังใช้เหตุผลทางคณิตศาสตร์ที่ซับซ้อน อย่างไรก็ตาม LLM เหล่านั้นเป็นเพียงการเติมข้อความอัตโนมัติในพรอมต์โจทย์ภาษา

ประโยชน์ของ LLM

LLM สามารถสร้างข้อความที่ชัดเจนและเข้าใจง่ายสําหรับกลุ่มเป้าหมายที่หลากหลาย LLM สามารถคาดการณ์งานที่ได้รับการฝึกฝนอย่างชัดแจ้ง นักวิจัยบางคนอ้างว่า LLM สามารถทำนายอินพุตที่ไม่ได้ผ่านการฝึกอย่างชัดแจ้งด้วย แต่นักวิจัยคนอื่นๆ ได้โต้แย้งการกล่าวอ้างนี้

ปัญหาเกี่ยวกับ LLM

การฝึกอบรม LLM นั้นมีปัญหาหลายประการ ซึ่งรวมถึง

  • รวบรวมชุดข้อมูลการฝึกอบรมขนาดใหญ่
  • ใช้เวลาหลายเดือนและใช้ทรัพยากรการประมวลผลและไฟฟ้าอย่างมหาศาล
  • การแก้ปัญหาเกี่ยวกับการทำงานแบบขนาน

การใช้ LLM เพื่ออนุมานการคาดการณ์จะทำให้เกิดปัญหาต่อไปนี้

  • LLM เพ้อฝัน ซึ่งหมายความว่าการคาดการณ์มักมีข้อผิดพลาด
  • LLM ใช้ทรัพยากรการประมวลผลและไฟฟ้าเป็นจำนวนมาก โดยทั่วไปแล้ว การฝึก LLM ด้วยชุดข้อมูลขนาดใหญ่จะลดปริมาณทรัพยากรที่จําเป็นสําหรับการอนุมาน แม้ว่าชุดข้อมูลขนาดใหญ่จะต้องใช้ทรัพยากรการฝึกมากกว่า
  • LLM อาจมีอคติทุกประเภทเช่นเดียวกับโมเดล ML ทั้งหมด

แบบฝึกหัด: ทดสอบความเข้าใจ

สมมติว่า Transformer ได้รับการฝึกจากเอกสาร 1, 000 ล้านรายการ ซึ่งรวมถึงเอกสารหลายพันรายการที่มีคำ elephant อย่างน้อย 1 รายการ ข้อความใดต่อไปนี้น่าจะเป็นไปได้
ต้นอะคาเซีย ซึ่งเป็นอาหารสำคัญของช้างจะค่อยๆ ได้รับคะแนนการดึงดูดความสนใจตนเองสูงเมื่อใช้ร่วมกับคำว่าช้าง
ได้ ซึ่งจะช่วยให้ Transformer ตอบคําถามเกี่ยวกับอาหารของช้างได้
Transformer จะเชื่อมโยงคําว่า elephant กับสำนวนต่างๆ ที่มีคําว่า elephant
ใช่ ระบบจะเริ่มแนบคะแนนการสนใจตนเองสูงระหว่างคำ elephant กับคำอื่นๆ ในสำนวนเกี่ยวกับช้าง
Transformer จะค่อยๆ เรียนรู้ที่จะไม่สนใจการใช้คำ elephant ในข้อมูลการฝึกแบบเสียดสีหรือแดกดัน
Transformer ขนาดใหญ่พอที่ผ่านการฝึกด้วยชุดข้อมูลการฝึกที่ครอบคลุมมากพอจะมีความเชี่ยวชาญในการจดจำการประชด อารมณ์ขัน และการเสียดสี Transformer จึงเรียนรู้จากถ้อยคำประชดประชันและเสียดสีแทนที่จะเพิกเฉย