Zacznij terazZacznij za darmo

Architektura modelu z dwoma wyjściami

W tym ćwiczeniu zbudujesz architekturę wielowyjściowej sieci neuronowej, która będzie przewidywać zarówno znak, jak i alfabet.

Przypomnij ogólną strukturę: w metodzie .__init__() definiujesz warstwy używane później w przebiegu w przód. W metodzie forward() najpierw przepuszczasz obraz wejściowy przez kilka warstw, aby uzyskać jego osadzenie (embedding), które następnie trafia do dwóch oddzielnych warstw klasyfikatora – po jednej dla każdego wyjścia.

torch.nn jest już zaimportowany pod standardowym aliasem – czas zbudować model!

To ćwiczenie jest częścią kursu

Głębokie uczenie z PyTorch – poziom średnio zaawansowany

Zobacz kurs

Interaktywne ćwiczenie praktyczne

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

class Net(nn.Module):
    def __init__(self):
        super().__init__()
        self.image_layer = nn.Sequential(
            nn.Conv2d(1, 16, kernel_size=3, padding=1),
            nn.MaxPool2d(kernel_size=2),
            nn.ELU(),
            nn.Flatten(),
            nn.Linear(16*32*32, 128)
        )
        # Define the two classifier layers
        ____ = ____
        ____ = ____
Edytuj i uruchom kod