답이 없는 방정식

우리는 연립 방정식을 배울 때, 매우 안정적인 세상을 전제로 합니다. ‘미지수의 개수’와 ‘방정식의 개수’가 정확히 일치하는 경우이지요. 예를 들어, 농장에 닭()과 강아지()가 총 마리 있고, 다리 수의 합이 개인 문제를 생각해보겠습니다.

미지수가 개, 방정식이 개이므로 닭 마리, 강아지 마리()라는 유일하고 완벽한 해를 갖습니다. 하지만, 우리가 현실 세계에서 데이터를 수집한다면 어떨까요?

캐번디시(Cavendish)의 지구 밀도 측정 실험

1798년, 영국의 과학자 헨리 캐번디시는 지구의 평균 밀도를 결정하기 위한 정교한 실험을 수행했습니다. 당시 과학자들은 지구의 반지름()이나 중력 가속도()는 알고 있었기 때문에, 지구의 밀도()를 알 수 있다면 중력 상수()까지 계산할 수 있었습니다.

이 실험은 오늘날 뉴턴의 중력 상수 를 구한 최초의 정확한 실험으로 알려져 있습니다. 캐번디시는 극도로 미세한 중력의 힘을 측정하는 ‘비틀림 저울’이라는 장치를 사용해 지구의 평균 밀도를 알아내고자 했습니다.

그는 실험 장치의 신뢰도를 높이고 오차를 줄이기 위해, 조건을 바꿔가며 총 29번의 독립적인 측정을 수행하고 그 결과(물의 밀도에 대한 배수로서)를 모두 기록했습니다.1

여기서 우리는 근본적인 질문에 부딪힙니다. 이 개의 값 중 어떤 것이 ‘진짜’ 지구의 밀도일까요?

지구의 밀도는 하나의 값 즉, 일변수이므로, 측정값을 동시에 만족시키는 방정식은 존재하지 않습니다. 각 측정값은 참값에 가까이 다가가려는 노력의 산물이지만, 피할 수 없는 미세한 ‘측정 오차’를 포함하고 있지요. 어떤 오차는 값을 실제보다 크게 만들고, 어떤 오차는 작게 만들었을 것입니다.

그렇다면 모든 측정값으로부터 하나의 결론을 내릴 수 있는 가장 합리적인 방법은 무엇일까요? 바로 ‘평균’ 입니다.

평균은 개의 흩어진 측정값들이 공통적으로 가리키고 있는 ‘중심 경향성(central tendency)’ 을 대표하는 값입니다. 개의 모순된 방정식 앞에서 ‘가장 그럴듯한 최선의 해’를 찾기 위한 가장 직관적이고 강력한 논리적 귀결이지요. 결과적으로 캐번디시는 지구의 밀도를 로 구했습니다.

캐빈디시는 개의 값 중 세 번째 값인 을 마치 인 것처럼 잘못 보고 계산했다. 그 결과 캐번디시는 이라는 평균값을 제시했다. 이 오류는 1843년 베일리(Baily)에 의해 지적되었으며, 오류를 수정한 개 값의 실제 평균은 이다. 현대의 밀도 측정치는 이다.

하지만, 만약 문제가 이보다 훨씬 더 복잡하다면 어떨까요? 미지수가 하나가 아니라 여러 개이고, 그 미지수들이 복잡한 방정식으로 얽혀있다면? 우리는 더 이상 ‘평균’이라는 단순한 도구에 기댈 수 없습니다.

잃어버린 행성

캐번디시의 문제가 ‘평균’이라는 직관적인 해법으로 해결될 수 있었던반면, 불과 3년 뒤인 1801년 천문학계는 ‘평균’으로는 도저히 해결할 수 없는 난제에 부딪힙니다.

1801년 1월 1일, 이탈리아 시칠리아 팔레르모 천문대의 주세페 피아치(Giuseppe Piazzi) 신부는 우연히 세레스를 발견합니다. 피아치는 2월 11일, 병으로 관측을 중단하기 전까지 총 24번에 걸쳐 이 천체의 위치를 정밀하게 기록했습니다.

하지만 피아치의 완전한 관측 데이터가 학술지(Monatliche Correspondenz)를 통해 공식적으로 발표된 것은 1801년 9월이었고, 이때 세레스는 이미 궤도를 돌아 태양의 눈부신 빛 속으로 사라진 뒤였습니다.

