Pytorch로 시작하는 딥러닝 입문(04-04. 클래스로 파이토치 모델 구현하기)
2024. 2. 29. 17:52ㆍ딥러닝 모델: 파이토치
파이토치의 대부분의 구현체들은 모델을 생성할 때 대부분 클래스를 사용한다. 앞서 배운 로지스틱 회귀를 클래스로 구현해보자.
♣ 모델을 클래스로 구현하기
앞서 로지스틱 회귀 모델은 다음과 같이 구현했다.
이를 클래스로 구현하면 다음과 같다.
클래스 형태의 모델은 nn.Module을 상속받는다. __init__( )에서는 모델의 구조와 동작을 정의하는 생성자를 정의한다. 이는 파이썬에서 객체가 갖는 속성값을 초기화하는 역할로, 객체가 생성될 때 자동으로 호출된다.
super( ) 함수를 부르면 여기서 만든 클래스는 nn.Module 클래스의 속성들을 가지고 초기화된다.
forward( ) 함수는 모델이 학습데이터를 입력받아서 forward 연산을 진행시키는 함수이다. forward( ) 함수는 model 객체를 데이터와 함께 호출하면 자동으로 실행된다. 예를 들어 model 이라는 이름의 객체를 생성 후, model(입력 데이터)와 같은 형식으로 객체를 호출하면 자동으로 forward 연산이 수행된다.
♣ 로지스틱 회귀를 클래스로 구현하기
1. 훈련 데이터를 텐서로 선언하기
2. 클래스 정의하기
3. 모델과 옵티마이저 선언하기
4. 경사하강법을 사용하여 훈련하기
'딥러닝 모델: 파이토치' 카테고리의 다른 글
Pytorch로 시작하는 딥러닝 입문(05-02. 소프트맥스 회귀 이해하기) (0) | 2024.03.02 |
---|---|
Pytorch로 시작하는 딥러닝 입문(05-01. 원-핫 인코딩/One-Hot Encoding) (0) | 2024.03.01 |
Pytorch로 시작하는 딥러닝 입문(04-03. nn.Module 로지스틱 회귀 구현하기) (0) | 2024.02.27 |
Pytorch로 시작하는 딥러닝 입문(04-02. 파이토치로 로지스틱 회귀 구현하기) (0) | 2024.02.25 |
Pytorch로 시작하는 딥러닝 입문(04-01. 로지스틱 회귀: Logistic Regression, 시그모이드 함수) (0) | 2024.02.25 |