เตรียมโมเดลด้วย AutoModel และ Accelerator

การเทรน AI Model อย่างมีประสิทธิภาพด้วย PyTorch

Dennis Lee

Data Engineer, Amazon

แนะนำผู้สอน!

$$

  • วิศวกรข้อมูล

ภาพถ่ายผู้สอน

ไอคอนเซิร์ฟเวอร์

การเทรน AI Model อย่างมีประสิทธิภาพด้วย PyTorch

แนะนำผู้สอน!

$$

  • วิศวกรข้อมูล
  • นักวิทยาศาสตร์ข้อมูล

ภาพถ่ายผู้สอน

ไอคอนเซิร์ฟเวอร์และหลอดไฟ

การเทรน AI Model อย่างมีประสิทธิภาพด้วย PyTorch

แนะนำผู้สอน!

$$

  • วิศวกรข้อมูล
  • นักวิทยาศาสตร์ข้อมูล
  • ปริญญาเอกวิศวกรรมไฟฟ้า

ภาพถ่ายผู้สอน

ไอคอนเซิร์ฟเวอร์ หลอดไฟ และหมวกรับปริญญา

การเทรน AI Model อย่างมีประสิทธิภาพด้วย PyTorch

แนะนำผู้สอน!

$$

  • วิศวกรข้อมูล
  • นักวิทยาศาสตร์ข้อมูล
  • ปริญญาเอกวิศวกรรมไฟฟ้า

ภาพถ่ายผู้สอน

ไอคอนเซิร์ฟเวอร์ หลอดไฟ และหมวกรับปริญญา

$$

$$

$$

ยินดีที่จะแบ่งปันแนวปฏิบัติที่ดีที่สุด!

การเทรน AI Model อย่างมีประสิทธิภาพด้วย PyTorch

แผนการฝึก AI อย่างมีประสิทธิภาพ

  • การฝึกโมเดล AI แบบกระจาย

แล็ปท็อป

การเทรน AI Model อย่างมีประสิทธิภาพด้วย PyTorch

แผนการฝึก AI อย่างมีประสิทธิภาพ

  • การฝึกโมเดล AI แบบกระจาย

แล็ปท็อปและบุคคลที่กำลังรอ

การเทรน AI Model อย่างมีประสิทธิภาพด้วย PyTorch

แผนการฝึก AI อย่างมีประสิทธิภาพ

  • การฝึกโมเดล AI แบบกระจาย

แล็ปท็อป บุคคลที่รอ และชิปหน่วยความจำ

  • ↓ ↓ เวลาฝึก Large Language Model

ปฏิทิน

การเทรน AI Model อย่างมีประสิทธิภาพด้วย PyTorch

แผนการฝึก AI อย่างมีประสิทธิภาพ

ผังแสดงหัวข้อของคอร์ส ได้แก่ การเตรียมข้อมูล การฝึกแบบกระจาย การฝึกอย่างมีประสิทธิภาพ และ optimizer

$$

  • การเตรียมข้อมูล: กระจายข้อมูลไปยังหลายอุปกรณ์
การเทรน AI Model อย่างมีประสิทธิภาพด้วย PyTorch

แผนการฝึก AI อย่างมีประสิทธิภาพ

ผังแสดงหัวข้อของคอร์ส ได้แก่ การเตรียมข้อมูล การฝึกแบบกระจาย การฝึกอย่างมีประสิทธิภาพ และ optimizer

$$

  • การเตรียมข้อมูล: กระจายข้อมูลไปยังหลายอุปกรณ์
  • การฝึกแบบกระจาย: ขยายการฝึกไปยังหลายอุปกรณ์
การเทรน AI Model อย่างมีประสิทธิภาพด้วย PyTorch

แผนการฝึก AI อย่างมีประสิทธิภาพ

ผังแสดงหัวข้อของคอร์ส ได้แก่ การเตรียมข้อมูล การฝึกแบบกระจาย การฝึกอย่างมีประสิทธิภาพ และ optimizer

$$

  • การเตรียมข้อมูล: กระจายข้อมูลไปยังหลายอุปกรณ์
  • การฝึกแบบกระจาย: ขยายการฝึกไปยังหลายอุปกรณ์
  • การฝึกอย่างมีประสิทธิภาพ: ปรับการใช้อุปกรณ์ให้เหมาะสม
การเทรน AI Model อย่างมีประสิทธิภาพด้วย PyTorch

แผนการฝึก AI อย่างมีประสิทธิภาพ