당시 천문학자들은 이렇게 짧은 기간의, 짧은 궤적만을 관측한 데이터로부터 전체 타원 궤도를 결정하는 일반적인 방법을 가지고 있지 못했습니다. 천문학자들은 여 일간의 개 관측 데이터만을 손에 쥔 채, 이 천체가 언제 밤하늘에 다시 나타날지 예측해야 했습니다. 이것은 캐번디시의 문제(미지수 개, 방정식 개)와 본질적으로 같지만, 비교할 수 없이 더 복잡한 ‘과결정 연립 방정식(overdetermined system)’ 이었습니다.2

  • 미지수 () : 세레스의 궤도를 결정하는 개의 변수3 (궤도 긴반지름, semi-major axis) (이심률, eccentricity) (궤도 경사각, inclination) (승교점 경도, longitude of the ascending node) (근일점 편각, argument of perihelion) (근일점 통과 시각, time of perihelion passage)
  • 방정식 (): 피아치가 기록한 개의 모순된 위치 값

유럽 최고의 천문학자들이 이 개의 방정식을 풀기 위해 매달렸지만, 각 관측값에 포함된 미세한 ‘오차’ 때문에 궤도를 재현해내는 데 실패했습니다. 시간은 흘러갔고, 세레스는 영원히 ‘잃어버린 행성’이 될 위기에 처했습니다.4

최적의 방정식

방정식이 미지수보다 많다면, 모든 방정식을 완벽하게 만족시키는 단 하나의 궤도(해)는 일반적으로 존재하지 않습니다. 이런 상황에서 어떤 접근 방식을 취해야 할까요?

가장 쉽게 생각할 수 있는 것은 일부 방정식을 버리는 것입니다. 미지수가 개이므로, 개의 관측 데이터 중 임의로 개만 선택하면 이론적으로는 그 개의 점을 정확히 통과하는 궤도를 계산할 수 있습니다. 하지만 어떤 데이터를 남기고 어떤 데이터를 버려야 할까요? 어떤 관측값이 다른 값보다 더 정확하다고 판단할 객관적인 기준이 있을까요? 특정 데이터만 선택하는 것은 나머지 개의 관측값에 담긴 정보를 무시하는 것이며, 선택된 데이터에 포함된 오차에 의해 결과가 크게 왜곡될 위험이 있습니다. 이는 마치 여러 사람의 증언이 조금씩 다를 때, 일부 증언만 듣고 사건을 판단하려는 것과 같습니다.

다른 방법은 평균의 아이디어처럼 모든 데이터와의 ‘오차’를 종합적으로 고려하는 것입니다. 캐번디시의 문제에서 ‘평균’이 의미 있었던 이유는 무엇이었을까요? 평균은 개의 모든 측정값과의 ‘오차’를 전체적으로 가장 가깝게 만드는, 즉 데이터의 ‘중심 경향성(central tendency)’ 을 가장 잘 나타내는 값이기 때문입니다.

세레스 문제처럼 미지수가 여러 개이고 복잡하게 얽혀있을 때는 단순 평균을 적용할 수 없지만, 아이디어는 여전히 유효합니다.

측정 오차는 피할 수 없으며, 모든 데이터를 완벽히 만족하는 해는 없다는 현실을 인정하는 것에서 출발합니다. 대신, 모든 데이터와의 ‘불일치(discrepancy)‘를 종합적으로 최소화하는 ‘최선의 근사해(best approximate solution)‘를 찾는 것이 과학적 진실에 더 가까이 다가가는 길이라고 판단한 것입니다.

‘오차’를 다루는 가장 공정한 방법

24개의 관측 기록은 24개의 서로 다른 궤도를 나타냅니다. 어떤 궤도를 가정하든, 그 궤도는 24개의 관측 지점과 완벽히 일치할 수 없습니다. 반드시 ‘오차(error)’ 혹은 ‘잔차(residual)’ 가 발생하지요. 그렇다면 이 오차를 어떻게 최소화할 수 있을까요?

가장 순진한 방법은 단순히 모든 오차를 더하는 것입니다. 하지만 이 방법은 치명적인 결함이 있습니다. 중학교에서 배웠듯이 편차의 총합은 반드시 이기 때문입니다. 관측값이 예측값의 양의 오차와 음의 오차가 서로를 완벽하게 상쇄하여, 마치 오차가 없는 것 처럼 보이죠. 이는 오차의 총량을 파악하는 데 완전히 실패하는 방법입니다.

그렇다면 오차의 부호를 없애기 위해 ‘오차의 절댓값의 합’을 최소화하는 것은 어떨까요?

