본문 바로가기

Deep Learning/PyTorch

나만의 신경망 모듈 만들어보기!

PyTorch에서 나만의 신경망 계층을 모듈형태로 만들어 보고자 한다.

이 때, 중요한 것이 nn.Module을 상속한 클래스의 정의이다.
(nn.Module은 nn.Linear을 포함한 모든 계층의 base class 임)

다음과 같이 nn.Module을 상속한  커스텀 Class를 정의한 후
정의된 선형레이어 Class를 호출하여 쌓아올린뒤 다층신경망을 구축할 수 있는 방법이 하나이고,

또다른 방법은 앞서 정의한 Class를 기반으로 다른 Class를 통해 다층신경망을 구축한 후
마지막에 Class하나만을 호출하여 신경망을 구축하는 방법이다.

딥러닝에 관한 이론적 지식과 PyTorch에 대한 기술적 이해도가 어느정도 갖추어진 상태라면,
자신만의 딥러닝 네트워크를 한번 구축해 보는것은 어떨까?
(사실 초심자들은 Built-in 네트워크를 한줄한줄 읽어보면서 그들의 효율적인 코딩을 익히는게 우선인듯함)