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

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

즉, 순전파는 입력층에서 출력층 방향으로 향하는 단계
방향 : 오차 기울기를 출력층에서 마지막 은닉층 방향으로 보냄
목표 : 최종 출력 오차를 줄이기 위해 출력층 직전 가중치를 얼마나 조정해야 할지 계산하고 수정
연쇄 법칙 : 미분의 합성 함수 미분법을 사용해 출력값의 오차가 가중치에 미치는 영향을 역방향으로 추적

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

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

그렇게 해서 계산을 한 후 모든 항을 곱함. 여기서 중요한 것은 이 값들에 대해서 가중치를 업데트하는 마지막 결과물인데 우리가 이전에 선형회귀 방정식을 구할 때 학습률 보정을 했던것을 기억할 수 있음.
그렇다면 가중치 - 미분(기울기) * 학습률 = 새로운 가중치로 말할 수 있음. (학습률을 기울기에 도달하기 위해 얼마나 강하게 조절하느냐에 대한 내용이며 쉽게 말해 종류가 다른 가중치 라고 표현할 수 있을 것 같음.)

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

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