이것은 ‘최소절대편차(LAD, Least Absolute Deviations)’ 또는 -norm 추정이라고 불리는, 통계적으로 매우 논리적이고 타당한 접근 방식입니다. 실제로 이 방법은 일부 ‘이상치’에 덜 민감하다는 강력한 장점도 있습니다. 하지만 1801년의 가우스에게는 치명적인 약점이 있었습니다. 절댓값 함수는 미분이 불가능한 점을 가질 가능성이 높지요.

여러 개의 미지수가 얽힌 복잡한 문제에서 ‘최솟값’을 찾는 가장 강력한 무기는 미적분(calculus)인데 이러한 ‘뾰족한 점’은 미적분을 사용해 해를 구하는 것을 극도로 어렵거나 불가능하게 만들었습니다.

여기서 가우스는 당시의 수학적 도구로 ‘계산 가능한’ 대안을 제시합니다. 바로 ‘오차의 제곱의 합’을 최소화하는 것입니다.

사실 이 원리는 1805년 프랑스의 수학자 르장드르(Adrien-Marie Legendre)에 의해 “최소제곱법(Méthode des moindres carrés)“이라는 이름으로 먼저 출판되었습니다.5 하지만 가우스는 자신이 1795년부터 이 방법을 사용해왔다고 주장했으며, 결정적으로 1809년 그의 저서 《천체 운동 이론(Theoria Motus)》에서 확률론적 정당성을 부여함으로써 ‘최소제곱법’을 과학의 표준으로 만들었습니다.6

가우스는 측정 오차가 중심()을 기준으로 대칭적이며, 작은 오차가 큰 오차보다 더 빈번하게 발생한다고 가정했습니다. 오늘날 우리에게 친숙한 정규분포(Normal Distribution or Gaussian Distribution)이지요. 그는 정규분포를 따르는 오차들 속에서 가장 가능성이 높은 참값을 추정하는 방법이, 수학적으로 ‘오차의 제곱의 합’을 최소화하는 것과 정확히 일치함을 증명해냈습니다. 앞서 캐번디시가 직관적으로 사용했던 ‘평균’은, 사실 정규분포를 가정할 때 가장 확률 높은 최선의 추정치였으며, ‘최소제곱법’은 이 ‘평균’의 아이디어를 1차원에서 다차원으로 일반화한 것이었습니다.

가우스가 《천체 운동 이론》에서 증명한 확률론적 정당성은 학술적으로는 위대했지만, 당장의 천문학자들에게는 그저 또 하나의 흥미로운 이론일 뿐이었습니다. 유럽의 그 누구도 이 ‘최소제곱법’이라는 난해한 계산법이 정말로 잃어버린 행성을 찾아낼 것이라 기대하지 않았습니다. 이론은 이론일 뿐, 24개의 불완전한 데이터를 가지고 6개의 궤도 요소를 정확히 뽑아내는 것은 불가능해 보였습니다.

하지만 1801년 24세의 가우스는 이 ‘오차의 제곱의 합’을 최소화하는 6개의 변수를 찾는, 당시로서는 상상조차 하기 힘든 끔찍한 계산을 마침내 끝마쳤습니다. 그는 자신의 계산 결과를 바탕으로 세레스의 위치를 예측한 내용을 천문학자 프란츠 폰 차흐(Franz von Zach)에게 보냈습니다.

가우스의 예측을 바탕으로 하늘을 관측하던 하인리히 올베르스(Heinrich Olbers)는 마침내 태양 속으로 사라졌던 세레스를 다시 발견해냈습니다. 가우스의 예측은 불과 도도 채 차이 나지 않는 경이로운 정확도를 보였지요.7

재발견은 1801년 12월 31일에서 1802년 1월 1일로 넘어가는 새벽에 이루어졌다.

이 소식은 유럽 전역에 퍼졌습니다. 당대 최고의 천문학자들이 모두 실패한 문제를, 괴팅겐의 무명 청년이 오직 ‘펜과 종이’만으로 해결해낸 것입니다. 이 사건은 가우스를 하룻밤 사이에 뉴턴의 반열에 오르는 ‘수학의 왕자’로 만들었습니다.

최소 제곱 근사(Least Squares Approximation)

가우스는 어떻게 개의 방정식을 동시에 고려하여 개의 미지수에 대한 ‘최선의 해’를 구하는, 일반화된 평균의 계산법을 찾았을까요?

