Middle
Jak vytvořit a natrénovat klasifikátor v PyTorch?
sobes.tech AI
Odpověď od AI
Pro vytvoření a nácvik klasifikátoru v PyTorch je třeba provést několik kroků:
- Definovat model — vytvořit třídu, která dědí od
nn.Module, a popsat architekturu. - Připravit data — načíst a transformovat data do
DataLoader. - Definovat funkci ztráty a optimalizátor.
- Naučit model — projít data v cyklu, vypočítat výstup, spočítat chybu, provést zpětnou propagaci a aktualizovat váhy.
Příklad jednoduchého klasifikátoru pro úlohu s 10 třídami:
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) # příklad pro obrázky 28x28
def forward(self, x):
return self.fc(x)
model = SimpleClassifier()
criterion = nn.CrossEntropyLoss()
optimizer = optim.SGD(model.parameters(), lr=0.01)
# Příklad tréninkové smyčky
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()
Tento kód lze rozšířit přidáním vrstev, aktivačních funkcí, zpracování dat atd.