2 คะแนน โดย GN⁺ 2025-08-15 | 1 ความคิดเห็น | แชร์ทาง WhatsApp
  • ฝึกโมเดลทรานส์ฟอร์เมอร์สไตล์ GPT ขนาดประมาณ 1.8M พารามิเตอร์ บน MacBook Pro ภายใน 5 นาที โดยใช้โทเค็น TinyStories ราว 20M โทเค็น และทำได้ประมาณ 9.6 perplexity
  • ข้อจำกัดหลักของการ ฝึกภายใน 5 นาที คือขนาดโมเดลและจำนวนโทเค็นที่ประมวลผลได้ โดยเมื่อโมเดลใหญ่ขึ้นจะคอนเวิร์จช้าลงและได้ประโยชน์จากข้อมูลจำนวนน้อยลดลง
  • ในด้าน การเพิ่มประสิทธิภาพ การใช้ MPS ให้ผลดีที่สุด ขณะที่ การเลือกโมเดลขนาดเล็ก มีประสิทธิภาพกว่าการใช้คอมไพล์/ควอนไทซ์/gradient accumulation หรือการใช้ทางเลือกแทน PyTorch
  • ชุดข้อมูลที่เรียบง่ายและสม่ำเสมออย่าง TinyStories ส่งผลเชิงบวกต่อประสิทธิภาพของโมเดลขนาดเล็กมากกว่าข้อมูลแนวสารานุกรม
  • สถาปัตยกรรม ทรานส์ฟอร์เมอร์ ให้ผลดีกว่า LSTM หรือ diffusion ภายใต้เงื่อนไขของขนาดเล็กและเวลาฝึกสั้น

ภาพรวม

บทความนี้นำเสนอผลการทดลองหา โมเดลภาษา AI ที่ให้ประสิทธิภาพสูงสุด ซึ่งสามารถฝึกบนแล็ปท็อป (MacBook Pro) ได้ภายใน 5 นาที พร้อมอินไซต์เกี่ยวกับกลยุทธ์การเทรนที่เหมาะสม การเลือกชุดข้อมูล และสถาปัตยกรรมของโมเดล

สรุปผลการทดลอง

  • ฝึกโมเดลทรานส์ฟอร์เมอร์สไตล์ GPT ขนาดประมาณ 1.8M พารามิเตอร์ ด้วยข้อมูล TinyStories ราว 20M และทำสถิติ 9.6 perplexity
  • ตัวอย่างข้อความที่สร้างได้ยังสั้น แต่คงรูปแบบของเรื่องเล่าที่สอดคล้องกัน และไวยากรณ์ภาษาอังกฤษโดยรวมยังถูกต้อง
  • เน้นย้ำว่าผลลัพธ์ของโมเดลที่ใช้งานได้จริงภายใน 5 นาที นั้นดีกว่าที่คาดไว้

ที่มาของการทดลองและข้อจำกัด

  • การทดลองนี้เริ่มจากความสงสัยเชิงเล่น ๆ ว่าใน สภาพแวดล้อมแบบแล็ปท็อป จะฝึกโมเดลที่ทรงพลังได้เร็วแค่ไหน ซึ่งในทางปฏิบัติอาจไม่สมจริงนัก
  • ตามความเป็นจริงสามารถฝึกโมเดลที่ทรงพลังกว่าได้บน GPU ประสิทธิภาพสูงบนคลาวด์ (เช่น H100) แต่เงื่อนไขจำกัดของการทดลองนี้คือเวลา 5 นาที
  • เมื่อ ขนาดโมเดลใหญ่ขึ้น ความเร็วในการประมวลผลโทเค็นจะลดลง ทำให้ยากที่จะได้ผลลัพธ์ที่ดีภายใน 5 นาที
    • โมเดลที่เล็กเกินไป (เช่น 10K พารามิเตอร์) ไม่สามารถเรียนรู้ความซับซ้อนได้เพียงพอ
    • ช่วงที่ใช้งานได้จริงอยู่ที่ราว 1M~2M พารามิเตอร์
โฆษณา

