프로그래밍/머신러닝
Sigmoid의 문제점 : 왜 Sigmoid는 안될까?
2jun0
2019. 5. 17. 02:19
우연히 YOLO를 공부하다 다음과 같은 동영상을 보게 되었다.
전반적인 퍼셉트론 내용도 다루고 있는데, 거기서 Sigmoid함수를 왜 쓰지 않는지 이유를 알 수 있었다.
이유는 간단하다.
sigmoid함수의 도함수(미분한 것)의 최대값이 1/4인데, (위의 그림 참고)
이것이 하나의 층으로 이루어 진 것이면 괜찮지만, 여러개의 층인 모델의 경우,
input layer쪽으로 역전파 할수록, 1/4 * 1/4 = 1/16 .... 1/16 * 1/4 = 1/64... 이런식으로 점점 영향력이 작아진다는 문제점이 있다.
그래서 이런 문제점을 해결하려면 도함수의 최대값이 1인 Activation 함수를 사용해야 한다.
그런 함수에는 Tanh이나 Relu같은 함수가 있다.