2021. 5. 10. 07:01ㆍ기본 딥러닝
ㅇ 딥러닝 네트워크에서는 노드에 들어오는 값들에 대해 곧바로 다음 레이어로 전달하지 않고 주로 비선형 함수를 통과
시킨 후 전달한다. 이때 사용하는 함수를 활성화 함수(Activation Function) 이라 부른다.
1. 소프트 맥스 함수
- 소프트맥스 함수는 범주 수만큼의 차원을 갖는 입력벡터를 받아서 확률(요소의 합이 1)로 변환해줌
- 소프트맥스 함수는 모든 출력 값의 상대적인 크기를 고려한 값을 출력하기 때문에, 다 범주 분류 신경망에 적합
- 소프트맥스는 가중치의 합이 1이 되도록 정규화하여 확률분포를 만들어 줌
- 예측이 잘 이루어지지 않으면 여러 레이블이 비슷한 확률을 가지게 될 수 있다
2. 시그모이드 함수
- 0 또는 1 로 결과가 나오므로 이진분류에 좋음
- 값이 0 또는 1에 수렴하므로 역전파 시 기울기 소실문제 발생
- 함수값의 중심이 0이 아니라서 학습이 느림
3. 하이퍼볼릭탄젠트 함수
- 함수의 중심값을 0으로 옮겨 시그모이드의 학습 시간이 느려지는 단점을 해결
- 그러나 일정 값 이상 커질시 미분값이 소실되는 기울기 소실문제는 여전히 남아있음
4. ReLU 함수 (Rectified Linear Unit)
- x>0 이면 기울기가 1인 직선이고, x<0이면 함수값이 0이된다.
- 시그모이드나 탄젠트 함수에 비해 학습이 빠름, 연산 비용이 크지 않고 구현이 간단
- x<0인 값들에 대해서는 기울기가 0이기 때문에 뉴런이 죽을 수 있다는 단점 존재
5. Leaky ReLU 함수
- x<0인 값들에 대해서는 기울기가 0이기 때문에 뉴런이 죽을 수 있다는 단점을 해결
6. GELU 함수
- 0 주변에서 부드럽게 변화해 학습 성능을 높임
'기본 딥러닝' 카테고리의 다른 글
Batch Normalization (배치 정규화) (0) | 2021.05.29 |
---|---|
Regularization과 Normalization (0) | 2021.05.29 |
오버피팅 해결 방법 (0) | 2021.05.26 |
옵티마이저 (최적화 함수) (0) | 2021.05.10 |
손실함수 (0) | 2021.05.08 |