Sobes.tech
Middle

როგორ შევქმნათ და ვასწავლოთ კლასიფიკატორი PyTorch-ში?

sobes.tech AI

პასუხი AI-სგან

PyTorch-ში კლასიფიკატორის შექმნა და მისი სწავლება მოითხოვს რამდენიმე ნაბიჯის შესრულებას:

  1. მოდელის განსაზღვრა — შექმენით კლასი, რომელიც მემკვიდრეობს nn.Module-დან და აღწერეთ არქიტექტურა.
  2. მონაცემების მომზადება — ჩაატარეთ მონაცემების ჩატვირთვა და გარდაქმნა DataLoader-ში.
  3. ზარალის ფუნქციის და ოპტიმიზატორის განსაზღვრა.
  4. მოდელის სწავლება — გაიარეთ მონაცემები ციკლში, გამოითვალეთ გამოსავალი, ითვალეთ შეცდომა, განახორციელეთ უკანა გავრცელება და განაახლეთ წონები.

მარტივი კლასიფიკატორის მაგალითი 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()

ამ კოდი შეიძლება გაფართოვდეს დამატებით ფენებით, აქტივაციის ფუნქციებით, მონაცემების დამუშავებით და სხვა.