시작하기무료로 시작하기

Sequential 블록 만들기

이진 분류 CNN 모델 템플릿을 재설계하면서 합성곱 레이어를 하나의 블록으로 묶어 보려고 해요. 이렇게 하면 여러 레이어를 순차적으로 쉽게 쌓을 수 있어요. 이 개선된 모델을 사용하면 다양한 CNN 아키텍처를 훨씬 수월하게 설계할 수 있습니다.

torchtorch.nn(별칭 nn)은 이미 임포트되어 있습니다.

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

PyTorch로 배우는 이미지 딥러닝

강의 보기

연습 안내

  • __init__() 메서드에서 합성곱 레이어 블록을 정의하고 self.conv_block에 할당하세요.
  • forward() 단계에서 입력을 방금 정의한 합성곱 블록에 통과시키세요.

실습형 인터랙티브 연습

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

class BinaryImageClassification(nn.Module):
  def __init__(self):
    super(BinaryImageClassification, self).__init__()
    # Create a convolutional block
    self.conv_block = ____(
      nn.Conv2d(3, 16, kernel_size=3, stride=1, padding=1),
      nn.ReLU(),
      nn.Conv2d(16, 32, kernel_size=3, stride=1, padding=1),
      nn.ReLU(),
    )
    
  def forward(self, x):
    # Pass inputs through the convolutional block
    x = ____
    return x
코드 편집 및 실행