Membangun loop pelatihan dengan Accelerator
Anda siap mengimplementasikan loop pelatihan untuk layanan penerjemahan bahasa Anda. Setelah melihat bagaimana Accelerator memodifikasi loop PyTorch untuk pelatihan terdistribusi, Anda dapat memanfaatkan kelas Accelerator dalam loop pelatihan Anda!
Beberapa data telah dimuat sebelumnya:
acceleratoradalah sebuah instance dariAcceleratortrain_dataloader,optimizer,model, danlr_schedulertelah didefinisikan dan disiapkan denganAccelerator
Latihan ini merupakan bagian dari kursus
Pelatihan Model AI Efisien dengan PyTorch
Instruksi latihan
- Panggil
optimizeruntuk mengosongkan gradien. - Perbarui parameter model.
- Perbarui laju pembelajaran
optimizer.
Latihan interaktif langsung praktik
Cobalah latihan ini dengan melengkapi kode contoh ini.
for batch in train_dataloader:
# Call the optimizer to zero the gradients
____.____()
inputs, targets = batch["input_ids"], batch["labels"]
outputs = model(inputs, labels=targets)
loss = outputs.loss
accelerator.backward(loss)
# Update the model's parameters
____.____()
# Update the learning rate of the optimizer
____.____()