1. Sigmoid 함수
Sigmoid 함수는 입력값을 0과 1 사이의 실수 값으로 변환하는 비선형 함수다.
수식은 다음과 같다.
σ(x)=1+e−x1
- 입력이 큰 음수일 경우 0에 가까워지고, 큰 양수일 경우 1에 가까워진다.
- 출력 범위는 (0, 1)로 제한되므로 확률적 해석이 가능하다.
활용 예시
- 로지스틱 회귀(logistic regression) 모델의 출력층
- 이진 분류(binary classification) 문제의 신경망 출력층
2. Softmax 함수
Softmax 함수는 다중 클래스 분류 문제에서 각 클래스에 속할 확률을 계산할 때 사용된다.
출력값을 확률로 정규화하여 전체 합이 1이 되도록 만든다.
Softmax(zi)=∑j=1Kezjezi
여기서
- zi는 클래스 i에 대한 logit 값,
- K는 전체 클래스의 개수이다.
특징
- 출력 벡터의 각 원소는 0~1 사이의 값을 가지며, 모든 원소의 합은 1이 된다.
- 가장 큰 logit 값을 가진 클래스가 가장 높은 확률을 갖는다.
- 다중 분류 문제(MNIST, ImageNet 등)에서 널리 활용된다.
3. Logit의 개념
Logit은 확률을 log-odds 형태로 변환한 값이다.
수식은 다음과 같다.
logit(p)=ln(1−pp)
- Sigmoid 함수의 역함수(inverse function)이다.
- 신경망 모델에서는 **활성화 함수 적용 전의 원시 출력값(raw output)**을 일반적으로 logit이라 부른다.
즉, logit은 아직 확률로 변환되지 않은 모델의 점수(score)이며, 이를 Sigmoid나 Softmax 함수를 통해 확률 값으로 해석할 수 있다.
4. 개념 간 관계
- Logit: 모델의 선형 결합 결과(원시 출력값)
- Sigmoid: logit을 0~1 사이의 확률 값으로 변환 (이진 분류에 적합)
- Softmax: 여러 logit 값을 확률 분포로 변환 (다중 분류에 적합)
결국, 딥러닝 분류 문제에서는 logit → (sigmoid/softmax) → 확률이라는 흐름을 통해 모델의 예측 결과를 해석한다.
✅ 정리
딥러닝에서 logit은 모델이 직접 산출하는 값이며, 이 값은 그대로는 확률로 해석하기 어렵다.
Sigmoid는 이 값을 이진 분류 문제에서 확률로 변환하는 역할을 하고, Softmax는 다중 분류 문제에서 확률 분포로 변환하는 역할을 한다.