728x90
순전파, 역전파, 손실함수, 경사하강법, 옵티마이저, 배치사이즈
신경망의 학습 순서
- 데이터가 입력되면 신경망 각 층에서 가중치 및 활성화 함수 연산을 반복적으로 수행한다.
- 1의 과정을 모든 층에서 반복한 후에 출력층에서 계산된 값을 출력한다.
- 손실 함수를 사용하여 예측값(Prediction)과 실제값(Target)의 차이를 계산한다.
- 경사하강법과 역전파를 통해서 각 가중치를 갱신한다.
- 학습 중지 기준을 만족할 때까지 1-4의 과정을 반복한다.
- 순전파가 모의고사를 치루는 거라고 생각하면 손실함수는 채점을 하는것이고 역전파는 오답노트를 쓰는 것이라고 비유 할 수있다.
순전파
- 입력층에서 입력된 신호가 은닉층의 연산을 거쳐 출력층에서 값을 내보내는 과정이다.
- 순전파에서는 입력된 데이터에 가중치-편향 연산을 수행한다.
손실 함수(Loss function)
- 출력된 값과 그 데이터의 타겟값을 손실 함수에 넣어 손실(Loss or Error)를 계산한다.
- MSE(Mean-Squared Error), CEE(Cross-Entropy Error) 등이 있다.
역전파(Backward Propagation)
- 반대 방향으로 손실(Loss or Error) 정보를 전달해주는 과정이다.
- 입력 신호 정보를 입력층부터 출력층까지 전달하여 값을 출력한다.
- 손실 정보를 출력층부터 입력층까지 전달하여 각 가중치를 얼마나 업데이트 해야할 지를 구하는 알고리즘이다.
- 역전파에서 사용하는 손실은 순전파의 결과와 실제 값의 차이를 바탕으로 계산된 것이다.
- 역전파에서는 손실(Loss)을 줄이는 방향으로 가중치가 갱신된다.
- 역전파의 주요 메커니즘인 편미분과 Chain rule(연쇄 법칙)이 사용된다.
경사 하강법(Gradient Descent)
- 손실 함수 𝐽 의 경사(Gradient)가 작아지는 방향으로 업데이트 하면 손실 함수의 값을 줄일 수 있다.
- 해당 가중치에서의 비용 함수의 도함수(=비용 함수를 미분한 함수)를 계산하여 경사가 작아질 수 있도록 가중치를 변경한다.
옵티마이저(Optimizer)
- 경사를 내려가는 방법을 결정하는 것이다.
배치사이즈
미니 배치 경사 하강법에서 사용하는 미니 배치의 크기를 배치 사이즈(Batch size) 라고 한다.
순전파, 손실계산, 역전파 1회 를하는 가중치를 한번 수정하는 단위를 Iteration이라고 한다.
# of Data = Batch_size × Iteration
300x250
'코딩💻' 카테고리의 다른 글
[Machine learning] 과적합,과소적합, 회귀모델의 평가지표(MAE,MSE,RMSE) (0) | 2022.11.16 |
---|---|
[Python] 동적계획법(Dynamic Programming), 탐욕알고리즘(Greedy) (0) | 2022.10.27 |
[Python] BFS와 DFS 정리 (0) | 2022.10.26 |
[Deep Learning] 퍼셉트론, 활성화함수, 신경망구조 (0) | 2022.10.26 |
그래프와 인접리스트 인접행렬, 순회(전위,중위,후위) (1) | 2022.10.25 |