
L2-regularized Logistic Regression [medium]
v1 로지스틱 회귀 에 L2 정규화 를 추가. Loss:
L=BCE(p,y)+2λ∥w∥22
Gradient (BCE + L2 미분):
∇w=N1X⊤(p−y)+λw
∇b=N1∑i(pi−yi)(bias 는 regularize 안 함)
왜 L2?
- 과적합 방지: 가중치가 무한대로 튀는 걸 막음 (선형 분리 가능 데이터에서 특히).
- 소프트마진 SVM 과 동일한 정규화 철학.
- λ 크면 w 작아짐 → 단순 모델. 작으면 v1 과 거의 동일.
주의: bias 는 regularize 하지 않음
- bias 에 penalty 를 걸면 데이터 중심 추정이 왜곡됨.
- convention:
w 만 regularize.
과제
함수 fit_l2(X, y, lr, n_steps, lam) 를 완성하세요.
- 입력:
X (N, D), y (N,) binary, lr, lam 스칼라.
- 반환:
(w, b).
- for 루프 OK (반복 본질).
테스트 케이스
| # | 이름 | 검증 |
|---|
| 1 | 반환 (w, b) | |
| 2 | λ=0 → v1 결과와 일치 | |
| 3 | λ 큼 → ‖w‖ 작아짐 | |
| 4 | λ=∞ (아주 큼) → w ≈ 0 | |
| 5 | 학습으로 선형 분리 가능 데이터 정확도 ↑ | |
| 6 | bias 는 regularize 안 됨 | w 와 b 를 따로 관찰 |