수학 개념 지도
선형대수(Linear algebra)

역문제와 잘 놓인 문제(Inverse problems and well-posedness)

결과에서 원인을 되찾는 문제. 해가 있고 하나뿐이어도 자료의 작은 오차가 답에서 크게 불어나면 쓸모가 없다. 불어나는 정도는 조건수⁠(condition number)⁠가 재고, 처방은 측정 밖의 앎을 더하는 정규화다.

∥δx⃗∥∥x⃗∥≤κ(K) ∥δy⃗∥∥y⃗∥,κ(K)=σmax⁡σmin⁡\frac{\lVert\delta\vec x\rVert}{\lVert\vec x\rVert} \le \kappa(K)\,\frac{\lVert\delta\vec y\rVert}{\lVert\vec y\rVert}, \qquad \kappa(K) = \frac{\sigma_{\max}}{\sigma_{\min}}

연립방정식 x+y=2x + y = 2, x+1.001 y=2.001x + 1.001\,y = 2.001의 해는 (1,1)(1, 1)입니다. 둘째 식의 오른쪽을 0.001만 바꿔 2.0022.002로 두면 해는 (0,2)(0, 2)가 됩니다. 자료 하나가 0.05%쯤 바뀌었는데 답은 완전히 다른 곳으로 갔습니다. 두 식이 나타내는 직선이 거의 나란해서, 한 직선을 조금만 밀어도 교점이 직선을 따라 멀리 미끄러지기 때문입니다. 아래 그림에서 두 직선 사이의 각 °와 둘째 직선의 자료 오차 를 바꿔 보세요. 자료 오차를 그대로 두고 각만 좁히면, 노란 점이 흰검은 고리에서 점점 멀리 달아납니다.

파란 직선과 분홍 직선이 두 식이고, 분홍 직선은 자료 오차만큼 밀려 있습니다. 흰검은 고리가 오차 없는 자료의 답입니다. 옅은 띠는 자료가 ±0.05만큼 틀릴 수 있을 때 각 직선이 놓일 수 있는 범위이고, 두 띠가 겹친 주황 평행사변형이 답이 놓일 수 있는 범위입니다. 노란 점이 지금 자료의 답입니다.

지금 답은 이고 오차 없는 답에서 만큼 떨어져 있습니다. 각이 좁을수록 평행사변형이 길어집니다. 이 연립방정식의 행렬⁠(matrix)⁠에서 가장 큰 특잇값⁠(singular value)⁠과 가장 작은 특잇값의 비인 조건수는 입니다. 조건수 κ는 자료의 상대 오차⁠(relative error)⁠가 답의 상대 오차로 최대 몇 배까지 커질 수 있는지를 알려 줍니다(위의 식, 길이는 보통의 유클리드 길이로 잴 때). 처음 예의 행렬 [1111.001]\begin{bmatrix}1 & 1\\ 1 & 1.001\end{bmatrix}은 조건수가 약 4,002입니다. 실제로 그 예에서 자료 벡터⁠(vector)⁠의 상대 오차는 약 0.035%, 답의 상대 오차는 100%이니 약 2,800배로 불어났고, 이는 4,002배라는 한계 안에 있습니다.

이런 일은 결과에서 원인을 되찾는 문제, 곧 역문제⁠(inverse problem)⁠에서 흔합니다. 원인 x⃗\vec x에서 결과 y⃗=Kx⃗\vec y = K\vec x를 계산하는 정문제⁠(forward problem)⁠는 대개 쉽습니다. 흐린 사진에서 선명한 장면을, X선의 합에서 몸의 단면을, 지진파의 도착 시각에서 땅속을 되찾는 역문제는 어렵습니다. 프랑스의 자크 아다마르는 1902년 논문에서 문제가 잘 놓였다는 생각을 내놓았고, 1923년 강의록에서 이를 다듬었습니다. 오늘날 세 조건으로 정리하면 이렇습니다. 해가 있을 것(존재), 하나뿐일 것(유일성), 자료를 조금 바꾸면 해도 조금만 바뀔 것(안정성⁠, stability⁠)입니다. 역문제는 셋 모두 어길 수 있습니다. 측정이 미지수보다 많고 잡음이 섞이면 대개 모든 식을 만족하는 해가 없어서, 최소제곱⁠(least squares)⁠으로 어긋남이 가장 작은 답을 고릅니다. 측정이 미지수보다 적으면 해가 있더라도 무한히 많아서, 그중 하나를 고를 기준이 필요합니다. 이 둘은 기준을 정하면 풀립니다. 가장 까다로운 것은 셋째입니다.

