상세 컨텐츠

본문 제목

Training Neural Network(1)

인공지능

by 후추리 2024. 12. 18. 21:47

본문

- 우리의 목표는 loss를 줄이기 위해 optimal weight를 찾는것

 

* Dataset Splitting *

- Train set : 모델 학습에 쓰임

- Validation set : 다양한 모델들간의 퍼포먼스를 비교하기 위해 사용됨

- Test set : 마지막 평가에 쓰임

- K-Folds cross Validation : 데이터를 K개의 파트로 나누고 하나를 validation set, 나머지를 train set으로 사용하는데 돌아가며 역할을 바꿈

- 1장의 이미지를 통해 loss가 나오고, 해당 모델로 모든 train dataset에 적용해주면 unstable함

- 모든 train dataset에 대해 CNN을 해줄 수 없으므로 미니배치 트레이닝을 해줌

- Iteration : 1개의 미니배치를 통해 1번 backpropagation을 해주는 것

- Epoch : 모든 iteration이 끝나면 1 epoch을 했다고 함 (1 에폭이 끝나면 데이터셋을 섞어줌)

- Stochastic Gradient Descent : Mini-batch

 

 

* Optimizer *

- local minima : zero gradient(기울기가 0이 되는 문제점)

- global minima를 지향

- local minima를 해결하는 방법이 Momentum update

- Momentum update : 현재 방향에 이전에 축적된 방향을 적용

 

- Learning Rate(α) : 가중치를 얼마나 업데이트 할 지 결정하는 값

 

- Loss Curve를 통해 모델 훈련의 과정을 확인해야 함

 

 

 

* Activation Functions *

- activation 함수로 시그모이드, tanh 함수를 사용하면 layer가 쌓일수록 값은 더 작아짐

- 가중치가 업데이트 되지 않는 문제가 생김

- Relu와 Leaky Relu 함수가 효율적임

 

 

* Dropout *

- Fully connected layer에서 사용

- 랜덤하게 노드의 반을 없애줌

- 훈련세트에서만 사용함

 

 

 

* Data Augmentation *

- 데이터 증식

- 하나의 이미지를 여러가지 방식으로 여러장 만들어줌

'인공지능' 카테고리의 다른 글

Recurrent Neural Network  (1) 2024.12.19
Training Neural Network(2)  (5) 2024.12.19
Convolutional Neural Network  (1) 2024.12.18
인공지능 - Convolution  (1) 2024.10.24
인공지능 - Optimization(학습)  (3) 2024.10.24

관련글 더보기