대각화와 행렬 거듭제곱(Diagonalization and matrix powers)
고유벡터(eigenvector)로 좌표축을 모두 채울 수 있으면, 그 축으로 본 행렬(matrix)은 각 축을 고유값배 늘이는 대각행렬(diagonal matrix)이 된다. 그래서 Aⁿ은 고유값(eigenvalue)의 n제곱으로 계산된다.
한 벡터(vector)에 같은 행렬을 거듭 곱하면 어떻게 될까요? 노란 출발점에서
이유는 고유벡터 좌표계에 있습니다. 출발 벡터를 두 고유벡터의 조합
대각화는 거듭제곱에만 쓰이지 않습니다. 실수(real number) 대칭 행렬(symmetric matrix)은 서로 수직인 고유벡터 축으로 돌리면 언제나 대각행렬이 되므로, 이차식의 섞인 항(xy 항)을 없애는 표준 방법이기도 합니다. 원뿔곡선(conic section)의 방정식을 이 축으로 다시 쓰면 타원(ellipse), 포물선(parabola), 쌍곡선(hyperbola)이 기울어지지 않은 제 모습을 드러냅니다. 대칭이 아니거나 정사각형이 아닌 행렬도 입력 쪽과 출력 쪽의 수직 축을 따로 고르면 대각행렬로 쓸 수 있는데, 이것이 특잇값 분해(singular value decomposition)이고 입력 쪽 축은 대칭 행렬
이 생각이 여러 분야를 한 번에 설명합니다.
- 피보나치 수열(Fibonacci sequence)의 이웃한 두 항은
입니다. 이 행렬의 고유값은 황금비(golden ratio) φ ≈ 1.618과 −1/φ ≈ −0.618이고, 앞의 것이 압도하니 이웃한 두 항의 비 은 φ에 다가갑니다. - 마르코프 연쇄(Markov chain)를 오래 돌렸을 때 확률(probability) 분포가 한 분포로 다가간다면, 그 분포는 한 단계를 더 가도 바뀌지 않으니, 전이 행렬(transition matrix)의 고유값 1에 속한 고유벡터입니다.
- 선형 미분방정식(linear differential equation)
에서는 곱하기를 거듭하는 대신 시간이 흐릅니다. 고유벡터 방향의 성분은 시간 t 뒤에 배가 되고, 해는 이런 성분들의 합입니다. 행렬 전체로 적으면 입니다. - 아무 벡터에서 출발해 행렬을 거듭 곱하기만 해서 가장 큰 고유값의 고유벡터를 찾는 이 계산을 거듭제곱법(power iteration)이라 합니다. 웹 페이지의 중요도를 매기는 PageRank가 이 방법으로 계산됩니다. 링크를 따라 무작위로 돌아다니는 사람이 오래 뒤에 각 페이지에 있을 확률이 곧 그 페이지의 점수이고, 이것이 링크 행렬의 고유값 1에 속한 고유벡터이기 때문입니다.
- 언어 모델(language model)에도 쓰이는 상태 공간 모형(state space model)은 상태를
로 갱신합니다. 를 대각화하면 상태가 서로 섞이지 않는 성분으로 나뉘어 성분마다 고유값의 거듭제곱으로 과거를 잊으므로, S4D와 Mamba는 처음부터 A를 대각행렬로 둡니다.
이 개념이 나오는 긴 글
이 개념 위에 세워진 것
이 개념을 언급하는 페이지
- 고유벡터와 고유값
… 그 방향 성분이 조금이라도 있다면). 그 방향 성분이 매번 가장 많이 늘어나 나머지를 압도하기 때문입니다(대각화). 피보나치 수열에서 이웃한 두 항 (F_{n+1}, F_n) 은 행렬 \begin{bmatrix} …
- 선형 미분방정식
… 해를 구하는 실용적인 방법은 (고유벡터가 두 방향으로 있을 때) 고유벡터들을 새 좌표축으로 삼는 것(대각화)입니다. 그러면 두 좌표가 서로 얽히지 않고 각자 e^{\lambda t} 배로 변하니, 따로 풀어 다시 …
- 마르코프 연쇄
… 모든 전이 확률이 0보다 크면 그렇습니다), 전이 행렬의 다른 고유값들은 크기가 1보다 작습니다. 그래서대각화해 P^k 를 보면 다른 고유벡터 방향의 성분들이 |\lambda|^k 로 사라지고 고유값 1인 성분만 …
- 주성분 분석
… 새 좌표축으로 삼도록 좌표를 회전하면 공분산 행렬의 대각선 밖 칸이 모두 0인 대각 행렬이 됩니다(대각화). 대각선 밖 칸이 공분산이었으니, 새 좌표에서는 두 값 사이의 상관이 사라집니다. 실제 계산에서는 …
- 피보나치 수열
… 있습니다: . 그러니 F_n 을 구하는 일은 같은 행렬을 거듭 곱하는 일(행렬의 곱)이고, 거듭제곱은대각화로 쉬워집니다. 행렬을 곱해도 같은 직선 위에 머물고 \lambda 배가 될 뿐인 벡터가 있을 때, 그 …
- 열방정식
… 줄어듭니다. 행렬을 고유벡터 좌표로 바꾸면 행렬이 각 좌표를 따로 몇 배씩 하는 일로 단순해지는데(대각화), 여기서는 사인 함수들을 좌표축으로 삼아 같은 일을 한 셈입니다. 사인은 무한히 많으니 무한 차원의 …
- 페이지랭크
… d배 이하가 됩니다. 고유값으로 말하면 G의 고유값 가운데 1이 아닌 것은 크기가 모두 d 이하입니다(대각화). 식을 풀어 쓰면 r = \tfrac{1-d}{n}\sum_{k \ge 0} d^k M^k …
- 마할라노비스 거리
… 의 고유벡터 축으로 돌리고, 축마다 고유값의 제곱근으로 나눈 뒤, 다시 돌려놓는 행렬입니다(대각화). 그 축은 주성분 분석의 축과 같습니다. 특별한 경우를 보면 익숙합니다. \Sigma 가 …
- 점화식
… 을 거듭 곱하는 것이고(c = 0일 때), 특성방정식의 근은 그 행렬의 고유값입니다(대각화). 이어지는 곳. 점화식을 푸는 또 하나의 방법은 수열 전체를 급수의 계수로 담는 생성함수입니다. …
- 원뿔곡선
… xy 항은 곡선이 기울어져 있다는 뜻이고, 좌표축을 돌려 이 항을 없애는 일은 대칭 행렬을대각화해 고유벡터 방향을 찾는 일과 같습니다. 사영기하에서는 세 곡선이 사영 변환으로 서로 옮겨 가는 한 …
- 특잇값 분해
… \ge \cdots \ge 0 이 놓이고 나머지 칸은 0인 행렬입니다. 정사각형이 아니어도,대각화할 수 없는 행렬이어도 됩니다. 까닭은 짧습니다. A^{\mathsf T}A 는 대칭 행렬이라서 서로 …
- 합성곱 신경망
… 행렬은 같은 고유벡터, 곧 1의 거듭제곱근으로 만든 복소 사인파들을 공유합니다. 그래서 그 기저로대각화하면 합성곱은 진동수마다 수 하나를 곱하는 일이 됩니다. 이것이 합성곱 정리이고, 푸리에 급수가 신호 …
- 순환 신경망과 LSTM
… v_1 + c_2 v_2 로 쓰면, k걸음 뒤에는 각 성분에 제 배율의 k제곱이 곱해집니다(고유벡터,대각화). (dW)^k g = c_1 (d\lambda_1)^k\, v_1 + c_2 …
- 상태 공간 모형과 선형 순환
… 계산한 출력입니다(보기 좋게 세로 배율을 맞춤). 기억의 길이는 고유값이 정한다. \bar A 를대각화할 수 있다면 상태는 서로 섞이지 않는 성분들로 나뉘고, 성분마다 고유값 λ의 거듭제곱 \lambda^j …
- 라플라시안과 그래프 라플라시안
… 파동에서는 \cos\sqrt\lambda\, t 로 떠는데, 모드로 바꿔 보면 연산이 곱셈이 된다는 점에서대각화의 가장 유명한 보기입니다. 무작위 행보가 어느 경계에 먼저 닿을 확률은 라플라시안이 0인 함수여서 …