셋째 조건이 깨지는 까닭은 특잇값 분해⁠(singular value decomposition)⁠ K=UΣVTK = U\Sigma V^{\mathsf T}로 보면 한 줄입니다. 역행렬⁠(inverse matrix)⁠은 특잇값 σi\sigma_i의 방향마다 1/σi1/\sigma_i를 곱하므로, 측정 잡음 e⃗\vec e는 답에 ∑i(u⃗i⋅e⃗/σi) v⃗i\sum_i (\vec u_i\cdot\vec e/\sigma_i)\,\vec v_i로 들어갑니다. 특잇값이 작은 방향, 곧 정문제가 거의 지워 버린 방향일수록 잡음이 크게 불어납니다. 흐림이나 CT처럼 적분⁠(integral)⁠으로 정의되는 연속적인(무한 차원의) 문제에서는 특잇값이 무한히 많고, 대개 끝없이 0에 다가갑니다. 그러면 1/σi1/\sigma_i에 상한⁠(upper bound)⁠이 없으니, 결과에서 원인으로 가는 사상(역사상)은 있더라도 연속이 아닙니다. 자료를 아무리 조금 바꿔도 답이 얼마든지 크게 바뀔 수 있다는 뜻입니다. 특잇값이 줄어드는 빠르기가 어려움의 등급을 정합니다. CT의 라돈 변환⁠(Radon transform)⁠은 특잇값이 거듭제곱 꼴로 천천히 줄어 비교적 순하고, 흐림이나 거꾸로 돌린 열 방정식은 지수적으로 줄어 몹시 사납습니다.

흔히 측정을 더 모으면 해결된다고 생각하지만, 같은 기계로 같은 것을 더 재는 것은 별 도움이 되지 않습니다. 가우스 함수⁠(function)⁠ 모양의 흐림은 파수 k(단위 길이당 출렁임의 수에 비례하는 수)의 사인파⁠(sinusoid)⁠ 성분에 e−k2w2/2e^{-k^2 w^2/2}를 곱합니다(w는 흐림의 폭, 곧 가우스 함수의 표준편차⁠(standard deviation)⁠). 이 배율이 특잇값 노릇을 합니다. 잡음 수준이 ε이면 배율이 잡음보다 큰 성분, 곧 e−k2w2/2>εe^{-k^2w^2/2} \gt \varepsilon인 성분만 대략 되찾을 수 있습니다. 풀어 쓰면 k<2ln⁡(1/ε)/wk \lt \sqrt{2\ln(1/\varepsilon)}/w입니다. 매번의 잡음이 서로 독립⁠(independence)⁠이라면, 같은 측정을 1만 번 되풀이해 평균⁠(mean)⁠할 때 잡음은 100분의 1로 줄지만(ε = 10⁻³ → 10⁻⁵), 되찾는 파수의 한계는 2ln⁡105/2ln⁡103≈1.29\sqrt{2\ln 10^5}/\sqrt{2\ln 10^3} \approx 1.29배, 29% 늘 뿐입니다.

처방은 측정 밖의 앎을 더하는 것입니다. 1943년 안드레이 티호노프는 정문제가 연속이고 해가 하나뿐일 때, 해가 미리 알려진 콤팩트한 집합⁠(set)⁠ 안에 있다고 알면 역사상이 그 위에서 연속이 된다는 것을 보였습니다. '크기와 기울기⁠(slope)⁠가 정해진 한도를 넘지 않는 함수들'이 그런 집합의 예입니다. 답이 마음대로 출렁일 수 없게 묶어 두면, 작은 특잇값 방향으로 잡음이 불어날 자리가 없어지는 것입니다. 1963년 그는 이 생각을 계산할 수 있는 방법으로 만들었습니다. 측정과의 어긋남에 답의 크기에 대한 벌점을 더해 가장 작게 하는 것입니다.

