시작하기무료로 시작하기

forward 메서드 완성하기

__init__ 메서드에서 레이어를 설정한 뒤에는, forward 메서드가 데이터가 레이어를 어떻게 통과하는지를 결정합니다. PyTorch Lightning에서는 이런 분리가 코드를 깔끔하고 유지 보수가 쉽도록 해 줍니다. 생성자 구조를 만드는 방법은 이미 보셨으니, 이제는 forward 패스에 집중해 분류 로직이 학습에 적합하도록 명확하고 최적화되어 있는지 확인해 보겠습니다. 여기서는 __init__ 안의 레이어가 이미 정의되어 있으니, forward 흐름에만 집중하시면 됩니다.

lightning.pytorchtorch.nn은 각각 plnn으로 이미 임포트되어 있습니다.

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

PyTorch Lightning으로 만드는 확장 가능한 AI 모델

강의 보기

연습 안내

  • ClassifierModel 안에 forward 메서드를 구현하세요.
  • 히든 레이어 뒤에 ReLU 활성화를 적용하세요.

실습형 인터랙티브 연습

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

class ClassifierModel(pl.LightningModule):
  
    def __init__(self, input_dim, hidden_dim, output_dim):
        super().__init__()
        self.hidden = nn.Linear(input_dim, hidden_dim)
        self.output = nn.Linear(hidden_dim, output_dim)
        
    # Define forward method
    def ____(self, ____):
        # Complete the forward pass
        x = self.hidden(x)
        x = ____(x)
        x = self.output(x)
        return x
코드 편집 및 실행