1. 개요[편집]
최소자승법(Least Squares Method, 최소제곱법)은 주어진 데이터와 모델 사이의 잔차 제곱합(sum of squared residuals)을 최소화하는 방향으로 모델의 미지 계수를 결정하는 방법이다. 방정식보다 관측이 더 많아 정확히는 풀 수 없는 과결정계(overdetermined system)를 다룰 때, “완벽하게 맞출 수 없다면 가장 덜 틀리게 맞추자”는 타협의 산물이다. 1805년 르장드르(Legendre)가 처음 발표했고, 가우스는 자기가 먼저 썼다고 우겼다.1
측정에는 오차가 따르므로 데이터 개수가 미지수보다 많은 상황이 오히려 정상이다. 이때 모든 데이터를 동시에 만족시키는 해는 없지만, 오차를 통계적으로 가장 잘 상쇄하는 “최선의 근사해”는 존재한다. 최소자승법은 회귀분석, 곡선맞춤, 데이터 보정, 나아가 보간과 근사의 근사(approximation) 쪽을 떠받치는 기둥이다.
2. 문제 설정과 정규방정식[편집]
개의 데이터를 개의 미지수()로 설명하는 선형 모델을 세우면 과결정 연립방정식 가 된다. 는 직사각 행렬이라 일반적으로 정확한 해가 없다. 대신 잔차 의 유클리드 노름 제곱을 최소화한다.
이 목적함수를 로 미분해 0으로 놓으면 그 유명한 정규방정식(normal equations)이 나온다.
는 정사각 대칭 행렬이므로, 이론적으로는 가우스 소거법이나 촐레스키 분해로 바로 풀 수 있다. 기하학적으로 보면 이 해는 를 의 열공간(column space)에 정사영(orthogonal projection)한 것이다. 잔차가 열공간에 수직이 되는 지점, 즉 더 이상 줄일 수 없는 최선의 자리다.2
3. 정규방정식의 함정[편집]
정규방정식은 깔끔해 보이지만 실무에서는 지뢰다. 를 만드는 순간 조건수(condition number)가 제곱으로 나빠지기 때문이다. 의 조건수가 라면 의 조건수는 가 된다.
원래도 아슬아슬하던 문제가 정규방정식을 세우는 순간 수치적으로 폭발할 수 있다는 뜻이다. 그래서 정밀도가 중요한 상황에서는 를 아예 만들지 않고 를 직접 분해하는 길을 택한다.
4. QR과 SVD 기반 풀이[편집]
수치적으로 견고한 정공법은 QR 분해를 쓰는 것이다. 로 분해하면(는 직교, 은 상삼각) 직교행렬이 노름을 보존하므로 최소자승 문제가 다음으로 축소된다.
이 상삼각이므로 후진대입으로 곧장 풀린다. 조건수를 제곱하지 않으니 정규방정식보다 훨씬 안정적이다.
더 극단적으로 병든 문제나 가 계수 부족(rank-deficient)인 경우에는 특이값 분해(SVD)가 최후의 보루다. 로 분해한 뒤 유사역행렬(pseudo-inverse) 을 쓰면, 해가 유일하지 않을 때조차 노름이 가장 작은 해를 골라준다.3 계산량은 SVD가 가장 비싸지만, 신뢰성만큼은 최고다.
| 방법 | 수치 안정성 | 비용 | 계수 부족 대응 |
|---|---|---|---|
| 정규방정식 | 나쁨() | 저렴 | 불가 |
| QR 분해 | 좋음 | 중간 | 제한적 |
| 특이값 분해 | 최고 | 비쌈 | 완벽 |
5. 곡선맞춤[편집]
최소자승법의 대표 응용은 데이터에 곡선을 맞추는 곡선맞춤(curve fitting)이다. 다항식 맞춤 을 예로 들면, 데이터를 대입해 만든 반데르몬드(Vandermonde) 행렬이 곧 가 되고, 계수 벡터가 미지수 가 된다. 여기서 주의할 점은 여기는 보간이 아니라 근사라는 것. 곡선이 모든 점을 통과할 필요는 없고, 전체적으로 가장 잘 지나가면 된다.4
가중치를 붙이면 신뢰도가 높은 데이터에 더 큰 발언권을 줄 수 있고(가중 최소자승), 이는 측정 분산이 제각각인 실험 데이터를 다룰 때 통계적으로 정당화된다. 잔차가 정규분포를 따른다는 가정 아래에서 최소자승해는 최대우도추정량(MLE)과 일치한다는 점이, 이 방법이 통계학과 수치해석 양쪽에서 사랑받는 이유다.
6. 비선형 최소자승[편집]
모델이 계수에 대해 비선형이면 정규방정식을 한 번에 풀 수 없다. 대신 현재 추정값 주변에서 모델을 선형화하고 선형 최소자승을 반복적으로 푸는 전략을 쓴다. 대표 알고리즘이 가우스-뉴턴(Gauss-Newton)법과, 여기에 감쇠 항을 더해 안정성을 높인 레벤버그-마쿼트(Levenberg-Marquardt)법이다. 뿌리를 따라가면 뉴턴-랩슨법의 사촌뻘이다. 곡선 하나 맞추자고 반복 수렴을 기도하게 되는 순간, 수치해석러의 삶이 시작된다.
7. 시뮬레이션 속의 최소자승[편집]
최소자승법은 통계 교과서 밖, 시뮬레이션 코드 곳곳에도 숨어 있다. 유한체적법에서 비정렬 격자(unstructured mesh)의 기울기(gradient)를 계산할 때가 대표적이다. 셀 하나에 이웃이 여러 개 붙어 있으면 그 값들로부터 기울기를 정확히 결정할 수 없는 과결정 상황이 되는데, 이때 최소자승 기울기 재구성(least-squares gradient reconstruction)이 표준 처방이다. 이웃 값들의 차이를 가장 잘 설명하는 기울기 벡터를 최소자승으로 뽑아내는 것이다.
축소차수 모델링(reduced-order modeling)이나 대리모델(surrogate model) 구축에서도 최소자승은 약방의 감초다. 비싼 시뮬레이션을 몇 번 돌려 얻은 샘플에 다항식이나 방사기저함수(RBF)를 최소자승으로 맞춰, 값싼 근사 모델을 세운다. 최적설계에서 설계 공간을 훑을 때 매번 풀 해석을 돌리는 대신 이 대리모델을 쿼리하면 시간을 극적으로 아낄 수 있다.5 데이터가 있는 곳이라면 최소자승은 늘 근처를 어슬렁거린다.
8. 관련 문서[편집]
9. Footnotes[편집]
-
가우스는 1809년 저서에서 “나는 1795년부터 이 방법을 썼다”고 주장했다. 우선권 논쟁은 수학사의 국룰이지만, 가우스는 오차의 정규분포(가우스 분포)와 최소자승을 통계적으로 연결하는 이론까지 세워버려서 사실상 판정승을 거뒀다. ↩
-
잔차 이 의 열공간에 수직이라는 조건 을 풀어 쓰면 그대로 정규방정식이 된다. 즉 정규방정식은 “잔차를 열공간에 직교시켜라”는 기하학적 명령을 대수로 옮긴 것이다. ↩
-
SVD는 특이값이 0에 가까운 성분을 잘라내는(truncated SVD) 방식으로 잡음까지 걸러낼 수 있다. 이 성질 덕분에 SVD는 영상 압축, 추천 시스템, 주성분분석(PCA) 등 최소자승 바깥에서도 만능 열쇠 취급을 받는다. ↩
-
이걸 헷갈려서 “데이터 10개에 9차 다항식을 맞췄더니 완벽하게 통과한다”며 좋아하는 사람이 있는데, 그건 과적합(overfitting)의 교과서적 사례다. 점 사이에서 곡선이 미친 듯이 요동치는 룽게 현상을 목격하게 된다. ↩
-
대리모델을 잘못 믿으면 최적점이 아니라 근사 오차가 만든 가짜 골짜기로 수렴하는 참사가 벌어진다. 그래서 실무에서는 대리모델을 맹신하지 않고 주기적으로 진짜 시뮬레이션으로 검산하는 절차를 끼워 넣는다. 공짜 근사에는 늘 세금이 붙는다. ↩