0Pricing
Deep Learning Academy · Lección

Un bucle de épocas con validación

Evalúe después de cada pasada por los datos

Un bucle de épocas con validación es una lección gratuita de Deep Learning Academy en CoddyKit. Esta es la lección 2 de 4. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de Deep Learning Academy, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de Deep Learning Academy incluye 4 lecciones en total.

Partes de esta lección aún no han sido traducidas y se muestran en inglés.

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. 📈

Preguntas frecuentes

¿La lección «Un bucle de épocas con validación» es gratis?

Sí — el texto completo de «Un bucle de épocas con validación» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de Deep Learning Academy, actualiza a CoddyKit PRO. El curso de Deep Learning Academy incluye 4 lecciones en total.

¿Qué aprenderé en «Un bucle de épocas con validación»?

Evalúe después de cada pasada por los datos Practicas Deep Learning Academy con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.

¿Necesito experiencia previa para empezar Deep Learning Academy?

No se requiere experiencia previa. Deep Learning Academy en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 2 de 4.

¿Cuánto tiempo toma la lección «Un bucle de épocas con validación»?

La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.

¿Puedo escribir y ejecutar código en esta lección de Deep Learning Academy?

Sí. Cada lección de Deep Learning Academy incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.

Todas las lecciones de este curso

  1. Separe entrenamiento, validación y prueba
  2. Un bucle de épocas con validación
  3. Guardar y cargar con state_dict
  4. Early stopping según la pérdida de validación
← Volver a Deep Learning Academy