ผังแสดงหัวข้อของคอร์ส ได้แก่ การเตรียมข้อมูล การฝึกแบบกระจาย การฝึกอย่างมีประสิทธิภาพ และ optimizer

$$

  • การเตรียมข้อมูล: กระจายข้อมูลไปยังหลายอุปกรณ์
  • การฝึกแบบกระจาย: ขยายการฝึกไปยังหลายอุปกรณ์
  • การฝึกอย่างมีประสิทธิภาพ: ปรับการใช้อุปกรณ์ให้เหมาะสม
  • Optimizer: เร่งความเร็วการฝึก
การเทรน AI Model อย่างมีประสิทธิภาพด้วย PyTorch

CPU

  • แล็ปท็อปส่วนใหญ่มี CPU

         

แล็ปท็อปที่ใช้ CPU

GPU

  • GPU สามารถฝึกโมเดลขนาดใหญ่ได้

         

แล็ปท็อปที่ใช้ GPU

การเทรน AI Model อย่างมีประสิทธิภาพด้วย PyTorch

CPU vs GPU

CPU

  • แล็ปท็อปส่วนใหญ่มี CPU
  • ออกแบบสำหรับการประมวลผลทั่วไป
  • ควบคุมการทำงานได้ดีกว่า

         

แล็ปท็อปสำหรับงานทั่วไป

GPU

  • GPU สามารถฝึกโมเดลขนาดใหญ่ได้
  • เชี่ยวชาญการประมวลผลแบบขนาน
  • เหมาะกับการคำนวณเมทริกซ์

         

แล็ปท็อปสำหรับการประมวลผลแบบขนาน

การเทรน AI Model อย่างมีประสิทธิภาพด้วย PyTorch

การฝึกแบบกระจาย

ผังแสดงการฝึกแบบกระจาย การจำลองโมเดล และการแบ่งข้อมูล

  • การแบ่งข้อมูล (Data sharding): แต่ละอุปกรณ์ประมวลผลข้อมูลส่วนหนึ่งพร้อมกัน
การเทรน AI Model อย่างมีประสิทธิภาพด้วย PyTorch

การฝึกแบบกระจาย

ผังแสดงการฝึกแบบกระจาย การจำลองโมเดล และการแบ่งข้อมูล

  • การแบ่งข้อมูล (Data sharding): แต่ละอุปกรณ์ประมวลผลข้อมูลส่วนหนึ่งพร้อมกัน
  • การจำลองโมเดล (Model replication): แต่ละอุปกรณ์ทำ forward/backward pass
  • การรวม Gradient: อุปกรณ์ที่กำหนดรวม gradient
  • การซิงค์พารามิเตอร์: อุปกรณ์ที่กำหนดแจกจ่ายพารามิเตอร์ที่อัปเดต
การเทรน AI Model อย่างมีประสิทธิภาพด้วย PyTorch

ประสิทธิภาพที่ไม่ยุ่งยาก: ใช้โมเดลที่ผ่านการฝึกแล้ว

  • ใช้ประโยชน์จากโมเดล Transformer ที่ผ่านการฝึกมาแล้ว
  • กำหนดพารามิเตอร์โมเดลด้วย AutoModelForSequenceClassification
  • แสดงการตั้งค่า
from transformers import AutoModelForSequenceClassification
model = AutoModelForSequenceClassification.from_pretrained(model_name)

print(model.config)
DistilBertConfig {
  "architectures": ["DistilBertForMaskedLM"],
  "dim": 768,
  "dropout": 0.1,
  "hidden_dim": 3072,
  ...
การเทรน AI Model อย่างมีประสิทธิภาพด้วย PyTorch

การวางโมเดลบนอุปกรณ์ด้วย Accelerator

  • คลาสจาก Hugging Face 🤗
  • Accelerator ตรวจสอบอุปกรณ์ที่ใช้งานได้บนคอมพิวเตอร์
  • จัดการการวางโมเดลบนอุปกรณ์และ data parallelism อัตโนมัติ: accelerator.prepare()
  • วางโมเดล (ประเภท torch.nn.Module) บน GPU ตัวแรกที่พร้อมใช้งาน
  • ใช้ CPU หากไม่พบ GPU
from accelerate import Accelerator
accelerator = Accelerator()
model = accelerator.prepare(model)

print(accelerator.device)
cpu
การเทรน AI Model อย่างมีประสิทธิภาพด้วย PyTorch

มาฝึกกันเลย!

การเทรน AI Model อย่างมีประสิทธิภาพด้วย PyTorch

Preparing Video For Download...