Activation function(활성 함수)

2022. 3. 6. 18:38AI/Deep learning

    목차
반응형

why activation function?

    h(x) = v 𝜙(x)

    f(x) = w h(x)

    f(x) = w v 𝜙(x)

         = w 𝜙(x)

 

activation을 사용하지 않으면 최종 함수는 linear function

, activation 을 넣어야 non-linear이기에 activation function 사용

non-linear 해야 모든 함수에 근사 가능

 

 -> 모든 함수를 비선형 적으로 '근사' 하기 위해서 activation function을 사용

 

 

sigmoid

history

1980년대까지 sigmoid로 모든 종류의 함수를 근사할 수 있음을 증명하여 많이 사용되었음

그러나 학습 시 성능이 제대로 나오지 않았음

 

제프리 힌튼

학습 성능을 높일 수 있는 휴리스틱을 발견

sigmoid를 ReLU로 변경

증명은 없음

2017년에야 ReLU가 모든 종류의 함수를 근사할 수 있음을 증명

 

sigmoid 특징

0에서 1 사이의 값으로 normalize 하는 함수임

 

        𝜎(z) = 1 / (1 + e^-z)

 

z 축이 좌/우로 갈수록 값의 차이가 매우 적어짐 즉, 0과 1로 saturation이 발생

이는 미분에 좋지 않음 (기울기 값이 너무 작아 학습에 효과적이지 못함)

 

정수는 보통 (당시) 2의 32승의 정밀도를 갖기에 무한대로 작아지는 이 값을 제대로 표현하지 못하여 (즉, 값의 정밀도를 소실하여) 학습이 제대로 되지 않음

 

ReLU

Rectified Linear Unit

 

    sig(z) = max{z, 0}

 

        양수면 그대로 출력

        음수면 0

 

          |     /

          |   /

          | /

          +---------

 

 

반응형

'AI > Deep learning' 카테고리의 다른 글

user based CF, item based CF  (0) 2022.03.22
역전파 (Back-propagation)  (0) 2022.03.06
RNN(Recurrent Neural Network)  (0) 2022.03.06
seq2seq  (0) 2022.03.06
Loss 최소화, SGD, 가중치 갱신 방법  (0) 2022.03.06