의견.png

역전파

위키원
eom9522 (토론 | 기여)님의 2019년 9월 24일 (화) 13:02 판 (구동 방식)
이동: 둘러보기, 검색

역전파(Backpropagation)는 먼저 계산 결과와 정답의 오차를 구해 이 오차에 관여하는 값들의 가증치를 수정하여 오차가 작아지는 방향으로 일정 횟수를 반복해 수정하는 방법이다. 오차역전파 또는 오류역전파라고도 불린다.[1]

개요

역전파 알고리즘은 사슬 규칙을 이용하는 기울기 기반 최적화 알고리즘에 따라 인공신경망(ANN)을 효율적으로 훈련시키는 데 사용되는 방법이다. 이 역전파의 주요 특징은 학습 중인 작업을 수행할 수 있을 때까지 네트워크를 개선하기 위해 가중치 업데이트를 계산하는 반복적이고 재귀적이며 효율적인 방법이다. 역전파는 네트워크 설계 시 활성화 함수의 파생물을 알아야 한다. 자동 미분은 파생물을 훈련 알고리즘에 자동 및 분석적으로 제공할 수 있는 기술이다.[2]

구동 방식

  1. 임의의 초기 가중치()를 준 뒤 결과 ()를 계산한다.
  2. 계산 결과와 우리가 원하는 값 사이의 오차를 구한다.
  3. 경사 하강법을 이용해 바로 앞 가중치를 오차가 작아지는 방향으로 업데이트한다.
  4. 위 과정을 더이상 오차가 줄어들지 않을 때까지 반복한다.

여기서 '오차가 작아지는 방향으로 업데이트한다'는 의미는 미분 값이 0에 가까워지는 방향으로 나아간다는 말이다. 즉, '기울기가 0이 되는 방향'으로 나아가야 하는데, 이 말은 가중치에서 기울기를 뺐을 때 가중치의 변화가 전혀 없는 상태를 말한다. 따라서 오차역전파를 다른 방식으로 표현하자면 가중치에서 기울기를 빼도 값의 변화가 없을 때까지 계속해서 가중치 수정 작업을 반복하는 것이다. 이를 수식으로 표현하면 즉, 새 가중치는 현 가중치에서 '가중치에 대한 기울기'를 뺀 값이다.[3]

각주

  1. eccjang, 〈오차역전파〉, 《인코덤》, 2019-01-07
  2. Backpropagation〉, 《위키피디아》
  3. 모두의 딥러닝〉, 《더북》

참고자료

같이 보기

  의견.png 이 역전파 문서는 알고리즘에 관한 토막글입니다. 위키 문서는 누구든지 자유롭게 편집할 수 있습니다. [편집]을 눌러 이 문서의 내용을 채워주세요.