Deep Learning Academy · Pelajaran

Siklus Epoch dengan Validasi

Evaluasi setelah setiap lintasan melalui data

Pelajaran 2 dari 413 langkah

Siklus Epoch dengan Validasi adalah pelajaran Deep Learning Academy gratis di CoddyKit. Ini adalah pelajaran 2 dari 4. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar Deep Learning Academy, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus Deep Learning Academy mencakup 4 pelajaran total.

Makna Sebuah Epoch

Satu epoch adalah satu kali proses melewati seluruh set pelatihan. Pelatihan sebenarnya mengulangi proses ini berkali-kali agar model terus membaik.

Perulangan Luar

Bungkus seluruh rutinitas Anda dalam perulangan epoch. Setiap putaran perulangan luar melatih model sekali, lalu memeriksa kemajuannya pada validasi.

for epoch in range(num_epochs):
    train_one_epoch()
    validate()

Perulangan Pelatihan Dalam

Di dalam sebuah epoch, lakukan perulangan pada batch dari DataLoader. Setiap batch menjalankan urutan forward, loss, backward, step yang sudah dikenal.

for x, y in train_loader:
    optimizer.zero_grad()
    loss = loss_fn(model(x), y)
    loss.backward()
    optimizer.step()

Beralih ke Mode Pelatihan

Sebelum menjalankan pelatihan, panggil model.train(). Perintah ini mengaktifkan lapisan seperti dropout dan normalisasi batch yang harus berperilaku berbeda selama pembelajaran.

model.train()

Beralih ke Mode Evaluasi

Sebelum melakukan validasi, panggil model.eval(). Perintah ini membekukan dropout dan menggunakan statistik normalisasi batch yang telah dikumpulkan agar skor Anda stabil dan adil.

model.eval()

Tanpa Gradien Saat Validasi

Validasi hanya membaca model, jadi bungkus proses tersebut dengan torch.no_grad(). Melewati graf menghemat memori dan membuat proses berjalan jauh lebih cepat.

with torch.no_grad():
    for x, y in val_loader:
        out = model(x)

Lacak Loss Berjalan

Jumlahkan loss setiap batch sepanjang epoch, lalu bagi dengan jumlah batch. Loss rata-rata ini adalah satu angka yang jelas untuk dibandingkan dari epoch ke epoch.

total += loss.item() * x.size(0)
epoch_loss = total / len(loader.dataset)

Ukur Loss Validasi

Hitung rata-rata yang sama pada set validasi. Loss validasi ini menunjukkan seberapa baik model melakukan generalisasi di luar data yang digunakan untuk melatihnya.

Cetak Kemajuan Setiap Epoch

Catat kedua loss pada setiap epoch agar Anda dapat mengamati kurvanya. Melihat trennya secara langsung memudahkan Anda mendeteksi overfitting segera setelah dimulai.

print(epoch, train_loss, val_loss)

Baca Kedua Kurva

Pelatihan yang sehat menunjukkan kedua loss menurun. Ketika loss validasi mulai naik sementara loss pelatihan terus turun, model mulai mengalami overfitting.

Jangan Menjalankan Backward pada Validasi

Kesalahan yang sering terjadi adalah memanggil backward() selama validasi. Jangan pernah memperbarui bobot menggunakan data validasi, atau pengukuran jujur Anda akan tercemar.

Pemeriksaan Cepat

Apa yang harus Anda panggil tepat sebelum menjalankan proses validasi?

Ringkasan

Setiap epoch dilatih dalam mode pelatihan, lalu divalidasi dalam mode evaluasi di bawah no_grad. Lacak kedua loss dan amati kesenjangannya untuk mendeteksi overfitting sejak dini. 📈

Gratis untuk memulai

Belajar Python dengan tutor AI — gratis

Tulis dan jalankan kode asli di browser kamu, dapatkan bantuan instan dari tutor AI 24/7, dan lanjutkan di mana kamu tinggalkan di web atau aplikasi.

Kursus
30
Pelajaran
120

Pertanyaan yang Sering Diajukan

Apakah pelajaran “Siklus Epoch dengan Validasi” gratis?

Ya — teks lengkap “Siklus Epoch dengan Validasi” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus Deep Learning Academy, upgrade ke CoddyKit PRO. Kursus Deep Learning Academy mencakup 4 pelajaran total.

Apa yang akan aku pelajari di “Siklus Epoch dengan Validasi”?

Evaluasi setelah setiap lintasan melalui data Kamu berlatih Deep Learning Academy dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.

Apakah aku perlu pengalaman untuk memulai Deep Learning Academy?

Tidak diperlukan pengalaman sebelumnya. Deep Learning Academy di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 2 dari 4.

Berapa lama pelajaran “Siklus Epoch dengan Validasi” memakan waktu?

Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.

Bisakah aku menulis dan menjalankan kode dalam pelajaran Deep Learning Academy ini?

Ya. Setiap pelajaran Deep Learning Academy menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.

Semua pelajaran dalam kursus ini

  1. Pisahkan Train, Validation, dan Test
  2. Siklus Epoch dengan Validasi
  3. Simpan dan Muat dengan state_dict
  4. Penghentian Dini pada Loss Validasi
← Kembali ke Deep Learning Academy