3.3 역전파(BackProgation)

tmdwo1016·2026년 9월 27일

1. 인공 신경망의 이해

x = 입력 값 (2개)
w = 가중치
z = 입력값이 각각 가중치와 곱해진 값들에 대해서 모두 더해진 값(가중합)
-> 시그모이드 함수 거치지 않은 활성화 함수의 입력
h 또는 o = 시그모이드 함수를 지난 후 각 뉴러느이 출력값

2. 순전파(Forward Propagation)

Process : 입력 -> 가중치. 입력 -> 가중합 z -> 은닉층 (시그모이드 함수 적용) -> 출력 -> 가중치 입력 -> 가중합 z -> 은닉층 (시그모이드 함수 적용)

  • 오차 계산 : MSE (평균제곱 오차 계산)

즉, 순전파는 입력층에서 출력층 방향으로 향하는 단계

3. 역전파 1단계 (BackPropagation Step 1)

  • 방향 : 오차 기울기를 출력층에서 마지막 은닉층 방향으로 보냄

  • 목표 : 최종 출력 오차를 줄이기 위해 출력층 직전 가중치를 얼마나 조정해야 할지 계산하고 수정

  • 연쇄 법칙 : 미분의 합성 함수 미분법을 사용해 출력값의 오차가 가중치에 미치는 영향을 역방향으로 추적

전체 출력값을 미분

미분한 값에 대해서 첫 번째 항을 보면 o_1은 시그모이드 함수의 출력값임.

이를 미분하게되면 F(x) * (1-F(X)) 된다고 함.

그렇게 해서 계산을 한 후 모든 항을 곱함. 여기서 중요한 것은 이 값들에 대해서 가중치를 업데트하는 마지막 결과물인데 우리가 이전에 선형회귀 방정식을 구할 때 학습률 보정을 했던것을 기억할 수 있음.

그렇다면 가중치 - 미분(기울기) * 학습률 = 새로운 가중치로 말할 수 있음. (학습률을 기울기에 도달하기 위해 얼마나 강하게 조절하느냐에 대한 내용이며 쉽게 말해 종류가 다른 가중치 라고 표현할 수 있을 것 같음.)

그렇게 해서 결국 최종 시그모이드 출력값에서 다시 가중치를 조정하는 작업을 거치는 역전파를 통해 예측값과 정답의 차이를 바탕으로 가중치가 잘못된 것인지 판단할 수 있음.

Process : 오차 계산 -> 출력층 기울기 계산 -> 가중치 업데이트

4. 역전파 2단계 (BackPropagation Step 2)

역전파를 시행했다면 입력층 방향으로 동일하게 역전파를 시행하면 됨. 지금까지 나눠서 시행하는 것처럼 보이지만 실제로는 단 한번에 쭉 진행되며 은닉층이 2개라면 그 과정에서 가중치를 업데이트 해야하는 층의 단계가 은닉층 개수만큼 늘어나다.

결론 : 인공 신경망의 학습은 오차를 최소화하는 가중치를 찾는 목적으로 순전파와 역전파를 바녹하는 것을 말한다.

profile
할 게 많은데 놀거야?

0개의 댓글