ขั้นแรก: เปิดตาราง token → เวกเตอร์
ในบทที่ 1 ทุก โทเคน (token)ชิ้นข้อความที่ AI มองเห็นจริงๆ อาจเป็นทั้งคำ ส่วนของคำ หรือตัวอักษรเดียว แต่ละชิ้นมีเลขประจำตัวดูคำศัพท์ทั้งหมด มีเลขประจำตัว (ID) ส่วนในบทที่ 2 ทุก token มี เอ็มเบดดิง (embedding)การแปลงคำหรือข้อความเป็นชุดตัวเลข (เวกเตอร์) ข้อความที่ความหมายใกล้กันจะได้ตัวเลขใกล้กันดูคำศัพท์ทั้งหมด ของตัวเอง สองเรื่องนี้มาต่อกันตรงนี้
โมเดลเก็บ ตาราง embedding ไว้ 1 แถวต่อ 1 token ใน คลังคำของโมเดล (vocabulary)รายการ token ทั้งหมดที่โมเดลรู้จัก โมเดลจริงมีตั้งแต่หลายหมื่นถึงราวสองแสนกว่า tokenดูคำศัพท์ทั้งหมด เลข ID บอกว่าต้องอ่านแถวไหน ขั้นนี้ไม่มีการคำนวณ แค่เปิดตาราง
| token | ID (สมมติ) | เวกเตอร์ (2 มิติ) |
|---|---|---|
| แมว | 17 | (0.9, 0.8) |
| หมา | 42 | (0.8, 0.9) |
| รถ | 108 | (0.9, −0.2) |
แล้วขนาดจริงล่ะ? ถ้าโมเดลในเอกสารของพี่มดมีคลังคำ 128,000 token และแต่ละแถวยาว 4,096 มิติ (dimension)จำนวนตัวเลขในเวกเตอร์ บทเรียนนี้ใช้ 2 มิติให้วาดได้ โมเดลจริงใช้หลายร้อยถึงหลายพันมิติดูคำศัพท์ทั้งหมด ตารางนี้จะมีตัวเลข
หรือราว 524.3 ล้าน ตัว (524.3M) ทุกตัวเป็น พารามิเตอร์ (parameter, weight)ตัวเลขในตารางต่างๆ ของโมเดลที่ถูกปรับระหว่างการฝึก ขนาดอย่าง "8B" หมายถึงมีพารามิเตอร์ราว 8 พันล้านตัวดูคำศัพท์ทั้งหมด ที่โมเดลเรียนรู้มา (หน้า 10 จะใช้ตัวเลขนี้อีกครั้ง)
ข้อจำกัดคือ token เดิมได้แถวเดิมเสมอ "มัน" ได้เวกเตอร์เริ่มต้นเหมือนกันทุกประโยค และไม่รู้ว่าตัวเองอยู่ตรงไหนของประโยค
จึงเหลือสองปัญหา คือ ลำดับคำ (หน้าถัดไป) กับ บริบท (attention ที่คุณรู้จักแล้ว)
ขั้นแรกของโมเดลคือเปิดตาราง: token ID แต่ละตัวได้เวกเตอร์ประจำตัว 1 แถว และตัวเลขในตารางคือพารามิเตอร์ที่โมเดลเรียนรู้มา

มังคุด
ถ้าแต่ละคำได้แถวเดิมเสมอ "แมวกินปลา" กับ "ปลากินแมว" ก็ได้เวกเตอร์ชุดเดียวกันเป๊ะเลยสิ?