Sobes.tech
Middle

Wie erstellt und trainiert man einen Klassifikator in PyTorch?

sobes.tech KI

Antwort von AI

Um einen Klassifikator in PyTorch zu erstellen und zu trainieren, sind mehrere Schritte erforderlich:

  1. Modell definieren — eine Klasse erstellen, die von nn.Module erbt, und die Architektur beschreiben.
  2. Daten vorbereiten — Daten laden und in einen DataLoader umwandeln.
  3. Verlustfunktion und Optimierer definieren.
  4. Modell trainieren — durch die Daten iterieren, Ausgaben berechnen, Fehler zählen, Backpropagation durchführen und Gewichte aktualisieren.

Beispiel für einen einfachen Klassifikator für eine Aufgabe mit 10 Klassen:

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)  # Beispiel für 28x28 Bilder

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

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

# Beispiel für einen Trainingsloop
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()

Dieser Code kann erweitert werden, indem Schichten, Aktivierungsfunktionen, Datenverarbeitung usw. hinzugefügt werden.