Sobes.tech
Middle

Kuidas luua ja treenida klassifikaatorit PyTorchis?

sobes.tech AI

Vastus AI-lt

PyTorchis klassifikaatori loomise ja selle treenimise jaoks tuleb teha mitu sammu:

  1. Mudel defineerida — luua klass, mis pärib nn.Module-st ja kirjeldada arhitektuur.
  2. Andmed ette valmistada — laadida ja teisendada andmed DataLoader-ks.
  3. Määrata kaotuse funktsioon ja optimeerija.
  4. Mudel treenida — läbida andmed tsüklis, arvutada väljund, arvutada viga, teha tagasivool ja uuendada kaalus.

Näide lihtsast klassifikaatorist 10 klassi jaoks:

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)  # näide 28x28 piltidele

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

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

# Treeningtsükli näide
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()

Seda koodi saab laiendada, lisades kihte, aktivatsioonifunktsioone, andmetöötlust ja muud.