- Transformer ที่ปรากฏขึ้นในปี 2017 เริ่มต้นจากงานแปลภาษาด้วยเครื่องก่อนจะขยายไปแทบทุกสาขา และกลายเป็นองค์ความรู้ AI หลักที่วิศวกรยุคใหม่ควรรู้
- คู่มือนี้เรียบเรียงแบบเป็นขั้นตอนตั้งแต่ โครงข่ายประสาทเทียมไปจนถึง attention โดยพาไปเท่าที่จำเป็นสำหรับวิศวกรที่จะเข้าใจ Transformer
- มี ตัวอย่างโค้ด Python ที่รันได้จริงและเอกสารอ้างอิงให้พร้อม จึงไม่จบแค่อ่าน แต่สามารถลองทำและตรวจสอบผลด้วยตัวเองได้
- เนื้อหาแบ่งเป็นภาคเกี่ยวกับโครงข่ายประสาทเทียม, RNN, NLP และ attention, Transformer รวมถึงภาคผนวกพื้นฐาน Python·คณิตศาสตร์ และมีการเพิ่มหัวข้อ PyTorch กับ Multi-Agents บนพื้นฐาน LLM
- เงื่อนไขการใช้งานเพื่อการศึกษาและไม่ใช่เชิงพาณิชย์ค่อนข้างเปิดกว้าง แต่การติดต่อสอบถามมีข้อจำกัดต่อการติดต่อแบบไม่เปิดเผยตัวตน เช่น ต้องระบุบัญชี SNS อย่างน้อย 2 แห่งเพื่อใช้ยืนยันตัวตน
เส้นทางการเรียนรู้เพื่อทำความเข้าใจ Transformer
- The Engineer’s Guide To Deep Learning เป็นคู่มือขนาดกะทัดรัดที่มอบเส้นทางขั้นต่ำที่วิศวกรต้องใช้เพื่อทำความเข้าใจ Transformer
- ปัจจุบัน AI ถูกนิยามว่าอยู่ในยุคทองครั้งที่สาม
- ยุคทองสองครั้งก่อนหน้านี้คือช่วงทศวรรษ 1950~1960 และช่วงทศวรรษ 1980
- ในเวลานั้น ความคาดหวังนำหน้าความสามารถทางเทคโนโลยี จนจบลงด้วยความผิดหวัง
- ยุคทองของ AI ในปัจจุบันที่เริ่มขึ้นช่วงกลางทศวรรษ 2010 อธิบายได้ว่าเป็นกระแสที่ยังคงทำได้เกินความคาดหวังอย่างต่อเนื่อง
- Transformer คือความก้าวหน้าครั้งสำคัญที่ถูกนำเสนอในปี 2017
- แรกเริ่มถูกพัฒนาขึ้นเป็นโมเดลสำหรับการแปลภาษาด้วยเครื่อง
- หลังจากนั้นอิทธิพลของมันก็ขยายไปแทบทุกสาขา
- มี ตัวอย่างโค้ด Python ที่รันได้จริงเป็นสื่อช่วยการเรียนรู้
- ยังแนะนำเอกสารอ้างอิงเพิ่มเติมไว้ด้วย เพื่อให้ผู้อ่านแต่ละคนเลือกแหล่งข้อมูลที่เหมาะกับตนเองได้
โครงสร้างเอกสารและการอัปเดต
- คู่มือนี้ถูกออกแบบให้ค่อย ๆ สร้างพื้นฐานที่จำเป็นตามลำดับ แทนที่จะกระโดดเข้าไปหา Transformer ทันที
- Part 1: Neural Networks — แนวคิดพื้นฐานของโครงข่ายประสาทเทียม
- Part 2: Recurrent Neural Networks (RNNs) — RNN, LSTM, GRU
- Part 3: Natural Language Processing (NLP) and Attention Mechanisms — หลักการสำคัญของ NLP รวมถึงการแปลภาษาด้วยเครื่องและ attention
- Part 4: Transformer — โมเดล Transformer
- Appendix: Basic Knowledge — ความรู้ขั้นต่ำด้าน Python และคณิตศาสตร์ที่จำเป็นต่อการทำความเข้าใจ Transformer
- ประวัติการเปลี่ยนแปลงมีต่อเนื่องมาตั้งแต่เผยแพร่เวอร์ชันแรกเมื่อวันที่ 21 พฤษภาคม 2024
- 23 กรกฎาคม 2024: เพิ่ม เวอร์ชัน PyTorch ใน Parts 1·2
- 16 กันยายน 2024: เพิ่มส่วน Multi-Agents บนพื้นฐาน LLM
- ในอนาคตอาจครอบคลุมทั้งเทคโนโลยีแบบ Transformer-based หลายอย่างที่กำลังพัฒนาอยู่ในปัจจุบัน และความก้าวหน้าครั้งใหญ่อีกครั้งในอนาคตอันใกล้
เงื่อนไขการใช้งานและช่องทางติดต่อ
- เงื่อนไขการใช้งานใน FAQ ลิขสิทธิ์เปิดกว้างโดยเน้นการใช้เพื่อการศึกษาและไม่ใช่เชิงพาณิชย์
- ครูและนักเรียนในสถาบันการศึกษาสามารถใช้เอกสารและภาพประกอบเพื่อการเรียนรู้ได้อย่างอิสระ
- การพบปะและการบรรยายที่ไม่ใช่เชิงพาณิชย์สามารถใช้เอกสารและภาพประกอบได้ หากระบุลิงก์เว็บไซต์และลิขสิทธิ์
- คำอธิบายเรื่อง revenue share และ full buyout ในหัวข้อการใช้งานเชิงพาณิชย์เป็นมุกตลก และผู้เขียนระบุว่าไม่ได้ตั้งใจจะทำความสัมพันธ์เชิงพาณิชย์
- อีเมลสอบถามต้องระบุ ที่อยู่ SNS อย่างน้อย 2 แห่ง เช่น LinkedIn, Twitter เพื่อใช้ในการยืนยันตัวตน
- หลังเหตุการณ์ XZ backdoor จะไม่รับการติดต่อจากบุคคลนิรนาม
1 ความคิดเห็น
ความคิดเห็นจาก Hacker News
Transformers from Scratch: https://e2eml.school/transformers.html
ซีรีส์ปูพื้นฐานของ Andrej Karpathy ก็ดี: https://karpathy.ai/zero-to-hero.html
Let's build GPT: from scratch, in code, spelled out: https://www.youtube.com/watch?v=kCc8FmEb1nY
GPT with Andrej Karpathy: Part 1: https://medium.com/@kdwa2404/gpt-with-andrej-karpathy-part-1...
“But what is a GPT? Visual intro to transformers | Chapter 5, Deep Learning” ของ 3Blue1Brown: https://www.youtube.com/watch?v=wjZofJX0v4M
“Attention in transformers, visually explained | Chapter 6, Deep Learning”: https://www.youtube.com/watch?v=eMlx5fFNoYc
เพลย์ลิสต์โครงข่ายประสาททั้งหมดของ 3Blue1Brown: https://www.youtube.com/playlist?list=PLZHQObOWTQDNU6R1_6700...
ถือว่าแพงทีเดียวสำหรับ tutorial ของ Keras
แผนคือทำความเข้าใจวิธีแก้ปัญหาของผู้ชนะปีที่แล้ว แล้วเลือกโจทย์ย่อยที่เล็กลงมาลองทำ: https://scrollprize.org/
ตัวอย่างเช่น ส่วนที่ขยาย gradient ของ LSTM ไม่ได้มีไว้ช่วยให้คุณนำไป implement ใน framework ที่ชอบ แต่เพื่อช่วยให้เข้าใจ
จุดประสงค์ของการแสดงวิธีแก้ด้วยหลาย framework ก็เพื่อเชื่อมให้เห็นว่าสูตรหน้าตาเป็นอย่างไร และในโค้ดอาจออกมาเป็นแบบไหน
โดยเฉพาะส่วนที่น่าสนใจของสถาปัตยกรรม Transformer คือกลไก attention มีคุณสมบัติไม่เปลี่ยนตามการสลับลำดับ ยิ่งถ้าผู้คนไม่ใช้ positional embedding เพื่อหักล้างคุณสมบัติเฉพาะนี้ก็ยิ่งเห็นชัด และยังสามารถ mask โหนดเฉพาะหรือ edge แยก ๆ ในกราฟได้ตามต้องการ จึงมีความยืดหยุ่นสูงในการใส่ความรู้เฉพาะโดเมนลงไปในสถาปัตยกรรม
ในหลายกรณี positional embedding อาจยังจำเป็นอยู่ แต่เราสามารถออกแบบให้ฉลาดกว่านี้ได้ โดยไม่ต้องติดอยู่กับมุมมองที่จำกัดเกินไปว่า input ของชั้น attention เป็นเพียง sequence 1 มิติธรรมดา
เท่าที่เข้าใจ ML engineer คือวิศวกรที่สร้างโมเดลด้วย framework อย่าง PyTorch, AI engineer คือวิศวกรที่สร้างแอปบนโซลูชัน AI อย่าง prompt engineering หรือ OpenAI/Claude API, ส่วน MLOps คือคนที่ช่วย deploy และ serve โมเดล อยากรู้ว่าแบ่งแบบนี้ถูกไหม
ในความเป็นจริง บทบาทข้างต้นอาจครอบคลุมได้ตั้งแต่ “ทำงานวิจัยล้ำหน้าสุด” ไปจนถึง “เคยเปิดไฟล์ CSV ครั้งหนึ่ง”
ถ้าอยากสร้างผลกระทบ ก็ทำด้านนั้นให้เก่งมาก ๆ ทักษะนี้ยังใช้ได้ในงานอย่าง system integration หรือ business analysis ด้วย ส่วน algorithm และทุกวันนี้แม้แต่โมเดลที่ผ่านการฝึกแล้ว ก็มีนักวิจัยคอยจัดหามาให้ได้
เห็นแม้แต่ในหมู่นักเทคนิคเองก็เริ่มใช้ social network เป็นเครื่องมือยืนยันตัวตนและความน่าเชื่อถือ แล้วก็รู้สึกขมขื่นพอสมควร ตอนที่บางรัฐบาลเริ่มขอชื่อผู้ใช้ social network ในการตรวจวีซ่า/คนเข้าเมืองก็แย่พออยู่แล้ว แต่นี่แม้แต่จะส่งอีเมลหานักเทคนิคสักฉบับ ก็ต้องมี social proof แล้วหรือ
ผู้โจมตี XZ น่าจะล็อกอินเข้าใช้บริการจำนวนมากผ่าน GitHub ได้ ผู้เขียนต้นฉบับเองก็น่าจะดาวน์โหลดอะไรบางอย่างจาก PyPI ซึ่งเคยอาจถูก compromise จาก token ที่รั่วและถูกปล่อยทิ้งไว้เกินหนึ่งปี
อีกทั้งอยู่ในสาย machine learning จึงมีโอกาสสูงที่จะดาวน์โหลด Python framework ขนาดใหญ่จาก GitHub, conda, PyPI ที่ audit ได้ยาก และคนในสายนี้ก็ยังดาวน์โหลดโมเดลที่ไม่น่าเชื่อถือมาทดลองด้วย
แล้วปัญหากลับเป็นอีเมลข้อความล้วนที่อ่านใน command-line mail client ซึ่งปิด MIME และ extension อื่น ๆ ไว้อย่างนั้นหรือ