Sobes.tech
Middle

Jak stworzyć i wytrenować klasyfikator w PyTorch?

sobes.tech AI

Odpowiedź od AI

Aby utworzyć i wytrenować klasyfikator w PyTorch, należy wykonać kilka kroków:

  1. Zdefiniuj model — utwórz klasę dziedziczącą po nn.Module i opisz architekturę.
  2. Przygotuj dane — załaduj i przekształć dane do DataLoader.
  3. Zdefiniuj funkcję straty i optymalizator.
  4. Wytrenuj model — przejdź przez dane w pętli, oblicz wyjście, policz błąd, wykonaj propagację wsteczną i zaktualizuj wagi.

Przykład prostego klasyfikatora dla zadania z 10 klasami:

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)  # przykład dla obrazów 28x28

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

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

# Przykład pętli treningowej
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()

Ten kod można rozbudować, dodając warstwy, funkcje aktywacji, przetwarzanie danych itp.