시작하기무료로 시작하기

두 개의 출력이 있는 모델 아키텍처

이 연습 문제에서는 문자(character)와 알파벳(alphabet)을 모두 예측할 수 있는 다중 출력 신경망 아키텍처를 만들어 볼 거예요.

일반적인 구조를 떠올려 보세요. .__init__() 메서드에서는 이후 순전파에서 사용할 레이어들을 정의합니다. forward() 메서드에서는 먼저 입력 이미지를 몇 개의 레이어에 통과시켜 임베딩을 만들고, 이 임베딩을 두 개의 분리된 분류기 레이어에 각각 전달해 두 개의 출력을 얻습니다.

torch.nn은 일반적인 별칭으로 이미 임포트되어 있으니, 이제 모델을 만들어 봅시다!

이 연습은 강의의 일부입니다

PyTorch로 배우는 Intermediate Deep Learning

강의 보기

실습형 인터랙티브 연습

이 예제를 이 샘플 코드를 완성하여 풀어보세요.

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
        ____ = ____
        ____ = ____
코드 편집 및 실행