오늘날 우리는 이 복잡한 계산 과정을 ‘행렬(Matrix)‘을 사용하여 체계적으로 표현할 수 있습니다. 가장 간단한 직선 근사 문제를 예로 들어 보겠습니다.

어떤 실험에서 시간()에 따라 특정 값()을 측정하여, 다음과 같은 개의 데이터를 얻었다고 가정해보겠습니다.

이 점들은 완벽한 직선은 아니지만, 본질적으로 라는 선형 관계를 따를 것이라 추측할 수 있습니다. 만약 모든 점이 완벽한 직선 위에 있다면, 개의 모든 데이터는 다음 방정식을 동시에 만족해야 합니다.

\begin{align*} c t_1 + d &= y_1 \\ c t_2 + d &= y_2 \\ &\vdots \\ c t_m + d &= y_m \end{align*}

하지만 현실의 측정 오차로 인해, 모든 방정식을 만족하는 는 존재하지 않습니다. 따라서 차선책은 최적의 상수 즉, ‘오차’를 최소화하는 값을 찾아야합니다. 이 복잡한 연립 방정식은 ‘행렬’을 사용해 하나의 식으로 압축할 수 있습니다. 먼저 우리가 알고 있는 조건()들의 행렬을 라 하고, 우리가 찾아야 할 미지수(, )벡터를 라 하며, 측정한 결과()벡터를 라고 정의하겠습니다.

이렇게하면, 개의 방정식은

라는 단 하나의 식으로 표현됩니다. 앞서 말했듯, 이 방정식은 답이 없으므로, 의 열공간 밖에 있다고 볼 수 있습니다. 의 열공간(column space)은 의 열벡터들(여기서는 두 개의 벡터)이 만드는 모든 가능한 선형 결합의 집합입니다. 우리는 이 공간을 라고 부르겠습니다.

기하학적으로, 의 열들이 만드는 열공간 에서, 실제 데이터 와 가장 가까운 점은 어디일까요? 바로 에서 로의 수선의 발입니다. 바로 이 지점이 우리가 찾는 최선의 예측 입니다. 다시 말해 오차 벡터 의 열공간 와 수직(Orthogonal)이어야 함을 의미합니다.

따라서 의 열공간 에 속하는 모든 벡터 와의 내적이 이라는 뜻입니다

의 모든 벡터 의 열들의 조합이므로, 어떤 벡터 에 대해 꼴로 표현할 수 있습니다.

여기서 의 켤레전치행렬(conjugate transpose) 을 사용하면, 내적의 성질에 의해

라 할 수 있습니다. 여기서 의 켤레전치행렬(conjugate transpose) 란 이름에서 알 수 있듯이, 의 전치행렬(transpose)에 켤레복소수(conjugate)를 동시에 취한 행렬을 의미합니다.

만약 성분이 모두 실수(real number)라면 와 완전히 같습니다.

결과적으로 의 모든 열과 수직이라는 조건은 단 하나의 방정식으로 요약됩니다.

이제 를 대입하고, 정리하면

우리가 찾는 ‘최선의 해’ 는 다음 방정식을 만족해야 합니다.

다행히 의 랭크는 항상 의 랭크와 같으므로

양변에 를 곱하여 를 구할 수 있습니다.

그렇다면 우리가 예시로 든 행렬 의 랭크는 얼마일까요?

랭크는 선형 독립인 열의 개수로 구할 수 있습니다. 는 두 개의 열벡터로 이루어져 있습니다.

  • 시간 벡터
  • 상수 벡터

이 두 벡터가 선형 종속이 되어 랭크가 보다 작아지는(즉, 역행렬이 존재하지 않는) 유일한 경우는, 한 벡터가 다른 벡터의 상수배가 될 때입니다. 만약 의 상수배()가 된다면, 이어야 하므로 모든 측정 시간()이 동일해야 함을 뜻합니다.

만약 최소한 두 개 이상의 서로 다른 시간에서 값을 측정했다면, 두 열은 선형 독립이 되며, 가 보장됩니다. 따라서 이고, 행렬인 는 풀랭크(full-rank)이므로 항상 역행렬을 가집니다.

마지막으로 의 구조를 구체적으로 계산함으로써, 를 구하는 공식을 유도해보겠습니다.

대부분의 물리적 실험이 그렇듯이 우리가 다루는 데이터가 실수(real number)라고 가정하면 의 켤레전치 행렬 는 전치 행렬(transpose matrix) 와 같습니다.

먼저 를 곱하여 행렬 를 계산합니다.

