역전파는 Deep Learning의 기본 알고리즘으로, 신경망이 오류를 통해 학습하고 성능을 개선하는 방법을 이해하는 데 필수적입니다
역전파라 불리는 이유는, 이전 단계에서 계산된 오차가 네트워크를 통해 다시 전파되어 출력 계층에서 입력 계층으로 이동하기 때문입니다
이 과정에는 초기 순방향 통과와 반대 방향으로 네트워크의 출력 계층에서 입력 계층으로 전파되는 계산이 포함됩니다.
이 역전파는 미적분학의 Chain Rule에 크게 의존합니다.
모델 구성
-
입력 레이어
- 프로세스는 초기 데이터가 네트워크에 공급되는 입력 레이어에서 시작됩니다.
- 각 입력에는 입력의 중요성을 나타내는 가중치가 할당됩니다. 이러한 가중치는 일반적으로 무작위로 초기화됩니다.
-
숨겨진 레이어
- 가중치가 적용된 입력은 하나 이상의 숨겨진 레이어를 통과합니다.
- 이러한 각 숨겨진 레이어는 수신한 입력에 트랜스폼을 적용하며, 보통 ReLU 또는 sigmoid 함수와 같은 비선형 활성화 함수를 사용합니다.
-
출력 레이어
- 마지막 레이어는 출력 레이어로, 네트워크의 예측을 생성하는 역할을 담당합니다.
오차 계산
네트워크가 예측을 수행하면 이를 실제 값과 비교합니다.
이 비교는 네트워크의 예측과 실제 값의 차이를 계산하는 loss function를 사용하여 수행됩니다.
계산 결과는 네트워크의 오류를 측정하는 척도가 됩니다.
역전파
이전 단계에서 계산된 오차는 네트워크를 통해 다시 전파되어 출력 계층에서 입력 계층으로 이동합니다.
여기서 '역전파’라는 용어가 유래되었습니다.
이 단계에서 알고리즘은 네트워크의 가중치에 대한 오차 함수의 기울기를 계산합니다. 이 기울기는 오차 함수의 가장 가파른 증가 방향을 가리키는 다차원 도함수입니다. 미적분학의 연쇄 법칙은 각 계층에서 계산된 일련의 도함수를 곱하여 가중치와 관련된 오차의 도함수를 계산할 수 있게 해주기 때문에 여기서 중요한 역할을 합니다.
가중치 업데이트
그라데이션이 계산되면 네트워크에서 이를 활용하여 가중치를 조정합니다.
이 조정은 일반적으로 경사 하강법과 같은 최적화 알고리즘을 사용하여 수행됩니다.
가중치는 경사도와 반대 방향으로 업데이트되며, 이는 네트워크의 오류를 줄이기 위해 가중치가 조정된다는 의미입니다.
조정의 크기는 학습률이라는 매개변수에 의해 조절되며, 학습률이 작을수록 가중치 조정이 작아지고 그 반대의 경우도 마찬가지입니다.
위의 경우, 학습률은 위의 식에서 새 가중치의 계수라 생각하면 됩니다.
반복
순방향 전파, 오류 계산, 역방향 전파 및 가중치 업데이트로 구성된 전체 프로세스가 여러 번 반복됩니다.
이 프로세스의 각 반복을 에포크라고 합니다.
각 에포크가 지나면 네트워크의 예측이 실제 값에 가까워져 오차가 감소합니다.
이 반복 프로세스는 네트워크의 성능이 만족스럽다고 판단될 때까지 계속됩니다.
부족한 점이나 잘못 된 점을 알려주시면 시정하겠습니다 :>
'AI' 카테고리의 다른 글
왜 딥러닝이 뜨고 있을까 (0) | 2023.07.20 |
---|---|
신경망 (0) | 2023.07.20 |
Back-propagation and Autograd (0) | 2023.07.18 |
평균 제곱 오차 (Mean Squared Error, MSE) (0) | 2023.07.17 |
계층적 클러스터링 (0) | 2023.07.16 |