Sobes.tech
Middle

¿Cómo crear y entrenar un clasificador en PyTorch?

sobes.tech AI

Respuesta de la IA

Para crear y entrenar un clasificador en PyTorch, debes seguir varios pasos:

  1. Definir el modelo — crear una clase que herede de nn.Module y describir la arquitectura.
  2. Preparar los datos — cargar y transformar los datos en un DataLoader.
  3. Definir la función de pérdida y el optimizador.
  4. Entrenar el modelo — recorrer los datos en un ciclo, calcular la salida, contar el error, realizar la retropropagación y actualizar los pesos.

Ejemplo de un clasificador simple para una tarea con 10 clases:

import torch
import torch.nn as nn
import torch.optim as optim

class SimpleClassifier(nn.Module):
    def __init__(self):
        super().__init__()
        self.fc = nn.Linear(784, 10)  # ejemplo para imágenes de 28x28

    def forward(self, x):
        return self.fc(x)

model = SimpleClassifier()
criterion = nn.CrossEntropyLoss()
optimizer = optim.SGD(model.parameters(), lr=0.01)

# Ejemplo de ciclo de entrenamiento
for epoch in range(num_epochs):
    for inputs, labels in dataloader:
        outputs = model(inputs)
        loss = criterion(outputs, labels)
        optimizer.zero_grad()
        loss.backward()
        optimizer.step()

Este código se puede ampliar añadiendo capas, funciones de activación, procesamiento de datos, etc.