Sobes.tech
Middle

Kaip sukurti ir apmokyti klasifikatorių PyTorch?

sobes.tech AI

Atsakymas iš AI

Sukurti ir apmokyti klasifikatorių PyTorch reikia atlikti keletą žingsnių:

  1. Apibrėžti modelį — sukurti klasę, kuri paveldi iš nn.Module, ir aprašyti architektūrą.
  2. Paruošti duomenis — įkelti ir paversti duomenis į DataLoader.
  3. Nustatyti praradimo funkciją ir optimizatorių.
  4. Apmokyti modelį — pereiti per duomenis cikle, apskaičiuoti išėjimą, suskaičiuoti klaidą, atlikti atgalinį sklidimą ir atnaujinti svorius.

Pavyzdys paprasto klasifikatoriaus, skirtas 10 klasių užduočiai:

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)  # pavyzdys 28x28 vaizdams

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

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

# Apmokymo ciklo pavyzdys
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()

Šį kodą galima išplėsti pridėjus sluoksnių, aktyvacijos funkcijų, duomenų apdorojimo ir kt.