최소제곱법
📂행렬대수최소제곱법
정의
행렬 A∈Cm×n 와 벡터 b∈Cm에 대해 선형시스템 Ax=b가 과도결정이거나 과소결정라고 하자. 그러면 이 시스템은 해를 갖지 않거나 무수히 많이 갖는다. 이때
∥Ax−b∥2
의 값을 최소화하는 문제를 생각해보자. 이를 최소제곱문제lSP, Least Square Problem라고 한다. 이 문제의 해 x∗를 최소제곱해least square solution 라고 한다.
x∗=argmin∥Ax−b∥2
Ax−b를 최소제곱 오차벡터least square error vector, ∥Ax−b∥를 최소제곱 오차least square error라 한다.
설명
방정식의 해가 존재하지 않는 것은 안타깝지만 그렇다고 풀이 자체를 포기할 수는 없다. 사실 이 세상에 잘 풀리지 않는, 학계의 최전선에서 수학자들의 해법을 기다리고 있는 방정식들은 대개 그런 문제들이다. 이런 문제를 비슷하게나마 푸는 방법을 연구하는 것은 단연 가치 있고 유용한 것으로써, 최소제곱법은 그 대표적인 방법 중 하나다. 분야를 가리지 않고 여러 실용학문에서 활발하게 사용되고 있으며, 특히 통계학에선 심장과도 같은 회귀분석을 지탱하는 이론이다.
∥b−Ax∥2 의 크기가 최소가 된다는 것은 그만큼 Ax 와 b 사이의 거리, 즉 오차가 작아진다는 것으로 볼 수 있다. 정사영 P:Cm→C(A) 에 대해
b=Pb+(I−P)b
Pb∈C(A)
이므로 어떤 벡터 x∗ 에 대해서 Ax∗=Pb 다. 이에 대해
∥Ax−b∥2=∥Ax−Pb+Pb−b∥2
으로 나타내보면 (Ax−Pb)∈C(A) 와 (I−P)b∈N(A) 은 서로 직교함을 알 수 있다. 피타고라스의 정리에 의해
∥b−Ax∥22=∥Ax−Pb∥22+∥(I−P)b∥22
이고, ∥b−Ax∥2 가 가장 작아지는 경우는 x=x∗ 가 된다.
한편 여사영의 성질에서 A∈C(A) 이고 (I−P)b∈C(A)⊥ 이므로
A∗(I−P)b=A∗(b−Ax∗)=0
이다. 정리하면 A∗Ax∗=A∗b 이므로, 최소제곱법이란 결국 표준방정식 A∗Ax∗=A∗b 을 만족하는 해 x∗ 를 구하는 것과 같다.
수식이 아니라 그림을 통해서 직관적으로 이해하기 위해선 다음의 예를 보면 도움이 될 것이다.

위와 같이 평면상에 놓인 점들을 모두 지나는 직선을 긋는 문제가 있다고 해보자. 당연하지만 이 문제의 답이 되는 직선(해)은 존재하지 않으며, 그나마 비슷하게 지나가는 직선(근사해)을 찾아봐야할 것이다.

위와 같이 녹색 선과 빨간 선으로 비교해보면 한 눈에도 왼쪽이 오른쪽보다는 더 정확함을 알 수 있을 것이다. 파란색으로 그어진 선들의 길이는 각 점들을 직선으로 사영시켰을 때 떨어진 거리를 나타낸다. 이 문제에서 최소제곱해는 이 거리들의 제곱의 합이 최소가 되는 어떤 직선이다.