บทที่ 4 · AI เรียนรู้ยังไง หน้า 7/13 ~3 นาที

ฝึกโมเดล 1 ก้าวด้วยมือ

ลองฝึกเองบ้าง เครื่องคิดเลขในมือถือก็พอ ใช้แค่สองสูตรจากหน้าก่อน:

  • ความชัน = p − y
  • คะแนนใหม่ = z − η × (p − y)

ลองคำนวณเอง

ตอบเป็นตัวเลข (หน่วย %) · คลาดเคลื่อนได้ ±0.5% · พิมพ์ 0.25 หรือ 25 ก็ได้

ประโยค "แมวชอบกิน ___" ได้คะแนน (คะแนนดิบ (logit)คะแนนที่โมเดลให้กับทุก token ว่าเข้ากับบริบทแค่ไหน ติดลบได้ และยังไม่ใช่ความน่าจะเป็นดูคำศัพท์ทั้งหมด) ปลา 3, ข้าว 2, หนู 1, รถ −1 ซึ่ง softmax เป็นโอกาส 0.6572, 0.2418, 0.0889, 0.0120

สมมติข้อความจริงในข้อมูลฝึกคือ "แมวชอบกินข้าว" ให้ฝึก 1 ก้าวด้วย แล้วหาโอกาสใหม่ของ ข้าว เป็นกี่ % (ทศนิยม 1 ตำแหน่ง หรือตอบเป็น 0.xxx ก็ได้)

คำใบ้ (3)
  1. ความชัน โดย y ของ ข้าว = 1 คำอื่น = 0: ปลา , ข้าว , หนู , รถ
  2. คะแนนใหม่ : ปลา , ข้าว , หนู , รถ แล้วทำ softmax เหมือนบทที่ 1
  3. , , , รวม
ดูเฉลย

คำตอบ: 54.3%

= 54.3% (ปลา 35.9%, หนู 8.6%, รถ 1.3% รวมได้ 100.1% เพราะปัดเศษ)

ก้าวเดียว ข้าวพุ่งจาก 24.2% เป็น 54.3% และ loss ลดจาก 1.4197 เหลือราว 0.61 สังเกตว่า ปลา โดนกดลงแรงที่สุด (คะแนนลด 0.6572) เพราะเป็นคำที่โมเดลมั่นใจผิดมากที่สุด

ฝึก 1 ก้าว = คำนวณ p − y แล้วลบออกจากคะแนน คำเฉลยได้โอกาสเพิ่ม คำอื่นเสียโอกาสไป

โมเดลจริงทำแบบนี้กับทุกตำแหน่งพร้อมกัน แล้วส่งย้อนไปปรับพารามิเตอร์ทุกตัว

มังคุด มาสคอตมังคุด

มังคุด

ถ้าฝึกประโยค "แมวชอบกินข้าว" ซ้ำไปเรื่อยๆ ข้าวจะได้ 100% เลยมั้ย?