“เทคโนโลยีที่ล้ำหน้าพอที่จะแยกไม่ออกจากเวทมนตร์”
--อาเธอร์ ซี. คลาร์ก (ผู้เขียน 2001: A Space Odyssey)
เรียนรู้ Generative AI ด้วย PyTorch มุ่งหวังที่จะแนะนำคุณตลอดการสร้างเนื้อหาต่างๆ (รูปร่าง ตัวเลข รูปภาพ ข้อความ และเพลง) ตั้งแต่เริ่มต้น เริ่มต้นด้วยแบบจำลองง่ายๆ ซึ่งช่วยให้ผู้อ่านสร้างทักษะการเรียนรู้เชิงลึกขั้นพื้นฐานก่อนที่จะก้าวไปสู่ความท้าทายที่ซับซ้อนมากขึ้น โมเดลกำเนิดทั้งหมดในหนังสือเล่มนี้เป็นโครงข่ายประสาทเทียมระดับลึก หนังสือเล่มนี้เริ่มต้นด้วยโปรเจ็กต์การเรียนรู้เชิงลึกที่ครอบคลุมใน PyTorch ซึ่งเหมาะสำหรับผู้ที่เริ่มเข้าสู่วงการนี้ แต่ละบทมีโครงสร้างอย่างระมัดระวังเพื่อต่อยอดจากบทก่อนหน้า ขั้นแรกคุณจะต้องสร้างเนื้อหาพื้นฐาน เช่น รูปร่าง ตัวเลข และรูปภาพโดยใช้ Generative Adversarial Networks (GAN) ที่มีสถาปัตยกรรมที่ไม่ซับซ้อน เมื่อคุณก้าวหน้าไป ความซับซ้อนก็จะเพิ่มขึ้น ไปจนถึงจุดสูงสุดในการสร้างโมเดลที่ล้ำสมัย เช่น Transformers และ Diffusion Models
เรียนรู้ Generative AI ด้วย PyTorch ได้รับการออกแบบมาสำหรับผู้ที่ชื่นชอบการเรียนรู้ของเครื่องและนักวิทยาศาสตร์ข้อมูลในสาขาธุรกิจต่างๆ ที่มีทักษะการเขียนโปรแกรม Python ระดับกลาง หนังสือเล่มนี้มีจุดมุ่งหมายเพื่อสอนเทคนิค AI เชิงสร้างสรรค์สำหรับการสร้างเนื้อหาที่แปลกใหม่และสร้างสรรค์ เช่น รูปภาพ ข้อความ รูปแบบ ตัวเลข รูปร่าง และเสียง เพื่อปรับปรุงทั้งธุรกิจของนายจ้างและอาชีพของตนเอง แม้ว่าสื่อการเรียนรู้ฟรีมากมายจะมีให้ทางออนไลน์โดยครอบคลุมหัวข้อต่างๆ หนังสือเล่มนี้ได้รวมทุกอย่างไว้ในรูปแบบที่ชัดเจน ง่ายต่อการติดตาม และทันสมัย ทำให้หนังสือเล่มนี้เป็นแหล่งข้อมูลอันล้ำค่าสำหรับทุกคนที่ปรารถนาจะเป็นผู้เชี่ยวชาญด้าน AI เชิงสร้างสรรค์
หนังสือเล่มนี้มี 16 บท แบ่งออกเป็น 4 ส่วน
ส่วนที่ 1 จะแนะนำให้คุณรู้จักกับ Generative AI และการเรียนรู้เชิงลึกด้วย PyTorch
• บทที่ 1 อธิบายว่า AI เชิงกำเนิดคืออะไร และเหตุผลเบื้องหลังการเลือก PyTorch เหนือเฟรมเวิร์ก AI อื่นๆ เช่น TensorFlow สำหรับการสร้างแบบจำลองเชิงกำเนิดในหนังสือเล่มนี้
• บทที่ 2 ใช้ PyTorch เพื่อสร้างโครงข่ายประสาทเทียมเชิงลึกเพื่อดำเนินการจำแนกแบบไบนารีและหลายหมวดหมู่ เพื่อให้คุณมีความเชี่ยวชาญในงานการเรียนรู้เชิงลึกและการจัดหมวดหมู่ ความตั้งใจคือเพื่อเตรียมคุณให้พร้อมสำหรับบทที่กำลังจะมาถึง ซึ่งคุณใช้โครงข่ายประสาทเทียมระดับลึกใน PyTorch เพื่อสร้างโมเดลกำเนิดต่างๆ
• บทที่ 3 แนะนำให้คุณรู้จักกับ Generative Adversarial Networks (GAN) คุณเรียนรู้ที่จะใช้ GAN เพื่อสร้างรูปร่างและลำดับของตัวเลขด้วยรูปแบบบางอย่าง
ส่วนที่ 2 ครอบคลุมถึงการสร้างภาพ
• บทที่ 4 กล่าวถึงวิธีการสร้างและฝึก GAN เพื่อสร้างภาพสีที่มีความละเอียดสูง โดยเฉพาะอย่างยิ่ง คุณจะได้เรียนรู้การใช้โครงข่ายประสาทเทียมแบบหมุนวน (CNN) เพื่อจับภาพลักษณะเชิงพื้นที่ในภาพ นอกจากนี้คุณยังจะได้เรียนรู้การใช้เลเยอร์ Convolutional ที่เปลี่ยนตำแหน่งเพื่อเพิ่มตัวอย่างและสร้างแผนที่คุณลักษณะที่มีความละเอียดสูงในรูปภาพ
• บทที่ 5 ให้รายละเอียดสองวิธีในการเลือกลักษณะเฉพาะในภาพที่สร้างขึ้น วิธีแรกเกี่ยวข้องกับการเลือกเวกเตอร์เฉพาะในพื้นที่แฝง วิธีที่สองใช้ GAN แบบมีเงื่อนไข ซึ่งคุณสร้างและฝึก GAN ด้วยข้อมูลที่ติดป้ายกำกับ
• บทที่ 6 สอนวิธีใช้ CycleGAN เพื่อแปลภาพระหว่างสองโดเมน เช่น ภาพผมสีดำและภาพผมสีบลอนด์ หรือภาพม้าและภาพม้าลาย
• บทที่ 7 อธิบายวิธีสร้างภาพที่มีความละเอียดสูงโดยใช้โมเดลกำเนิดอื่น: ตัวเข้ารหัสอัตโนมัติ (AE) และตัวแปร ตัวเข้ารหัสอัตโนมัติแบบแปรผัน (VAE)
ส่วนที่ 3 เจาะลึกการประมวลผลภาษาธรรมชาติ (NLP) และการสร้างข้อความ
• บทที่ 8 กล่าวถึงการสร้างข้อความด้วยโครงข่ายประสาทเทียม (RNN) ระหว่างทาง คุณจะได้เรียนรู้วิธีการทำงานของโทเค็นและการฝังคำ นอกจากนี้คุณยังจะได้เรียนรู้การสร้างข้อความแบบถดถอยอัตโนมัติด้วยโมเดลที่ผ่านการฝึกอบรม และวิธีการใช้อุณหภูมิและการสุ่มตัวอย่างระดับ Top-K เพื่อควบคุมความคิดสร้างสรรค์ของข้อความที่สร้างขึ้น
• บทที่ 9 สร้าง Transformer ตั้งแต่เริ่มต้น โดยอ้างอิงจากรายงาน Attention Is All You Need เพื่อแปลระหว่างสองภาษาใดก็ได้ คุณจะใช้กลไกความสนใจแบบหลายหัวทีละบรรทัดและ Transformer ตัวเข้ารหัสและตัวถอดรหัส
• บทที่ 10 ฝึกฝน Transformer ที่คุณสร้างในบทที่ 9 ด้วยการแปลภาษาอังกฤษเป็นภาษาฝรั่งเศสมากกว่า 47,000 คู่ คุณจะได้เรียนรู้วิธีแปลวลีภาษาอังกฤษทั่วไปเป็นภาษาฝรั่งเศสด้วยแบบจำลองที่ผ่านการฝึกอบรม
• บทที่ 11 สร้าง GPT-2XL ซึ่งเป็นเวอร์ชันที่ใหญ่ที่สุดของ GPT-2 ตั้งแต่เริ่มต้น หลังจากนั้น คุณจะได้เรียนรู้วิธีแยกตุ้มน้ำหนักที่ฝึกไว้ล่วงหน้าจาก Hugging Face แล้วโหลดลงในโมเดล GPT-2 ของคุณเองเพื่อสร้างข้อความ
• บทที่ 12 สร้างโมเดล GPT เวอร์ชันลดขนาดลงด้วยพารามิเตอร์ประมาณห้าล้านพารามิเตอร์ เพื่อให้คุณสามารถฝึกฝนบนคอมพิวเตอร์ทั่วไปได้ คุณจะใช้นวนิยายสามเล่มของเออร์เนสต์ เฮมิงเวย์ เป็นข้อมูลการฝึกอบรม โมเดลที่ผ่านการฝึกอบรมสามารถสร้างข้อความในสไตล์เฮมิงเวย์ได้
ส่วนที่ 4 กล่าวถึงการใช้งานจริงของโมเดล generative ในหนังสือและการพัฒนาล่าสุดในสาขา generative AI
• บทที่ 13 สร้างและฝึก MuseGAN เพื่อสร้างเพลง MuseGAN ถือว่าดนตรีเป็นวัตถุหลายมิติที่คล้ายกับรูปภาพ เครื่องกำเนิดไฟฟ้าจะผลิตเพลงที่สมบูรณ์และส่งให้นักวิจารณ์ประเมิน จากนั้นตัวสร้างจะปรับเปลี่ยนเพลงตามความคิดเห็นของนักวิจารณ์จนกระทั่งมีลักษณะใกล้เคียงกับเพลงจริงจากชุดข้อมูลการฝึกอบรม ฟังตัวอย่างเพลงที่สร้างขึ้น: https://gattonweb.uky.edu/faculty/lium/ml/MuseGAN_song.mp3
• บทที่ 14 ใช้แนวทางที่แตกต่างในการสร้างเพลงด้วย AI แทนที่จะถือว่าดนตรีเป็นวัตถุหลายมิติ คุณถือว่ามันเป็นลำดับของเหตุการณ์ทางดนตรี จากนั้นคุณจะใช้เทคนิคจากการสร้างข้อความเพื่อทำนายองค์ประกอบถัดไปในลำดับ ฟังตัวอย่างเพลงที่สร้างขึ้น: https://gattonweb.uky.edu/faculty/lium/ml/musicTrans.mp3
• บทที่ 15 จะแนะนำให้คุณรู้จักกับโมเดลการแพร่กระจาย ซึ่งเป็นรากฐานของ Transformers การแปลงข้อความเป็นรูปภาพชั้นนำทั้งหมด (เช่น DALL-E หรือ Imagen) คุณจะสร้างและฝึกโมเดลการแพร่กระจายเพื่อสร้างภาพดอกไม้ที่มีความละเอียดสูง
• บทที่ 16 จบหนังสือด้วยโปรเจ็กต์ที่คุณใช้ไลบรารี LangChain เพื่อรวมโมเดลภาษาขนาดใหญ่ (LLM) ที่ได้รับการฝึกอบรมล่วงหน้าเข้ากับ Wolfram Alpha และ Wikipedia API เพื่อสร้างผู้ช่วยส่วนตัวที่รู้ทุกอย่างแบบ Zero-shot
ภาคผนวกกล่าวถึงวิธีการติดตั้ง PyTorch บนคอมพิวเตอร์ของคุณ โดยมีหรือไม่มี GPU ที่รองรับ Compute Unified Device Architecture (CUDA)
โปรแกรม Python ทั้งหมดในหนังสือเล่มนี้พร้อมให้ดาวน์โหลดได้ที่ที่เก็บ GitHub ของหนังสือ https://github.com/markhliu/DGAI โปรแกรมถูกจัดเรียงตามบทโดยแต่ละบทอยู่ในไฟล์ Jupyter Notebook ไฟล์เดียว ดูภาคผนวกของหนังสือเกี่ยวกับวิธีติดตั้ง Python, PyTorch และ Jupyter Notebook บนคอมพิวเตอร์ของคุณ