seegongsik
공업수학

투영은 가장 가까운 그림자다

투영은 직선이나 평면 위 가장 가까운 점, 그 차이는 늘 수직이고, 데이터에 쌓으면 최소제곱이 된다

해가 머리 위에 있을 때 공중의 한 점이 바닥에 떨어뜨리는 그림자를 떠올려 보자. 그 그림자는 바닥 위에서 원래 점과 가장 가까운 자리이고, 점에서 그림자로 내려가는 선은 언제나 바닥과 직각이에요. 이것이 투영이다. 점 하나가 아니라 데이터 점 수십 개를 같은 방식으로 한꺼번에 그림자 내리면 그것이 바로 최소제곱이고, 모든 점에 가장 가깝게 지나가는 직선이 곧 회귀선이다. AI가 데이터에 모델을 맞추는 일도 결국 이 그림자 내리기 한 동작이에요.

파란 점은 고정되어 있다. 슬라이더로 원점을 지나는 직선의 각도를 돌리면 변화가 드러나요. 직선 위의 금색 점은 파란 점의 그림자, 곧 직선 위에서 파란 점에 가장 가까운 자리다. 파란 점에서 그림자로 내려가는 빨간 점선은 언제나 직선과 직각을 이루는데, 이것이 잔차다. 직선이 파란 점 쪽을 정확히 가리킬 때 잔차가 0으로 줄고 그림자가 점과 겹치며, 직선이 점과 어긋날수록 잔차가 길어진다. 원점에서 그림자까지의 금색 선분이 투영 길이이고, 아래에 투영 길이 p·u와 잔차 길이가 나란히 적혀 둘이 어떻게 맞물리는지 드러나요.

이번에는 직선을 30도로 고정하고 파란 점을 직접 끈다. 점을 어디로 옮기든 직선 위의 금색 그림자가 따라오고, 점에서 그림자로 내려가는 빨간 점선은 늘 직선과 직각이에요. 이 직각이 핵심이다. 잔차가 직선과 수직일 때 그 잔차 길이가 곧 점에서 직선까지의 가장 짧은 거리이고, 직선 위의 다른 어떤 점으로 가도 그보다 멀다. 점을 직선에서 멀리 끌면 아래의 거리 값이 커지고, 직선에 바짝 붙이면 0에 가까워진다. 가장 가까움과 직각은 같은 사실의 두 얼굴이에요.

왜 그림자 길이가 p·u일까. 직선을 x축(u=e1)으로 두고, 길이가 3으로 고정된 파란 벡터의 각도 θ만 슬라이더로 바꾼다. 이 벡터의 x축 그림자는 길이가 |p|cosθ이고, 세로로 내려가는 빨간 점선이 그 금색 그림자를 만들어요. θ가 0이면 벡터가 직선과 나란해서 그림자가 온전히 3, θ가 90도로 가면 벡터가 직선과 직각이라 그림자가 0으로 사라진다. 바로 이 |p|cosθ가 내적 p·u의 정의다. 내적은 결국 한 벡터가 다른 벡터 방향으로 드리우는 그림자의 길이를 재는 자예요.

이제 점 하나가 아니라 점 일곱 개다. 슬라이더로 직선의 기울기와 절편을 움직이면, 각 점에서 금색 직선으로 내려가는 빨간 세로 점선이 그 점의 잔차이고, 그 제곱을 모두 더한 값이 SSE(제곱오차 합)예요. 직선이 점들 한가운데를 잘 지나갈수록 잔차들이 짧아지고 아래의 값이 줄어든다. 손으로 최선을 찾아본 뒤 「최적합」 버튼을 누르면 기울기와 절편이 최소제곱 공식이 주는 정확한 값으로 건너뛰고, 제곱오차 합이 가능한 가장 작은 값으로 떨어진다. 이것이 회귀선이다. 손으로 찾은 직선이 그 값에 얼마나 가까웠는지 견주는 것도 좋은 연습이에요.

마지막으로 최소제곱을 기하로 보면 한 줄로 닫힌다. 파란 목표 벡터가 있고, 모델이 만들 수 있는 것은 금색 방향 벡터가 그리는 직선 위의 점들뿐이다. 가장 가까운 근사는 목표를 그 직선에 투영한 점이고, 남는 잔차 r=b−p는 모델 방향과 직각이어야 해요. 토글을 켜면 그 수직 내림이 빨간 점선으로 나타나고, a·r이 0에 가깝다는 것이 아래에 보인다. 이 직각 조건이 바로 정규방정식 aᵀ(b−Ax)=0이다. 첫 블록에서 본 잔차의 직교가 여기서 그대로 방정식이 된 것이에요. 최소제곱은 언제나 잔차를 모델 공간에 수직으로 세우는 일이다.

빠른 적용투영은 한 점을 직선이나 평면 위에서 가장 가까운 자리로 내린 그림자다. 그 자리는 잔차가 모델 공간과 직각일 때 정해지고, 그림자 길이는 내적 p·u로 잰다. 직각과 가장 가까움이 같은 사실이라는 것이 모든 것의 뿌리예요. 데이터 점 여러 개에 같은 투영을 적용하면 최소제곱이고, 제곱오차 합을 가장 작게 만드는 직선이 곧 회귀선이다. 잔차가 모델에 직교한다는 조건을 식으로 쓰면 정규방정식 aᵀ(b−Ax)=0이 된다. 직선 맞추기와 곡선 적합, 신경망의 출력 보정까지, AI가 데이터에 모델을 맞추는 일은 결국 데이터 벡터를 모델 공간에 투영하는 한 동작이에요.
← 공업수학
이 페이지가 도움 됐다면 후원하기