การเพิ่ม throughput

  • การใช้ MPS (Metal Performance Shaders ของ Apple) ได้ผลดีที่สุด
  • การเพิ่มประสิทธิภาพเชิงคำนวณหลากหลายแบบ เช่น torch.compile, float16, MLX ให้ผลดีน้อยกว่าที่คาด หรือบางกรณีกลับทำให้ประสิทธิภาพลดลง
  • gradient accumulation มีไว้เพื่อจัดการหน่วยความจำ แต่ในทางปฏิบัติกลับทำให้ความเร็วลดลงอย่างมาก
  • โมเดลต้องสามารถอัปเดต weight ได้อย่างรวดเร็วภายในหน่วยความจำภายใน จึงจะมีประสิทธิภาพ

การเลือกชุดข้อมูล

  • เมื่อใช้จำนวนโทเค็นที่จำกัด (ราว 10~20M) แล้วเริ่มจากข้อมูลวิกิภาษาอังกฤษแบบเรียบง่าย เช่น Simple English Wikipedia พบว่าสามารถรักษาความสม่ำเสมอทางไวยากรณ์ได้ แต่ขาดความสอดคล้องด้านความหมาย
    • เน้นคำนามเฉพาะและการเรียงข้อเท็จจริงที่ดูเหมือนฝืน ทำให้มีข้อจำกัดในการสร้างเนื้อหาที่มีความหมายจริง
  • เมื่อใช้ชุดข้อมูล TinyStories ผลลัพธ์มีความสอดคล้องและมีความหมายมากขึ้นอย่างชัดเจน เพราะโครงสร้างเรื่องชัดเจนและภาษาง่าย
    • เป็นเรื่องเล่าระดับเด็ก 4 ขวบ จึงเหมาะให้โมเดลขนาดเล็กเรียนรู้ได้ดี

โทเค็นไนเซอร์และการทำโทเค็น

  • การเทรนโทเค็นไนเซอร์ไม่ถูกนับรวมในเวลา 5 นาที และด้วยขนาดข้อมูลที่เล็ก จึงแทบไม่มีความจำเป็นต้องปรับแต่งมาก
  • การเรียนรู้โทเค็นแบบหลายไบต์ทำให้โมเดลเรียนรู้ง่ายกว่า
โฆษณา

การทดลองสถาปัตยกรรมโมเดล

  • ใช้สถาปัตยกรรม ทรานส์ฟอร์เมอร์ (สไตล์ GPT-2)

    • ปรับไฮเปอร์พารามิเตอร์ เช่น 2~3 เลเยอร์, ฟังก์ชันกระตุ้นแบบ SwiGLU, positional embedding
    • LSTM ให้ประสิทธิภาพใกล้เคียงกัน แต่ทรานส์ฟอร์เมอร์ดีกว่าในแง่ perplexity
    • Dropout, mixture-of-experts เป็นต้น ไม่มีประสิทธิภาพนักเมื่อโมเดลมีขนาดเล็ก
    • Curriculum learning แทบไม่เกิดผล เพราะเวลาฝึกสั้นเกินไป
  • ทดลองใช้ โมเดล diffusion (D3PM)

    • เนื่องจากภาษาธรรมชาติเป็นโทเค็นแบบไม่ต่อเนื่อง กระบวนการ diffusion จึงล้มเหลวและสร้างได้เพียงโทเค็นสุ่มที่ไร้ความหมาย
    • การสร้างโครงสร้างประโยคอย่างรวดเร็วทำได้ยากกว่าเมื่อเทียบกับทรานส์ฟอร์เมอร์หรือ LSTM
    โฆษณา

ความสัมพันธ์ระหว่างขนาดโมเดลกับ throughput โทเค็น/วินาที

  • โมเดลขนาด 1M~2M พารามิเตอร์คือ sweet spot ที่เหมาะที่สุด
    • ถ้าใหญ่เกินไปจะคอนเวิร์จไม่ทันภายใน 5 นาที ถ้าเล็กเกินไปก็จะชนเพดานประสิทธิภาพทันทีหลังเริ่มฝึก
  • Chinchilla scaling law สอดคล้องกับผลการทดลองโดยรวมพอสมควร
    • ขนาดโมเดลที่เหมาะสมคือจำนวนโทเค็นฝึกทั้งหมด/20 และการทดลองนี้ก็ยืนยันแนวโน้มนั้น

