Pętla epok z walidacją
Oceniać model po każdym przejściu przez dane
Pętla epok z walidacją to bezpłatna lekcja Deep Learning Academy na CoddyKit. To lekcja 2 z 4. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej Deep Learning Academy, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs Deep Learning Academy zawiera 4 lekcji w sumie.
Części tej lekcji nie zostały jeszcze przetłumaczone i są wyświetlane po angielsku.
What an Epoch Means
One epoch is a single full pass over your entire training set. Real training repeats this pass many times so the model keeps improving.
The Outer Loop
Wrap your whole routine in a loop over epochs. Each turn of this outer loop trains once and then checks progress on validation.
for epoch in range(num_epochs):
train_one_epoch()
validate()The Inner Training Loop
Inside an epoch you loop over batches from the DataLoader. Each batch runs the familiar forward, loss, backward, step rhythm.
for x, y in train_loader:
optimizer.zero_grad()
loss = loss_fn(model(x), y)
loss.backward()
optimizer.step()Switch to Train Mode
Before training a pass, call model.train(). It turns on layers like dropout and batch norm that should behave differently while learning.
model.train()Switch to Eval Mode
Before validating, call model.eval(). This freezes dropout and uses running batch-norm stats so your scores are steady and fair.
model.eval()No Gradients While Validating
Validation only reads the model, so wrap it in torch.no_grad(). Skipping the graph saves memory and runs noticeably faster.
with torch.no_grad():
for x, y in val_loader:
out = model(x)Track the Running Loss
Add up each batch's loss across the epoch, then divide by the count. This average loss is one clean number to compare epoch to epoch.
total += loss.item() * x.size(0)
epoch_loss = total / len(loader.dataset)Measure Validation Loss
Compute the same average on the validation set. This validation loss reveals how well the model generalizes beyond what it trained on.
Print Progress Each Epoch
Log both losses every epoch so you can watch the curves. Seeing the trend live makes overfitting easy to catch the moment it starts.
print(epoch, train_loss, val_loss)Read the Two Curves
Healthy training shows both losses falling. When validation loss starts climbing while training keeps dropping, the model is beginning to overfit.
Don't Backward on Validation
A frequent bug is calling backward() during validation. Never update weights from val data, or you contaminate your honest measurement.
Quick Check
What should you call right before running the validation pass?
Recap
Each epoch trains in train mode, then validates in eval mode under no_grad. Track both losses and watch the gap to catch overfitting early. 📈
Często zadawane pytania
Czy lekcja „Pętla epok z walidacją” jest bezpłatna?
Tak — pełny tekst „Pętla epok z walidacją” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu Deep Learning Academy, przejdź na CoddyKit PRO. Kurs Deep Learning Academy zawiera 4 lekcji w sumie.
Co nauczysz się w „Pętla epok z walidacją”?
Oceniać model po każdym przejściu przez dane Ćwiczysz Deep Learning Academy z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.
Czy potrzebuję doświadczenia, aby zacząć Deep Learning Academy?
Nie wymagamy żadnego doświadczenia. Deep Learning Academy w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 2 z 4.
Ile czasu zajmuje lekcja „Pętla epok z walidacją”?
Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.
Czy mogę pisać i uruchamiać kod w tej lekcji Deep Learning Academy?
Tak. Każda lekcja Deep Learning Academy zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.
Wszystkie lekcje w tym kursie
- Podział na zbiory treningowy, walidacyjny i testowy
- Pętla epok z walidacją
- Zapisywanie i wczytywanie za pomocą state_dict
- Wczesne zatrzymywanie na podstawie val loss