← 문제 목록/Ridge 회귀 (L2 정규화)
문제 해설

Ridge 회귀 (L2 정규화)

회귀 · easy

preview

Ridge 회귀 (L2 정규화)

선형 회귀(4번) 는 정규방정식 (XX)1Xy(X^\top X)^{-1} X^\top y 로 풉니다. 그런데 XXX^\top X 가 거의 특이행렬이면(특성 간 높은 상관) 해가 폭발. Ridge 는 이 문제를 단순한 트릭으로 해결:

w=(XX+λI)1Xyw = (X^\top X + \lambda I)^{-1} X^\top y

동일하게 쓰면 손실이 이렇게 바뀐 것:

L(w)=yXw2+λw2\mathcal{L}(w) = \|y - Xw\|^2 + \lambda \|w\|^2

Why it works — 가중치가 커지는 걸 페널티로 막아, 노이즈에 과적합되지 않고 해가 안정화됩니다.

λ\lambda 조정

  • λ=0\lambda = 0 : 일반 최소제곱 (unregularized)
  • λ\lambda \to \infty : w0w \to 0 (과소적합)
  • 사이 값: 실전에서 cross-validation 으로 탐색

과제

함수 fit_ridge(X, y, lam) 를 완성하세요.

  • X shape (N, D), y shape (N,), lam 스칼라.
  • 반환: w shape (D,).
  • np.linalg.solve 사용 권장 (직접 inverse 말고).

테스트 케이스

#이름검증
1lam=0 → 일반 최소제곱np.linalg.lstsq 와 일치
2lamw 작아짐lam=1e6 일 때 `
3shape (D,)
4sklearn Ridge 일치fit_intercept=False 로 비교
코드 작성
Loading...
실행 결과

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