Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 | 31 |
Tags
- bfs
- 순방향 신경망
- vanishing gradient
- 3d
- 딥러닝
- 손실 함수
- deep learning
- 동적계획법
- 베르누이 분포
- 과대적합
- 경사하강법
- 알고리즘
- BOJ
- 단층 퍼셉트론
- feedforward neural network
- OpenGL
- 베버의 법칙
- 기울기 소실
- 백준
- c++
- 계단 함수
- union-find
- 이진분류
- dijkstra
- 다익스트라
- DP
- 이진 분류
- 범용 근사 정리
- Perceptron
- dl
Archives
- Today
- Total
Hello COCOBALL!
[DL] 활성화 함수(Activation Function) 본문
활성화 함수
퍼셉트론이 입력신호를 처리하여 출력 신호를 결정하는 데 사용되는 비선형 함수이다.
다시 말하자면, 입력값들의 수학적 선형 결합을 다양한 형태의 비선형(혹은 선형) 결합으로 변환하는 역할을 한다.
인공 신경망이 복잡한 문제를 설명할 때 활성화 함수를 이용한 비선형 변환이 매우 중요한 역할을 하기 때문에 어떤 활성화 함수를 사용하는지에 따라 딥러닝의 예측력에 차이가 크다.
활성화 함수의 종류
1. 시그모이드 함수(Sigmoid Function)
- 특징
- 출력 범위: 0에서 1 사이(0보다 크고 1보다 작은 값이 출력되기 때문에 확률의 표현이 가능).
- 비선형성: 입력 값이 큰 경우 출력 값은 1에 가까워지고, 입력 값이 작은 경우 출력 값은 0에 가까워지며, 이는 신경망에 비선형성을 도입합니다.
- 미분 가능: 모든 점에서 미분 가능.
- 사용 사례: 신경망, 로지스틱 회귀, 이진 분류 문제에서 출력층 활성화 함수로 자주 사용됨.
- 장점:
- 기울기가 급변하여 발생하는 기울기 폭주(Gradient Exploding) 문제가 발생하지 않음.
- 단점:
- 기울기 소실(Vanishing Gradient) 문제: 입력 값이 매우 크거나 작을 때, 기울기가 매우 작아져서 학습이 느려지거나 멈출 수 있음.
- 출력 값이 항상 양수: 이는 다음 층의 뉴런이 항상 같은 방향으로 업데이트될 수 있음을 의미하여 학습에 부정적인 영향을 미칠 수 있음.
2. Tanh 함수
- 특징
- 출력 범위: -1에서 1 사이.
- 비선형성: Sigmoid와 유사하지만 출력 값이 0 중심이므로 신경망이 더 잘 수렴할 수 있음.
- 미분 가능: 모든 점에서 미분 가능.
- 사용 사례: 시그모이드 함수와 유사.
- 장점:
- 시그모이드 함수보다 범위가 넓어 출력값의 변화 폭이 크고, 기울기 소실 증상이 비교적 적음.
- 단점:
- Vanishing Gradient 문제: Sigmoid와 마찬가지로 입력 값이 매우 크거나 작을 때 기울기가 매우 작아지는 문제가 있음.
3. ReLU(Rectified Linear Unit) 함수
- 특징
- 출력 범위: 0에서 무한대.
- 비선형성: 단순하지만 비선형성을 제공하여 신경망이 복잡한 패턴을 학습할 수 있게 함.
- 미분 가능: 0이 아닌 모든 점에서 미분 가능.
- 사용 사례: 대부분의 현대 신경망에서 은닉층 활성화 함수로 사용됨, 가장 많이 사용되는 활성화 함수.
- 장점:
- Vanishing Gradient 문제 해결: 양수 영역에서는 기울기가 사라지지 않음.
- 계산 효율성: 다른 활성화 함수보다 계산이 간단하여 학습이 빠름.
- 단점:
- Dead Neurons 문제: 입력 값이 음수일 때 뉴런이 '죽을' 수 있음, 즉 뉴런의 출력이 항상 0이 될 수 있음.
4. Leaky ReLU 함수
- 특징
- 출력 범위: 음의 무한대에서 무한대.
- 비선형성: ReLU와 유사하지만, 음수 입력 값에서도 작은 기울기를 갖도록 함.
- 미분 가능: 0이 아닌 모든 점에서 미분 가능.
- 사용 사례: Dead Neurons 문제를 해결하기 위해 ReLU 대신 사용됨.
- 장점:
- Dead Neurons 문제 완화: 음수 영역에서도 작은 기울기를 가지므로 뉴런이 완전히 죽지 않음.
5. PReLU(Parametric Rectified Linear Unit) 함수
-
- 출력 범위: −∞에서 ∞까지.
- 비선형성: 입력 값이 음수일 때 비선형성을 제공하며, 파라미터 α에 따라 조절 가능.
- 미분 가능: 모든 점에서 미분 가능.
- 사용 사례: 표준 ReLU의 변형으로, 딥러닝 모델에서 은닉층 활성화 함수로 사용됨.
- 장점:
- 학습 가능 파라미터: 음수 부분의 기울기 α\alpha가 학습 가능하여 모델이 최적의 값을 학습할 수 있음.
- Dead Neurons 문제 완화: 음수 영역의 기울기를 조정하여 ReLU의 dead neurons 문제를 줄일 수 있음.
- 유연성: 특정 데이터셋에 맞춰 음수 영역의 기울기를 조정할 수 있어 더 유연한 모델링 가능.
- 단점:
- 계산 복잡성: 표준 ReLU보다 약간 더 복잡하여 계산 비용이 증가할 수 있음.
- 과적합 위험: 파라미터 α\alpha가 과적합을 초래할 수 있음.
6. ELU(Exponential Linear Unit)함수
- 출력 범위: −α에서 ∞까지.
- 비선형성: 음수 구간에서 지수 함수를 사용하여 비선형성을 제공.
- 미분 가능: 모든 점에서 미분 가능.
- 사용 사례: 다양한 신경망 모델에서 활성화 함수로 사용.
장점
- Vanishing Gradient 문제 해결: 음수 영역에서 기울기가 0으로 사라지지 않아 신경망의 학습이 지속될 수 있음.
- Robust to Noise: 잡음에 대해 더 강건한 특성을 가짐.
- Negative Saturation: 음수 영역에서 출력 값이 −α로 포화되며, 이는 신경망의 학습을 안정화시킴.
- Smooth Outputs: ReLU와 달리, 출력이 매끄럽게 변화하여 학습이 더 안정적일 수 있음.
단점
- 계산 복잡성: 지수 함수 연산으로 인해 계산이 더 복잡하고 느릴 수 있음.
- Hyperparameter: α 값을 설정해야 하며, 이 값이 모델의 성능에 영향을 미칠 수 있음.
7. Swish 함수
- 특징:
- 출력 범위: −∞에서 ∞까지.
- 비선형성: 부드럽고 비선형성을 제공하여 신경망이 복잡한 패턴을 학습할 수 있게 함.
- 미분 가능: 모든 점에서 미분 가능.
- 사용 사례: 다양한 신경망에서 은닉층 활성화 함수로 사용되며, ReLU 함수보다 성능이 더 좋은 경우가 있음.
- 장점:
- Gradient Flow: 입력이 음수일 때도 기울기가 0이 되지 않아, 네트워크가 계속 학습할 수 있음.
- Smoothness: 부드러운 함수 형태로, ReLU의 경계에서 발생하는 불연속 문제를 피할 수 있음.
- 성능 향상: 여러 실험에서 Swish 함수가 ReLU 등 다른 활성화 함수보다 더 나은 성능을 보이는 경우가 있음.
- 단점:
- 계산 복잡성: ReLU에 비해 계산이 조금 더 복잡하여 학습 속도가 느릴 수 있음.
- Dead Neurons 문제: ReLU보다는 덜하지만 여전히 일부 상황에서 발생할 수 있음.
8. Softmax 함수
- 특징
- 출력 범위: (0, 1) 사이의 값으로 출력되고, 모든 출력 값의 합은 1.
- 비선형성: 각 클래스에 대한 확률 분포를 생성하여 비선형성을 도입함.
- 미분 가능: 모든 점에서 미분 가능.
- 사용 사례: 주로 다중 클래스 분류 문제에서 출력층 활성화 함수로 사용됨.
- 장점:
- 확률 해석: 출력 값을 확률로 해석할 수 있어 분류 문제에 적합함.
- 단점:
- Exponentiation의 계산 복잡성: 계산 비용이 상대적으로 높음.
'Deep Learning' 카테고리의 다른 글
[DL] 손실 함수(Loss Function) (0) | 2024.06.23 |
---|---|
[DL] 기울기 소실(Vanishing Gradient) (0) | 2024.06.23 |
[DL] 퍼셉트론(perceptron) (0) | 2024.06.22 |
[DL] Overfitting, Underfitting (0) | 2024.06.21 |
[DL] 머신러닝(Machine Learning), 딥러닝(Deep Learning) (0) | 2024.06.21 |