Neural Network를 업데이트 할 떄도 Gradient Descent를 사용한다.

Partial derivateive, Chian Rule이 사용된다.

Implementation (Feed-Forward)

"apple"과 "grape"를 판별하는 Binary Classification이라고 해보자.

4가지 Feature(taste, color, shape, price)를 고려했을 때 Neural Network의 구조는 아래와 같을 것이다.

Untitled

첫번째 Hidden Layer에 연결된 weight를 $\bold W_1$이라고 하자. Input Layer에 입력된 Feature들을 $\bold x$라고 하자. 첫번째 Layer의 Node들의 값은 아래와 같이 Inner Product로 표현될 것이다. 앞서 정리한데로 Activation Function으로 ReLU Function이 많이 사용된다.

$$ \bold y = f(\bold W_1\bold x) $$

첫번째 Layer의 Node들의 값들을 $\bold y$라고 했을 때 두번쨰 Hidden Layer의 첫번째 Node는 또한 아래와 같이 구할 수 있다.

$$ \bold z = f(\bold W_2\bold y) $$

마지막으로 Scroe또한 아래와 같이 얻을 수 있다.

$$ f(\bold W_3 \bold z) $$

여기서 확률을 얻기 위해 Activation Function을 Softmax를 사용해도 된다.

(example)

Untitled

위를 적용해서 직접 구현해보면 좋다.

How to learn?

Training이란 무엇인가? Training은 최적의 Weight값을 찾는 것이다.