<해당 글은 'Pytorch로 시작하는 딥러닝' 책을 읽으면서 공부한 내용을 정리한 블로그입니다. 중요한 내용 위주로 정리해서 개인적으로 이해가 된 부분들은 생략되어 있을 수 있습니다.>

1) 데이터 준비 (Tensor)

- Scalar (0차원 텐서)

- Vector (1차원 텐서)

- 행렬  (2차원 텐서)

- 3차원 텐서: image에서 (height x width x RGB Channel)

- 4차원 텐서: batch (주로 16, 32, 64) 로 여러 이미지들의 묶음 (img 수 x height x width x RGB Channel)

- 5차원 텐서: batch x fps (동영상; batch 내 영상 클립 수 x fps x height x width x RGB Channel)

2) Variable 및 계산 그래프

    y=wx+b 라는 선형 모델을 사용할 때, 임의의 값으로 초기화되어 학습하며 이 변하는 w,b는 학습 parameter이고, dataset을 기반으로 정해지는 x, y는 고정 parameter이다. Pytorch의 경우 변수 선언 시 requires.grad를 true (학습), false (고정) varuable로 설정할 수 있다.

3) 신경망 모델 (Fitting)

4) 네트워크 구현

5) 오차함수: Sum of squared (SSE), MSE, Cross-Entropy 등을 이용한다. backward() 함수로 w,b의 변화 정도를 계산하여 측정할 수 있다. (단, 여러번 사용시에는 param.grad.data.zero_()로 앞서 계산된 값을 지워줘야함)

6) 신경망 최적화 (Optimize): Learning rate 등의 hyper-parameter 습 파라미터 (w,b) 조정 시 사용하는 비율을 의미함. Adam, RmsProp, SGD 등이 있다.

7) 데이터 로딩 (DataLoader class): Dataset class에서 init, len, getitem 메소드에 대한 구현 후 DataLoader class를 사용해 batch 형태로 변환한다.

'Programming > Deep Learning' 카테고리의 다른 글

7. Recurrent Neural Networks (RNN) & LSTM  (0) 2022.04.08
6. Convolution Neural Network (CNN)  (0) 2021.02.04
5. 머신러닝 Workflow  (0) 2021.02.01
4. 머신러닝 입문  (0) 2021.01.22
3. 신경망 구조  (0) 2021.01.19

+ Recent posts