2022. 3. 6. 18:38ㆍAI/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 |