Sobes.tech
Middle

Como criar e treinar um classificador no PyTorch?

sobes.tech IA

Resposta da IA

Para criar e treinar um classificador no PyTorch, deve seguir vários passos:

  1. Definir o modelo — criar uma classe que herde de nn.Module e descrever a arquitetura.
  2. Preparar os dados — carregar e transformar os dados num DataLoader.
  3. Definir a função de perda e o otimizador.
  4. Treinar o modelo — percorrer os dados em ciclo, calcular a saída, contar o erro, fazer retropropagação e atualizar os pesos.

Exemplo de um classificador simples para uma tarefa com 10 classes:

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)  # exemplo para imagens 28x28

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

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

# Exemplo de ciclo de treino
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 pode ser expandido adicionando camadas, funções de ativação, processamento de dados, etc.