Middle
Kuidas luua ja treenida klassifikaatorit PyTorchis?
sobes.tech AI
Vastus AI-lt
PyTorchis klassifikaatori loomise ja selle treenimise jaoks tuleb teha mitu sammu:
- Mudel defineerida — luua klass, mis pärib
nn.Module-st ja kirjeldada arhitektuur. - Andmed ette valmistada — laadida ja teisendada andmed
DataLoader-ks. - Määrata kaotuse funktsioon ja optimeerija.
- 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.