역전파 개념(Back-Propagation)

순전파(Forward-Propagation)를 통해 예측값과 실제값의 오차를 최소화하기 위해 파라미터() 를 업데이트하는 과정

+center


파라미터 업데이트(학습) 과정

순전파(Forward Propagation)

+center

활성화 함수(h, o): Sigmoid 함수


가중치합 1


활성화 함수 1


가중치합 2


활성화 함수 2


역전파(Back Propagation)

Loss Function: MSE


편미분과 Chain rule

편미분
  • 에 대하여, 에 대해서 편미분 하는 것을 라 표현함
    • 위 함수에 대한 의 편미분을 구하면 ( 는 상수 취급),
Chain rule
  • 합성함수의 미분을 구하기 위해 chain rule 성질을 이용함


역전파 1단계

+center

  • 에 대한 업데이트
  • 우선, 업데이트하기 위해서 를 계산함
  • 함수를 에 대해 미분하기 위해서는 합성함수의 미분 즉, Chain rule 성질을 이용해 미분해야함(함수 에 다이렉트로 가 포함되어 있지 않으므로)
  • Chain rule에 따라, 아래와 같이 표현함
  • 먼저, 첫번 째 항인 을 구해보면 에 대해 편미분하므로, 아래와 같이 정리됨
  • 다음, 두번 째 항인 을 정리하는데, 시그모이드 함수를 통해 나온 값을 정의하며, 시그모이드 함수의 미분은 로 정의됨
  • 마지막으로 을 구해보면
  • 따라서 구한 값들을 모두 대입해 최종값을 구할 수 있다

최적화

  • 업데이트가 완료된 가중치는 최적화 방법에 따라 가중치 업데이트를 한다
  • 최적화 방법: 경사 하강법
  • 학습률( , Learning rate, 하이퍼 파라미터): 0.5
  • 같은 층의 나머지 가중치들도 위 방법과 동일하게 기울기를 구하고, 가중치 업데이트를 진행함


역전파 2단계

  • 에 대한 업데이트
  • 업데이트하기 위해서 를 계산함
  • chain rule에 따라, 다음과 같이 나타낼 수 있다
  • 이때, 출력층의 각 에러 를 아래와 같이 정의하고,
  • 미분법칙에 따라 을 풀어 쓰면 다음과 같다
  • 위 식의 우변의 두항을 각각 구해보면, 은 다음과 같다
  • 는 다음과 같다
  • 따라서 위에서 구한 을 대입하여 계산해보면 에 대한 의 기울기는 아래와 같다

파라미터 업데이트

  • 의 가중치를 업데이트하고, 같은 레이어의 나머지 가중치들도 동일한 방식으로 업데이트함


결과 확인

업데이트 된 가중치에 대해서 다시 순전파를 진행하여 오차가 감소하였는지 확인함

기존 오차

파라미터 업데이트 후 오차


참고


Prev: 4. 손실 함수(Loss Function)

Next: 6. 최적화와 경사하강법(Optimization)


DeepLearning