Middle
როგორ შევქმნათ და ვასწავლოთ კლასიფიკატორი PyTorch-ში?
sobes.tech AI
პასუხი AI-სგან
PyTorch-ში კლასიფიკატორის შექმნა და მისი სწავლება მოითხოვს რამდენიმე ნაბიჯის შესრულებას:
- მოდელის განსაზღვრა — შექმენით კლასი, რომელიც მემკვიდრეობს
nn.Module-დან და აღწერეთ არქიტექტურა. - მონაცემების მომზადება — ჩაატარეთ მონაცემების ჩატვირთვა და გარდაქმნა
DataLoader-ში. - ზარალის ფუნქციის და ოპტიმიზატორის განსაზღვრა.
- მოდელის სწავლება — გაიარეთ მონაცემები ციკლში, გამოითვალეთ გამოსავალი, ითვალეთ შეცდომა, განახორციელეთ უკანა გავრცელება და განაახლეთ წონები.
მარტივი კლასიფიკატორის მაგალითი 10 კლასი:
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) # მაგალითი 28x28 სურათებისთვის
def forward(self, x):
return self.fc(x)
model = SimpleClassifier()
criterion = nn.CrossEntropyLoss()
optimizer = optim.SGD(model.parameters(), lr=0.01)
# სწავლების ციკლის მაგალითი
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()
ამ კოდი შეიძლება გაფართოვდეს დამატებით ფენებით, აქტივაციის ფუნქციებით, მონაცემების დამუშავებით და სხვა.