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