Siapkan model dengan AutoModel dan Accelerator

Pelatihan Model AI Efisien dengan PyTorch

Dennis Lee

Data Engineer, Amazon

Kenali instruktur Anda!

$$

  • Insinyur data

Foto instruktur

Ikon server

Pelatihan Model AI Efisien dengan PyTorch

Kenali instruktur Anda!

$$

  • Insinyur data
  • Ilmuwan data

Foto instruktur

Ikon server dan bola lampu

Pelatihan Model AI Efisien dengan PyTorch

Kenali instruktur Anda!

$$

  • Insinyur data
  • Ilmuwan data
  • Ph.D. Teknik Elektro

Foto instruktur

Ikon server, bola lampu, dan topi wisuda

Pelatihan Model AI Efisien dengan PyTorch

Kenali instruktur Anda!

$$

  • Insinyur data
  • Ilmuwan data
  • Ph.D. Teknik Elektro

Foto instruktur

Ikon server, bola lampu, dan topi wisuda

$$

$$

$$

Antusias berbagi praktik terbaik!

Pelatihan Model AI Efisien dengan PyTorch

Rencana kami untuk pelatihan AI yang efisien

  • Pelatihan model AI terdistribusi

Laptop

Pelatihan Model AI Efisien dengan PyTorch

Rencana kami untuk pelatihan AI yang efisien

  • Pelatihan model AI terdistribusi

Laptop dan seseorang yang menunggu

Pelatihan Model AI Efisien dengan PyTorch

Rencana kami untuk pelatihan AI yang efisien

  • Pelatihan model AI terdistribusi

Laptop, seorang yang menunggu, dan chip memori

  • ↓ ↓ Waktu pelatihan untuk model bahasa besar

Kalender

Pelatihan Model AI Efisien dengan PyTorch

Rencana kami untuk pelatihan AI yang efisien

Diagram alur topik kursus: persiapan data, pelatihan terdistribusi, pelatihan efisien, dan pengoptimal.

$$

  • Persiapan data: menempatkan data di banyak perangkat
Pelatihan Model AI Efisien dengan PyTorch

Rencana kami untuk pelatihan AI yang efisien

Diagram alur topik kursus: persiapan data, pelatihan terdistribusi, pelatihan efisien, dan pengoptimal.

$$

  • Persiapan data: menempatkan data di banyak perangkat
  • Pelatihan terdistribusi: menskalakan pelatihan ke banyak perangkat
Pelatihan Model AI Efisien dengan PyTorch

Rencana kami untuk pelatihan AI yang efisien

Diagram alur topik kursus: persiapan data, pelatihan terdistribusi, pelatihan efisien, dan pengoptimal.

$$

  • Persiapan data: menempatkan data di banyak perangkat
  • Pelatihan terdistribusi: menskalakan pelatihan ke banyak perangkat
  • Pelatihan efisien: mengoptimalkan perangkat yang tersedia
Pelatihan Model AI Efisien dengan PyTorch

Rencana kami untuk pelatihan AI yang efisien

Diagram alur topik kursus: persiapan data, pelatihan terdistribusi, pelatihan efisien, dan pengoptimal.

$$

  • Persiapan data: menempatkan data di banyak perangkat
  • Pelatihan terdistribusi: menskalakan pelatihan ke banyak perangkat
  • Pelatihan efisien: mengoptimalkan perangkat yang tersedia
  • Pengoptimal: mempercepat pelatihan
Pelatihan Model AI Efisien dengan PyTorch

CPU

  • Kebanyakan laptop memiliki CPU

         

Laptop dengan CPU

GPU

  • GPU dapat melatih model besar

         

Laptop dengan GPU

Pelatihan Model AI Efisien dengan PyTorch

CPU vs GPU

CPU

  • Kebanyakan laptop memiliki CPU
  • Dirancang untuk komputasi serbaguna
  • Kontrol alur lebih baik

         

Laptop untuk tugas harian

GPU

  • GPU dapat melatih model besar
  • Spesialis komputasi sangat paralel
  • Unggul pada operasi matriks

         

Laptop untuk komputasi paralel

Pelatihan Model AI Efisien dengan PyTorch

Pelatihan terdistribusi

Diagram pelatihan terdistribusi yang menampilkan replikasi model dan pembagian data.

  • Pembagian data (data sharding): tiap perangkat memproses subset data secara paralel
Pelatihan Model AI Efisien dengan PyTorch

Pelatihan terdistribusi

Diagram pelatihan terdistribusi yang menampilkan replikasi model dan pembagian data.

  • Pembagian data (data sharding): tiap perangkat memproses subset data secara paralel
  • Replikasi model: tiap perangkat melakukan forward/backward pass
  • Agregasi gradien: perangkat penentu mengagregasi gradien
  • Sinkronisasi parameter: perangkat penentu membagikan parameter yang diperbarui
Pelatihan Model AI Efisien dengan PyTorch

Efisiensi mudah: manfaatkan model pra-latih

  • Manfaatkan model Transformer pra-latih
  • Inisialisasi parameter model dengan memanggil AutoModelForSequenceClassification
  • Tampilkan konfigurasi
from transformers import AutoModelForSequenceClassification
model = AutoModelForSequenceClassification.from_pretrained(model_name)

print(model.config)
DistilBertConfig {
  "architectures": ["DistilBertForMaskedLM"],
  "dim": 768,
  "dropout": 0.1,
  "hidden_dim": 3072,
  ...
Pelatihan Model AI Efisien dengan PyTorch

Penempatan perangkat dengan Accelerator

  • Kelas dari Hugging Face 🤗
  • Accelerator mendeteksi perangkat yang tersedia di komputer
  • Otomatiskan penempatan perangkat dan paralelisme data: accelerator.prepare()
  • Tempatkan model (tipe torch.nn.Module) ke GPU pertama yang tersedia
  • Default ke CPU jika tidak ada GPU
from accelerate import Accelerator
accelerator = Accelerator()
model = accelerator.prepare(model)

print(accelerator.device)
cpu
Pelatihan Model AI Efisien dengan PyTorch

Ayo berlatih!

Pelatihan Model AI Efisien dengan PyTorch

Preparing Video For Download...