← 문제 목록/가중 최소제곱 (WLS)
문제 해설

가중 최소제곱 (WLS)

회귀 · easy

preview

가중 최소제곱 (WLS)

45번 다변수 선형 회귀모든 샘플을 동등하게 취급합니다. 실전에선:

  • 관측 불확실성이 다르다 (일부 센서는 noise 가 큼).
  • 비균형 데이터 (최근 데이터를 더 중시).
  • 이상치 가중치 낮추기.

WLS 는 각 샘플에 가중치 wi>0w_i > 0 를 주고 최소화:

minβiwi(xiβyi)2\min_\beta \sum_i w_i (x_i^\top \beta - y_i)^2

닫힌 식:

β=(XWX)1XWy,W=diag(w1,,wN)\boldsymbol{\beta} = (X^\top W X)^{-1} X^\top W \mathbf{y}, \quad W = \operatorname{diag}(w_1, \dots, w_N)

구현 팁

실제로는 W 를 행렬로 만들 필요 없이 각 행에 √w 를 곱해서 OLS 를 돌리는 게 효율적 (하지만 여기선 공식 그대로 구현해도 무방).

과제

함수 fit_weighted_linear(X, y, sample_weights) 를 완성하세요.

  • X shape (N, D), y shape (N,), sample_weights shape (N,) (양수).
  • 반환: w shape (D,).
  • np.diag(sample_weights)W 만들어 공식 적용.

테스트 케이스

#이름검증
1모든 weight = 1 → OLS45번 결과와 일치
2shape(D,)
3일부 weight 0 → 해당 샘플 무시
4큰 가중치는 해당 샘플 강하게 맞춤
5수치 검증손계산과 일치
코드 작성
Loading...
실행 결과

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