다음으로 행렬 곱셈의 정의에 따라 각 성분을 계산하면 다음과 같습니다.

이 행렬은 대칭 행렬(symmetric matrix)이 되며,

  • 1행 1열은 시간의 제곱의 합
  • 1행 2열과 2행 1열은 시간의 총합
  • 2행 2열은 데이터의 총 개수

와 같지요.

이제 우변을 구성하는 를 보면 다음과 같습니다.

결과들을 처음 식 에 대입하면, 우리가 찾고자 하는 미지수 에 대한 연립 방정식을 얻습니다.

이 수식들은 공학이나 자연과학을 전공한 분들에게는 매우 낯익은 형태일 것입니다. 미적분학이나 공학수학 시간에 ‘최소제곱법’을 배울 때 만났던 바로 그 공식과 정확히 일치합니다.

미적분학의 관점에서, 함수 를 변수로 갖는 2변수 함수입니다.

이 함수의 최솟값은 3차원 그래프에서 , 방향 모두 기울기가 인 지점이므로 두 변수에 대해 각각 편미분(partial differentiation)하여, 그 값이 이 되는 지점을 찾지요.

두 접근 방식은 서로 다른 길을 통해 같은 목적지에 도달하는, 본질적으로 동일한 수학적 원리를 다루고 있습니다.

행렬의 역행렬 공식을 사용하여 를 풀면 일반적인 최소제곱 직선의 해는 다음과 같습니다.

물론 이 공식(?)은 충분히 훌륭하지만 실제로 사용하지는 않습니다. 컴퓨터에서 역행렬을 직접 계산하는 것은 비효율적이므로 가우스 소거법(Gaussian Elimination)을 이용해 직접 풀거나, 더 전문적인 프로그램들은 를 QR 분해하여 해를 구합니다. 그리고 그 결과물이 우리가 흔히 엑셀에서 추세선 추가 기능을 ‘딸깍’ 해서 얻는 결과이지요.

마무리하며

‘답이 없는 방정식’에서 시작한 우리의 질문은 결국 하나의 근본적인 태도를 가리킵니다. 완벽한 데이터를 기다리거나 일부 데이터를 임의로 버리는 대신, 불완전한 현실의 모순을 정면으로 마주하고, 그것들을 가장 공정하게 중재하는 합리적인 원칙을 세우는 것입니다.

가우스가 세운 이 원칙은 지난 200년 동안 과학과 공학을 지탱했습니다. 엑셀의 추세선부터 인공지능의 훈련 과정에 이르기까지, 이 순간에도 흩어진 데이터 속에서 ‘최선의 해’를 계산하고 있지요.

하지만 공식은 스스로 생각하지 않습니다. 그저 주어진 데이터를 바탕으로, 답을 기계적으로 계산할 뿐입니다. 만약 우리가 처음부터 편향된 데이터를 넣는다면, 그 편향까지도 충실하게 반영한 ‘최적의 편견’을 뱉어낼 뿐입니다.

세레스의 문제와는 비교할 수 없을 만큼 거대한 데이터를 다루는 지금, 데이터가 많아질수록 우리는 언제나 ‘진실’에 더 가까워질까요? 아니면 데이터 속에 숨어있는 편향(bias)까지도 정교하게 계산하여, ‘가장 그럴듯해 보이는 편견’을 ‘최선의 해’로 착각하게 되는 것은 아닐까요?

Footnotes

  1. Stephen M. Stigler. “Do Robust Estimators Work with Real Data?.” Ann. Statist. 5 (6) 1055 - 1098, November, 1977. https://doi.org/10.1214/aos/1176343997

  2. “Gauss Predicts the Orbit of Ceres.” ThatsMaths, 24 June 2021,thatsmaths.com/2021/06/24/gauss-predicts-the-orbit-of-ceres/.

  3. Daniel Beďatš, “Gauss’ calculation of Ceres’ orbit” (Bachelor Thesis, Charles University, 2021), https://dspace.cuni.cz/handle/20.500.11956/128180?locale-attribute=en.

  4. Piazzi, Giuseppe (1801). Della scoperta del nuovo pianeta Cerere Ferdinandea… Palermo.

  5. Legendre, A. M. (1805). Nouvelles méthodes pour la détermination des orbites des comètes.

  6. Gauss, C. F. (1809). Theoria motus corporum coelestium.

  7. Stigler, S. M. (1981). “Gauss and the Invention of Least Squares.” Ann. Statist. 9 (3) 465 - 474.