← 문제 목록/L2-regularized Logistic Regression [medium]
문제 해설

L2-regularized Logistic Regression [medium]

분류 · medium

preview

L2-regularized Logistic Regression [medium]

v1 로지스틱 회귀L2 정규화 를 추가. Loss:

L=BCE(p,y)+λ2w22L = \text{BCE}(p, y) + \frac{\lambda}{2} \|\mathbf{w}\|_2^2

Gradient (BCE + L2 미분):

w=1NX(py)+λw\nabla_\mathbf{w} = \frac{1}{N} X^\top (p - y) + \lambda \mathbf{w} b=1Ni(piyi)(bias 는 regularize 안 함)\nabla_b = \frac{1}{N} \sum_i (p_i - y_i) \qquad \text{(bias 는 regularize 안 함)}

왜 L2?

  • 과적합 방지: 가중치가 무한대로 튀는 걸 막음 (선형 분리 가능 데이터에서 특히).
  • 소프트마진 SVM 과 동일한 정규화 철학.
  • λ\lambda 크면 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학습으로 선형 분리 가능 데이터 정확도 ↑
6bias 는 regularize 안 됨w 와 b 를 따로 관찰
코드 작성
Loading...
실행 결과

코드를 작성하고 Run 을 눌러보세요.