딥러닝(deep learning)/인공신경망(Neural Network)
sigmoid의 한계 ( vanishing gradient )
바코94
2019. 8. 1. 16:32
sigmoid 의 미분은 A(1-A)가 된다. 아래와 같은 그림이 되는데 문제는 오차역전파 과정에서 loss의 값이 0에 가까워 진다. 즉 파라미터 업데이트가 안되는 것과 같은 효과가 난다.
이에 대한 xavier/he initialization 을 통해 해결한다. 자세한건 박사논문 참조.
또한 sigmoid 대신 relu나 tanh 같은 activation function을 사용해도 되는데 또 편미분해야하는 문제점이 있다.
xavier/he initialization 구현한 코드는 다음과 같다.
np.random.rand 대신 randn을 사용한다.(xavier방법) 이후 np.sqrt로 다음과 같이 사용한다. ( he 방법)