Content 09

09: Neural Networks - Learning

Neural network cost function

Gradient checking

역전파는 종종 버그가 생기게 되는데, 이러한 버그들은 경사하강법으로 적용해 보았을 때 cost가 정확히 감소하는 것 처럼 보일 수도 있기 때문에

역전파가 잘 진행되고 있는지 확인하는 Gradient Checking 방법이 필요하다.

Random Initialization

이제까지 Forward Propagation, Backward Propagation 을 이용하여 $\theta$ 를 학습하는 방법에 대해서 알아보았다.

이제 초반 $\theta$ 의 값을 정하는 방법에 대해서 알아보자

모든 $\theta$ 에 대해 0으로 초기화 하였다고 생각하자

그림과 같이 나가는 weight가 동일하게 계산되기 때문에 $\delta$ 값도 동일하게 된다. 그럼 BP 진행후의 업데이트 되는 $\theta$ 들의 값도

동일하게 되게 된다. 이러한 문제를 Symmetry Problem 이라 부르며, 이러한 문제 때문에 Random initailization 방법을 사용한다.

Random initialization