Zacznij terazZacznij za darmo

Model klasyfikacji wieloklasowej

Mając gotowy szablon modelu klasyfikacji binarnej, możesz teraz rozbudować go o obsługę klasyfikacji wieloklasowej. Model powinien przyjmować liczbę klas jako parametr, dzięki czemu będzie można go łatwo dostosować do konkretnego zadania klasyfikacji wieloklasowej w przyszłości.

Biblioteki torch oraz torch.nn jako nn zostały już zaimportowane. Wszystkie obrazy mają rozmiar 64×64 piksele.

To ćwiczenie jest częścią kursu

Głębokie uczenie dla obrazów z PyTorch

Zobacz kurs

Instrukcje do ćwiczenia

  • Zdefiniuj metodę __init__, przyjmując self i num_classes jako parametry.
  • Utwórz w pełni połączoną warstwę z rozmiarem wejściowym 16*32*32 i liczbą klas num_classes jako wyjściem.
  • Utwórz funkcję aktywacji softmax z parametrem dim=1.

Interaktywne ćwiczenie praktyczne

Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.

class MultiClassImageClassifier(nn.Module):
  
    # Define the init method
    def ____(____, ____):
        super(MultiClassImageClassifier, self).__init__()
        self.conv1 = nn.Conv2d(3, 16, kernel_size=3, stride=1, padding=1)
        self.relu = nn.ReLU()
        self.maxpool = nn.MaxPool2d(kernel_size=2, stride=2)
        self.flatten = nn.Flatten()

        # Create a fully connected layer
        self.fc = ____(____, ____)
        
        # Create an activation function
        self.softmax = ____(____)
Edytuj i uruchom kod