บทสรุปและนัยสำคัญ

  • แม้จะมีเวลาสั้นมากและใช้ฮาร์ดแวร์ขนาดเล็ก ก็ยัง สามารถ ฝึกโมเดลสำหรับการเล่าเรื่องที่มีความสอดคล้องได้
  • การฝึก 5 นาทีไม่เหมาะกับการพัฒนาโมเดลทรงพลัง แต่มีความหมายต่อการออกแบบโมเดลขนาดเล็กมาก น้ำหนักเบามาก และการทดลองด้านการปรับแต่งฮาร์ดแวร์กับสถาปัตยกรรม
  • ในอนาคต หาก GPU บนแล็ปท็อปและโครงสร้างโมเดลพัฒนาขึ้น ก็มีความเป็นไปได้ที่ประสิทธิภาพของโมเดลที่ฝึกได้ภายในเวลาเพียงไม่กี่นาทีจะดีขึ้นอีก

1 ความคิดเห็น

 
GN⁺ 2025-08-15
ความคิดเห็นจาก Hacker News
  • อยากดูบรรยายของเขาเกี่ยวกับการเข้ารหัสควอนตัม และสงสัยว่ามีใครรู้ลิงก์ของบรรยายนั้นที่ถูกพูดถึงช่วงต้นวิดีโอบ้างไหม

  • การฝึกโมเดลเล็กแบบปรับให้เหมาะสมมีความสำคัญไม่ใช่แค่ในแง่การเข้าถึงได้ง่าย แต่ยังสำคัญต่อการวิจัยเชิงวิทยาศาสตร์ของ LLM ด้วย เปรียบเหมือนการใช้สิ่งมีชีวิตง่าย ๆ อย่างยีสต์ในงานวิจัยชีววิทยา เราจำเป็นต้องศึกษา transformer ที่เรียบง่ายที่สุดซึ่งยังแสดงพฤติกรรมที่น่าสนใจของโมเดลขนาดใหญ่ เพื่อให้เข้าใจและควบคุมมันได้

    • หนึ่งในพอดแคสต์ที่ประทับใจเมื่อไม่นานมานี้พูดถึงงานวิจัยและชุดข้อมูล TinyStories ซึ่งชุดข้อมูลนี้มีเพียงคำและแนวคิดง่าย ๆ แบบนิทานสำหรับเด็กเล็ก แต่ก็ทำให้โมเดลเล็กสามารถสร้างภาษาอังกฤษที่มีไวยากรณ์ ความหลากหลาย และการให้เหตุผลได้ ตัวพอดแคสต์ที่คุยกับผู้เขียนเองก็อธิบายความสามารถของ LLM ผ่านตัวอย่างการวิจัยขนาดเล็กและควบคุมได้อย่างยอดเยี่ยม ในอุปมาทางชีววิทยานั้น ชุดข้อมูลนี้น่าจะเปรียบได้กับอาหารวุ้น agar ที่เรียบง่ายและควบคุมได้มาก ลิงก์ที่เกี่ยวข้องคือ ตอนพอดแคสต์, งานวิจัย TinyStories

    • หลายบริษัทสามารถใช้โมเดลเล็กร่วมกับชุดข้อมูลภายใน เช่น ประวัติการซื้อของผู้ใช้ เพื่อแก้ปัญหาทางธุรกิจจริงได้ และความก้าวหน้าที่เกิดขึ้นในโมเดลภาษาขนาดใหญ่ก็สามารถนำมาใช้กับปัญหาเล็กได้ตรง ๆ หากสามารถแทนลำดับอินพุตเป็นภาษาที่เฉพาะทางได้

    • เป็นที่รู้กันโดยทั่วไปว่าพฤติกรรมและการปรับให้เหมาะสมที่พบในโมเดลเล็ก มักทำซ้ำในโมเดลใหญ่ได้ไม่ดีนัก

    • สิ่งที่ผู้เขียนทำในที่นี้คือ pretraining ซึ่งปกติเป็นงานของผู้สร้างโมเดลอย่าง Google หรือ Meta ส่วนในภาคธุรกิจ การ fine-tuning หรือไม่ก็ additional pretraining ในระดับที่น้อยกว่านั้น ใช้งานได้จริงกว่ามาก และเขาเน้นว่าผู้เขียนทำสิ่งนี้ด้วยเหตุผลทางวิชาการ

    • สนใจโมเดลที่รันได้เร็วบนโน้ตบุ๊ก แต่ในส่วนของการฝึกนั้นอาจยังใช้เวลาหลายวันหรือมากกว่านั้น

  • คิดว่าน่าจะใช้พลังงานแทนเวลาเป็นเกณฑ์ เช่น ฝึกโมเดลที่ดีที่สุดภายใต้งบพลังงานที่กำหนดเป็น joule แบบนั้นน่าจะเป็นการเปรียบเทียบที่แท้จริงกว่า และจะทำให้การเทียบระหว่าง MBP กับ H100 ยุติธรรมขึ้นด้วย

    • ประเด็นสำคัญตรงนี้ไม่ใช่ “ประสิทธิภาพ” แต่เป็น “การเข้าถึงได้” เพราะ H100 ไม่ใช่ผลิตภัณฑ์ที่ใช้กันในชีวิตประจำวัน แต่โน้ตบุ๊กใช่

    • เท่าที่เข้าใจ Mac แข่งขันได้ดีกว่าในแง่การใช้พลังงาน เพราะไม่ได้ดึงไฟหนักแบบ Nvidia GPU และอนึ่ง ตอนนี้สามารถเช่า H100 ได้ในราคาต่ำกว่า 10 ดอลลาร์ต่อชั่วโมง ดังนั้นการแข่งกันที่ประสิทธิภาพของโมเดลที่ฝึกเสร็จภายใน 1 ชั่วโมงก็น่าจะน่าสนใจเหมือนกัน

    • คิดว่าใช้เกณฑ์ไหนก็ได้ แม้จะค่อนข้างกำหนดขึ้นเองบ้างก็ไม่เป็นไร

    • ถ้าเจตนาคือจะใช้ความเป็นโน้ตบุ๊กหรือความเป็น MacBook Pro เป็นตัวชี้วัดเชิงปฏิบัติ ก็น่าจะอธิบายเป้าหมายให้ชัดเจนกว่านี้

  • ตอนนี้ให้ความรู้สึกเหมือนจะจัดโอลิมปิกด้านประสิทธิภาพ AI แล้ว จะเป็นโน้ตบุ๊ก เดสก์ท็อป โทรศัพท์ 5 นาที 1 ชั่วโมง 1 วัน 1 สัปดาห์ หรือจะอยู่บนเรือกับแพะก็ได้ทั้งนั้น พูดแบบขำ ๆ

    • พูดถึงแพะนี่คงหมายถึง Llama มากกว่า ถึงจะสัมผัสคล้องจองได้ไม่มาก แต่ถ้าเป็นสำเนียงบอสตันน่าจะยิ่งขำ

    • ในนิยายของ Vernor Vinge มีเรื่องที่มนุษย์สร้างคอมพิวเตอร์หมากรุกพกพาไว้ใช้เป็นผู้ช่วยระหว่างแข่ง คิดว่าถ้าในการแข่งขันมีการให้พลังงานนอกเหนือจากนาฬิกาหมากรุกด้วย ผู้เข้าแข่งขันอาจต้องคิดว่าจะใช้มันอย่างไรให้ AI ของตัวเองได้เปรียบ ซึ่งคงแปลกดี

    • ประโยคที่พูดแบบโอ้อวดถึงพลังสุดขีดของ Mac Studio M3 Ultra 512GB พร้อมมุกว่าถ้าเป็นเรือลำนั้นก็ลอยแพะได้เหมือนกัน

    • แพะมีจำนวนพารามิเตอร์มากเกินไป จนเกือบระดับ GPT-4 เป็นมุกตลก

    • ถ้ามี GoatLM ออกมาจริงก็พร้อมจ่ายเงิน

  • ชอบวลี officially major people ในตัวอย่างคำพูดเพ้อเจ้ออย่าง "Paris, France is a city in North Carolina..." และสงสัยว่าจะเอาไปใช้ในบทสนทนาประจำวันยังไงได้บ้าง

  • ทำให้นึกถึงงานวิจัย “cramming” เมื่อไม่กี่ปีก่อน ที่ผู้เขียนพยายามฝึกโมเดลที่เหมาะที่สุดบนโน้ตบุ๊กสมัยใหม่ภายในหนึ่งวัน พร้อมแชร์ ลิงก์งานวิจัย

  • คิดว่าแค่นำทริกบางอย่างจากความพยายามทำ GPT-2 speedrun มาใช้ เช่น Muon, การกำหนดค่าน้ำหนักเริ่มต้นที่ดีกว่า, และการปรับ learning rate อย่างพิถีพิถัน ก็น่าจะทำให้ผลลัพธ์ดีขึ้นได้มาก โดยมีข้อมูลที่เกี่ยวข้อง ที่นี่

  • รู้สึกว่าวงการ AI ยังขาด demoscene อยู่บ้าง คือวัฒนธรรมโชว์เทคนิคเจ๋ง ๆ ด้วยทรัพยากรน้อยแบบงานเดโมกราฟิกยุค 90

  • รู้สึกว่าการสร้างโมเดลที่เล็กลงและเฉพาะทางมากขึ้น รวมถึงสร้างมันขึ้นมาตามต้องการในทันที เป็นสิ่งที่มีคุณค่า ไม่จำเป็นต้องใช้โมเดลใหญ่ที่รู้ทุกอย่าง แต่อยากได้โมเดลที่โฟกัสแบบเลเซอร์เฉพาะโดเมนที่ทำงานอยู่และทำงานได้เร็วมากมากกว่า ฉันอยากบอก LLM ขนาดใหญ่ว่า “ช่วยเขียนสคริปต์สำหรับฝึกโมเดลที่ปรับให้เหมาะกับ <งานที่ต้องการ> ให้หน่อย” แล้วเอาโมเดลนั้นไปใช้ได้เลย แต่ระหว่างที่กำลังเขียนคอมเมนต์ Google ก็ปล่อย Gemma 3 270M ออกมาแล้ว

    • ในทางปฏิบัติ หนึ่งในแนวโน้มของวงการแมชชีนเลิร์นนิงคือ โมเดลทั่วไปมักทำผลงานในงานของผู้เชี่ยวชาญได้ดีกว่าตัวผู้เชี่ยวชาญเอง
  • ยกตัวอย่างคำตอบเพ้อเจ้ออย่าง "Paris, France is a city in North Carolina..." เพื่อชี้ว่าถ้ามีเทคนิคที่ทำให้มันพูดว่า “ไม่รู้” (I don't know) ได้ โมเดลเล็กจะมีประโยชน์ขึ้นมาก ที่ต้องใช้ LLM ใหญ่มากก็เพราะขอบเขตมันกว้างมากจนต้องป้องกันไม่ให้มันแต่งเรื่องขึ้นมาเอง ถ้าสามารถฝึกแชตบอตบริการลูกค้าบนโน้ตบุ๊กได้ภายในเวลาที่พอเหมาะก็คงดี แต่มีโอกาสสูงที่มันจะตอบผิดเพี้ยนอย่างหนักเมื่อเจอเรื่องนอกโดเมนนั้น

    • คิดว่าการใช้ AI ที่ฝึกบนโน้ตบุ๊กในเวลาเพียง 5 นาทีมาตัดสินขีดจำกัดของโมเดลเล็กนั้นค่อนข้างฝืนอยู่ แน่นอนว่าปัญหา hallucination ยังใหญ่เหมือนเดิม แต่ก็ไม่คิดว่าบทความนี้ให้ insight เพิ่มในแง่นั้นมากนัก