'ELU'에 해당되는 글 1건

  1. 2019.12.30 [머신러닝/딥러닝] Sigmoid << ReLU
Deep Learning2019. 12. 30. 23:43
반응형

 김성훈 교수님의 [모두를 위한 딥러닝] 강의 정리

 - https://www.youtube.com/watch?reload=9&v=BS6O0zOGX4E&feature=youtu.be&list=PLlMkM4tgfjnLSOjrEJN31gZATbcj_MpUm&fbclid=IwAR07UnOxQEOxSKkH6bQ8PzYj2vDop_J0Pbzkg3IVQeQ_zTKcXdNOwaSf_k0

 - 참고자료 : Andrew Ng's ML class

  1) https://class.coursera.org/ml-003/lecture

  2) http://holehouse.org/mlclass/ (note)

 


1. Sigmoid

 - Sigmoid 함수는 binary classification에 적절한 함수

 - 처음은 input later, 마지막은 output layer, 가운데 보이지 않는 부분은 hidden layer

 

 - Vanishing Gradient : 이러한 hidden layer를 2, 3단이 아니라 9, 10단까지 늘릴 경우, 오히려 정확도가 0.5 밖에 되지 않는 문제 발생 : sigmoid 함수가 0~1 사이의 값이므로 이를 9, 10단만큼 곱해지는 경우 거의 0에 수렴하는 작은 값이 되어버림.

 

 

2. ReLU (Rectified Linear Unit)

 - Vanishing Gradient를 방지하기 위해, Sigmoid 함수의 개선 함수로 ReLU 함수가 제시됨

 - 0보다 작은 값이 나온 경우 0을 반환하고, 0보다 큰 값이 나온 경우 그 값을 그대로 반환

 - ReLU 구현 :

   함수 max(0, x)

   텐서플로우 적용시에는 sigmoid 함수 대신 relu 함수 사용

 

3. Sigmoid < ReLU

 

4. ReLU 외 다양한 활성화 함수들 (Activation Functions)

 - ReLU : max(0, x)처럼 음수에 대해서만 0으로 처리하는 함수
 - Leaky ReLU : ReLU 함수의 변형으로 음수에 대해 1/10로 값을 줄여서 사용하는 함수
 - ELU : ReLU를 0이 아닌 다른 값을 기준으로 사용하는 함수
 - maxout : 두 개의 W와 b 중에서 큰 값이 나온 것을 사용하는 함수
 - tanh : sigmoid 함수를 재활용하기 위한 함수. sigmoid의 범위를 -1에서 1로 넓힘

반응형
Posted by CCIBOMB