더북(TheBook)

1 딥러닝의 태동, 오차 역전파

 

앞서 XOR 문제를 해결했지만, 입력 값과 출력 값을 알고 있는 상태에서 가중치(w)와 바이어스(b)를 미리 알아본 후 이를 집어넣었습니다. 하지만 이것은 ‘모델링’이라고 할 수 없습니다. 둘째 마당의 회귀 모델에서 살펴본 바와 같이 우리가 원하는 것은 데이터를 통해 스스로 가중치를 조절하는 ‘학습’의 실현입니다. 오차 역전파 방법은 어떻게 해서 숨겨진 은닉층의 가중치를 업데이트할 수 있었을까요? 이를 설명하기 위해 다시 경사 하강법 이야기로 돌아가 봅시다.

경사 하강법은 임의의 가중치를 선언하고 결괏값을 이용해 오차를 구한 후 이 오차가 최소인 지점으로 계속해서 조금씩 이동시키는 것이었습니다. 이 오차가 최소인 지점은 미분했을 때 기울기가 0이 되는 지점이라고 했습니다. 그런데 지금 이야기하고 있는 경사 하강법은 ‘단일 퍼셉트론’, 즉 입력층과 출력층만 존재할 때 가능합니다. 은닉층이 생기면서 우리는 두 번의 경사 하강법을 실행해야 합니다. 즉, 그림 9-1과 같이 가중치를 한 번 수정하면 되던 작업이 그림 9-2와 같이 가중치를 두 번 수정해야 하는 것입니다.

 

그림 9-1 | 단일 퍼셉트론에서 오차 수정

 

그림 9-2 | 다층 퍼셉트론에서 오차 수정

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.