순전파 & 역전파

혜쿰·2023년 11월 24일
0
post-thumbnail

순전파(Feed Forward)와 역전파(Backpropagation)는 인공 신경망 학습에서 중요한 개념이다.

1. 순전파(Feed Forward)

  • 순전파는 신경망에서 입력층에서 출력층으로 신호가 전달되는 과정을 의미한다. 입력값이 네트워크를 통과하여 순방향으로 각 레이어의 뉴런을 거치며 최종 출력을 생성한다.
  • 입력층에서 시작하여 은닉층을 거쳐 출력층으로 이동하는 동안, 각 뉴런은 가중치와 활성화 함수를 통해 입력값을 변환하고 다음 뉴런으로 신호를 전달한다.
  • 순전파는 학습 단계가 아니며, 단순히 입력값을 네트워크에 통과시켜 출력값을 계산하는 과정이다.

2. 역전파(Backpropagation)

  • 역전파는 신경망의 가중치를 조정하여 학습하는 과정을 말한다. 신경망의 출력과 실제 값 사이의 오차를 계산하고, 이 오차를 최소화하기 위해 역방향으로 각 레이어의 가중치를 조정한다.
  • 먼저, 순전파로 입력값을 전달하여 출력을 계산합니다. 그 후, 출력값과 실제값 사이의 오차를 계산한다.
  • 역전파는 이 오차를 거꾸로 전파하여 각 레이어의 가중치를 조정한다. 이 때, 경사 하강법(Gradient Descent)을 사용하여 오차를 최소화하는 방향으로 가중치를 업데이트한다.
  • 이 과정은 역방향으로 진행되기 때문에 '역전파(backward propagation of errors)'라고 불린다.

참고) 경사 하강법이란?


경사 하강법(Gradient Descent)은 함수의 최솟값을 찾기 위해 사용되는 최적화 알고리즘 중 하나이다. 이 알고리즘은 기울기(경사)를 따라 함수의 값을 조금씩 조정하여 최솟값을 찾아가는 방법이다. 경사 하강법은 다음과 같은 단계로 작동한다.

1. 초기화: 먼저 최적화할 함수와 최적화할 매개변수(가중치 및 편향)를 초기화한다.
2. 기울기 계산: 현재 매개변수에서 함수의 기울기(경사)를 계산한다. 이를 위해 역전파 알고리즘을 사용하여 손실 함수의 기울기를 구한다.
3. 매개변수 업데이트: 기울기의 반대 방향으로 매개변수를 조금씩 업데이트한다. 학습률(learning rate)이라는 하이퍼파라미터를 사용하여 얼마나 큰 단계로 업데이트할지 결정한다.
4. 수렴 여부 확인: 지정된 조건(예: 일정한 반복 횟수 또는 기준 오차값에 도달)에 도달할 때까지 2번부터 3번 과정을 반복한다.

역전파를 통해 신경망은 입력값과 실제값 사이의 오차를 줄이는 방향으로 학습하며, 이를 통해 신경망이 주어진 작업을 수행하는 데 필요한 가중치를 조정하고 최적화한다.

🔎 비용함수랑 무슨 관련이 있을까?

순전파과 역전파는 비용 함수(Cost Function)와 밀접한 관련이 있다.

1. 순전파에서의 비용 함수(Cost in Feed Forward)

  • 순전파 과정에서는 입력 데이터가 네트워크를 통과하여 예측값이 생성된다.
  • 비용 함수는 실제값과 예측값 사이의 차이를 측정한다. 이 차이를 나타내는 지표로 주로 평균 제곱 오차(Mean Squared Error)나 크로스 엔트로피(Cross Entropy) 등이 사용된다.
  • 이 비용 함수의 값은 학습 중에 네트워크가 얼마나 잘 예측하고 있는지를 나타낸다. 작을수록 네트워크의 예측이 실제값과 가깝다는 것을 의미한다.

2. 역전파에서의 비용 함수(Cost in Backpropagation)

  • 역전파 과정에서는 순전파에서 계산된 비용 함수의 값에 따라 각 레이어의 가중치를 조정한다.
  • 비용 함수의 값은 오차를 계산하는 데 사용되며, 역전파 알고리즘에서 이 오차는 거꾸로 전파되어 각 레이어의 가중치 업데이트에 영향을 미친다.
  • 이 오차를 최소화하기 위해 경사 하강법과 같은 최적화 알고리즘이 사용되며, 이를 통해 네트워크의 가중치가 조정된다.

순전파에서의 비용 함수는 네트워크가 현재 상태에서 얼마나 잘 예측하고 있는지를 나타내고, 역전파에서의 비용 함수는 이러한 예측의 오차를 줄이기 위해 가중치를 조정하는 데 사용된다. 따라서 비용 함수는 네트워크의 학습 방향을 결정하고 최적화하는 데 중요한 역할을 한다.

🔎 정리


정리하자면, 순전파는 입력에서 출력까지의 전달 과정이며, 역전파는 신경망이 학습하고 가중치를 조정하기 위해 출력에서 입력 방향으로 오차를 전파하는 과정이다. 함께 작동하여 신경망이 입력 데이터를 처리하고 학습하며, 최적의 가중치를 찾게 된다.









순전파, 역전파 이미지 출처및 참고

0개의 댓글

관련 채용 정보