2021. 6. 14. 10:59ㆍAI-딥러닝/딥러닝
역전파는 신경망을 학습시킬 때 이용하는 알고리즘으로서 출력값과 정답의 오차를 네트워크에서 역전파시켜 네트워크의 가중치와 편향을 최적화시는 일을 말합니다.
예를들면, 시험을 보고 오답을풀며 복습을 해서 시험을 더 잘 보게 되는 과정이라고 생각하면 편합니다.
역전파(backpropagation)과정은 다음과 같은 순서로 진행됩니다.
1. 순전파로 얻은 출력값과 정답과의 오차를 하나씩 층을 거슬러 올라가며 역방향으로 전파시킵니다. 이때 전파시킨 오차에 근거하여 각 층의 가중치와 편향(bias)의 수정량을 구합니다.
2. 이후 모든 층의 가중치(weight)와 편향(bias)을 수정해 나갑니다.
3. 위 과정을 반복하면 네트워크에서는 점차 오차를 최소화시키도록 최적화 되어가는 학습이 진행됩니다.
4. 위에서 일어나는 최적화에 관여하는 함수가 바로 (Optimizer) 입니다.
5. 학습에 성공한 네트워크는 임의의 입력값에 대해 유연하게 인지, 판단을 할 수 있게 됩니다.
역전파를 좀 더 효율적으로 최적화 시키기 위해 크게 5가지의 수치값을 조정을 하게 됩니다.
1. 훈련데이터와 테스트데이터
2. 손실함수
3. 경사 하강법
4. 최적화 알고리즘
5. 배치사이즈
첫번째 신경망 학습에 이용되는 데이터는 “훈련 데이터”와 “테스트 데이터”로 나뉘며, 훈련데이터는 신경망 학습을 위해 사용되고, 테스트 데이터는 학습결과를 검증하기 위해 사용됩니다.
두번째 신경망에서 결과로 출력되는 여러 값은 각기 정답이 있습니다. 이런 출력값과 정답의 오차를 정의하는 함수를 “손실함수”라고 합 니다. 그리고 신경망에서 오차를 순차적으로 이전 층으로 전파시켜 가중치와 오차를 조금씩 수정하면서 오차를 최소화시키는데 “경사 하강법”이라는 알고리즘을 사용합니다.
세번째 경사 하강법에서 가중치와 오차를 반복적으로 수정하는 최적화 알고리즘에는 “확률적 경사 하강법” , “아다그라드” 등 다양한 방법이 있습니다
네번째 가중치와 오차의 수정은 데이터를 그룹으로 묶어서 진행되는데, 이 그룹의 크기를 “배치사이즈”라고 합니다.
위 네가지 요소를 수정해가면서 딥러닝은 우리가 원하는 정답에 최적화되어 갑니다.
'AI-딥러닝 > 딥러닝' 카테고리의 다른 글
딥러닝 - 경사하강법 (0) | 2021.06.14 |
---|---|
딥러닝 - 손실함수 (0) | 2021.06.14 |
딥러닝 - 활성화 함수 (0) | 2021.06.14 |
딥러닝 - 순전파 (0) | 2021.06.14 |
딥러닝 - 뉴런을 모아 네트워크화 (0) | 2021.06.13 |