x⃗λ=arg⁡min⁡x⃗ ∥Kx⃗−y⃗∥2+λ∥x⃗∥2=∑iσi2σi2+λ u⃗i⋅y⃗σi v⃗i\vec x_\lambda = \arg\min_{\vec x}\,\lVert K\vec x - \vec y\rVert^2 + \lambda\lVert\vec x\rVert^2 = \sum_i \frac{\sigma_i^2}{\sigma_i^2+\lambda}\,\frac{\vec u_i\cdot\vec y}{\sigma_i}\,\vec v_i

특잇값이 큰 방향은 거의 그대로 믿고, 작은 방향은 부드럽게 눌러 버립니다. 통계⁠(statistics)⁠의 릿지 회귀⁠(ridge regression)⁠와 같은 식이고, 잡음과 답에 각각 평균 0인 정규분포⁠(normal distribution)⁠를 가정한 베이즈 추정의 최빈값과도 같습니다(λ = 잡음의 분산⁠(variance)⁠ ÷ 사전 분포⁠(prior distribution)⁠의 분산). 벌점은 '답은 대개 작다'는 믿음을 식으로 적은 것입니다. 특잇값이 기준보다 작은 성분을 아예 버리는 잘라 낸 특잇값 분해, 반복법을 일찍 멈추는 방법도 같은 일을 합니다. 최소제곱을 0에서 출발한 경사 하강법⁠(gradient descent)⁠으로 풀면서 k걸음에서 멈추면, 성분마다 1−(1−ησi2)k1-(1-\eta\sigma_i^2)^k가 곱해집니다(η는 걸음 크기이고, 발산⁠(divergence)⁠하지 않으려면 ησmax⁡2<2\eta\sigma_{\max}^2 \lt 2여야 합니다). 이 수도 큰 특잇값에서는 1에 가깝고 작은 특잇값에서는 0에 가깝습니다. 선형 모형에서는 이 계산이 정확하고, 신경망⁠(neural network)⁠ 학습에서 조기 종료⁠(early stopping)⁠가 과적합⁠(overfitting)⁠을 줄이는 까닭도 흔히 이 그림으로 설명합니다.

이어지는 곳. 세레스의 궤도⁠(orbit)⁠, 흐린 사진, CT, 압축 센싱⁠(compressed sensing)⁠, 블랙홀 사진이 모두 이 페이지의 한 식으로 이어지는 이야기는 긴 글 「거꾸로 푸는 문제는 왜 어려운가」에 있습니다. 조건수가 작은 특잇값에서 나온다는 것은 특잇값 분해의 타원⁠(ellipse)⁠ 그림에서 눈으로 볼 수 있습니다. 조건수만큼의 불어남은 문제 자체의 성질이라 어떤 풀이법도 피할 수 없습니다. 연립방정식을 소거법⁠(elimination)⁠으로 풀 때 피벗⁠(pivot)⁠을 고르는 까닭은, 계산 과정이 반올림 오차⁠(round-off error)⁠를 그보다 더 키우지 않게 하려는 것입니다. 정규화는 흔들림(분산)을 줄이는 대신 답을 한쪽으로 끌어당기는 치우침(편향)을 들여오는데, 제곱 오차로 재면 그 맞바꿈을 편향–분산 분해⁠(bias–variance decomposition)⁠가 정확히 적어 줍니다. '답은 작다' 대신 '답은 드물다(0이 아닌 성분이 적다)'를 믿으면 라소⁠(lasso)⁠와 L1 노름⁠(norm)⁠의 세계로 넘어갑니다. 답이 충분히 드물고 측정이 적당히 뒤섞여 있으면, 측정보다 미지수가 훨씬 많아도 답을 되찾을 수 있습니다. 여러 분야에서 같은 모양으로 일하는 근사의 생각은 근사와 오차에 모여 있습니다.

이 개념이 나오는 긴 글

역문제 거꾸로 푸는 문제는 왜 어려운가 원인에서 결과를 계산하기는 쉽다. 흐린 사진, CT, 블랙홀 사진은 왜 결과에서 원인을 되찾기 어려웠을까? 작은 특잇값이 잡음을 키우는 벽과, 정규화·릿지 회귀·베이즈 사전확률이 사실은 같은 처방이라는 이야기.

이 개념 위에 세워진 것

이 개념을 언급하는 페이지

이 페이지가 가리키는 개념