1. 개요
로지스틱 회귀(Logistic Regression)는 이진 분류(Binary Classification) 문제를 해결하는 대표적인 지도학습(Supervised Learning) 알고리즘입니다. 이름과는 달리 회귀가 아닌 분류 모델입니다.
예시:
- 이메일이 스팸인지 아닌지
- 이미지가 고양이인지 개인지
2. 작동 원리
2.1 선형 조합 (Linear Combination)
먼저 입력 특성(feature)의 선형 조합을 계산합니다:
$z = w_0 + w_1 x_1 + w_2 x_2 + \cdots + w_n x_n = \mathbf{w}^T \mathbf{x}$
2.2 시그모이드 함수 (Sigmoid Function)
선형 조합된 값을 시그모이드 함수에 통과시켜 확률 값으로 변환합니다:
$\sigma(z) = \frac{1}{1 + e^{-z}}$
이 값은 클래스 1일 확률을 나타냅니다. 일반적으로 임계값 0.5를 기준으로 분류합니다:
$\hat{y} = \begin{cases} 1 & \text{if } \sigma(z) \geq 0.5 \ 0 & \text{otherwise} \end{cases}$
3. 비용 함수 (Loss Function)
모델이 학습 중 최소화하는 비용 함수는 **이진 교차 엔트로피(Binary Cross-Entropy)**입니다:
$J(\theta) = -\frac{1}{m} \sum_{i=1}^{m} \left[ y^{(i)} \log(\hat{y}^{(i)}) + (1 – y^{(i)}) \log(1 – \hat{y}^{(i)}) \right]$
여기서:
- $m$: 데이터 샘플 수
- $y^{(i)}$: 실제 클래스 (0 또는 1)
- $\hat{y}^{(i)}$: 예측 확률값
최적화는 주로 **경사 하강법 (Gradient Descent)**을 사용합니다.
4. 주요 특징
항목 | 설명 |
---|---|
분류 유형 | 이진 또는 다중 클래스 (OvR 방식) |
출력 | 클래스 확률값 |
학습 속도 | 빠름 |
해석 가능성 | 높음 (가중치 확인 가능) |
정규화 가능 | L1 / L2 규제 가능 |
5. 장점과 단점
✅ 장점
- 간단하고 직관적이며 빠름
- 해석 가능 (특성 중요도 파악 가능)
- 확률 기반 예측 제공
❌ 단점
- 선형 결정 경계만 가능
- 이상치에 민감
- 복잡한 패턴 학습에 한계 있음
6. 다중 클래스 확장
- 로지스틱 회귀는 기본적으로 이진 분류용
- 다중 클래스 문제에는 One-vs-Rest (OvR) 방식 사용
7. 성능 평가 지표
모델 성능은 다음과 같은 지표로 평가합니다:
- 정확도 (Accuracy)
- 정밀도 (Precision)
- 재현율 (Recall)
- F1-score
- ROC-AUC
- 혼동 행렬 (Confusion Matrix)
8. 로지스틱 회귀 vs. 다른 모델
모델 | 특징 |
---|---|
로지스틱 회귀 | 선형 분류, 해석 용이 |
SVM | 마진 기반, 고차원 특화 |
결정 트리 | 비선형 처리 가능, 해석 가능 |
KNN | 인스턴스 기반, 직관적 |
신경망 | 복잡한 패턴 학습 가능, 해석 어려움 |
9. 결론
로지스틱 회귀는 선형적인 문제에서 빠르고 효과적인 결과를 제공하며, 해석성과 예측력의 균형을 갖춘 분류 알고리즘입니다. 특히 비즈니스 인사이트를 도출하거나 확률 기반 의사결정이 필요한 문제에 적합합니다. 복잡한 모델로 가기 전, 항상 시도해볼 가치가 있는 베이스라인 모델입니다. <script type=”text/javascript” async src=”https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.7/MathJax.js?config=TeX-MML-AM_CHTML”> </script> <script type=”text/x-mathjax-config”> MathJax.Hub.Config({ tex2jax: { inlineMath: [[‘$’,’$’], [‘\\(‘,’\\)’]], displayMath: [[‘$$’,’$$’], [‘\\[‘,’\\]’]], processEscapes: true } }); </script>
답글 남기기