30.20 직교 대각화(Orthogonal Diagonalization)의 정의와 절차
1. 직교 대각화의 정의
n \times n 실수 행렬 A가 **직교 대각화 가능(orthogonally diagonalizable)**하다 함은, 직교 행렬(orthogonal matrix) Q \in M_{n \times n}(\mathbb{R})와 대각 행렬 \Lambda = \operatorname{diag}(\lambda_1, \lambda_2, \ldots, \lambda_n)이 존재하여
A = Q \Lambda Q^T
가 성립하는 것이다. 여기서 직교 행렬 Q는 Q^T Q = Q Q^T = I를 만족하므로 Q^{-1} = Q^T이다.
이를 동치적으로 표현하면, \mathbb{R}^n에 A의 고유벡터로 구성된 **정규 직교 기저(orthonormal basis)**가 존재하는 것이다. Q의 열벡터 q_1, q_2, \ldots, q_n이 그러한 정규 직교 고유벡터이며, 대각 행렬의 성분 \lambda_i는 q_i에 대응하는 고유값이다.
2. 직교 대각화와 일반 대각화의 차이
일반 대각화(diagonalization)는 가역 행렬 P를 이용하여
A = P \Lambda P^{-1}
로 분해하는 것이다. 직교 대각화는 이 가역 행렬 P가 직교 행렬 Q인 특수한 경우이다. 양자의 차이를 정리하면 다음과 같다.
| 구분 | 일반 대각화 | 직교 대각화 |
|---|---|---|
| 분해 형태 | A = P \Lambda P^{-1} | A = Q \Lambda Q^T |
| 변환 행렬의 조건 | 가역 (\det P \neq 0) | 직교 (Q^T Q = I) |
| 역행렬 계산 | P^{-1} 명시적 계산 필요 (O(n^3)) | Q^{-1} = Q^T (전치만 수행) |
| 고유벡터 조건 | 선형 독립 | 정규 직교 |
| 수치적 안정성 | \operatorname{cond}(P)에 의존 | \operatorname{cond}(Q) = 1 (최적) |
| 적용 가능 행렬 | 대각화 가능 행렬 전체 | 대칭 행렬 (또는 정규 행렬) |
직교 행렬의 조건수(condition number)가 항상 1이라는 사실은 직교 대각화의 수치적 안정성을 보장한다. 일반 대각화에서는 P의 조건수가 클 경우 P^{-1}의 계산에서 수치 오차가 증폭될 수 있으나, 직교 대각화에서는 이러한 문제가 원천적으로 발생하지 않는다.
3. 직교 대각화 가능 행렬의 완전한 특성화
정리. 실수 행렬 A \in M_{n \times n}(\mathbb{R})가 직교 대각화 가능할 필요충분조건은 A가 대칭 행렬(A = A^T)인 것이다.
증명 (충분조건). A = A^T이면 스펙트럼 정리에 의하여 직교 행렬 Q가 존재하여 A = Q \Lambda Q^T이다.
증명 (필요조건). A = Q \Lambda Q^T가 성립한다고 하자.
A^T = (Q \Lambda Q^T)^T = Q^{TT} \Lambda^T Q^T = Q \Lambda Q^T = A
\Lambda가 대각 행렬이므로 \Lambda^T = \Lambda이다. 따라서 A = A^T이다. \blacksquare
이 정리는 직교 대각화 가능한 행렬의 클래스가 정확히 대칭 행렬의 클래스와 일치함을 보여준다. 대각화 가능하지만 직교 대각화가 불가능한 행렬은 반드시 비대칭이다.
4. 직교 대각화의 체계적 절차
대칭 행렬 A = A^T \in M_{n \times n}(\mathbb{R})의 직교 대각화 A = Q \Lambda Q^T를 구하는 절차는 다음과 같다.
4.1 단계 1: 고유값 계산
특성 다항식
p_A(\lambda) = \det(A - \lambda I)
을 전개하여 n차 다항식을 얻고, 이를 풀어 고유값 \lambda_1, \lambda_2, \ldots, \lambda_n을 구한다. A가 대칭이므로 모든 고유값이 실수임이 보장된다.
4.2 단계 2: 각 고유값에 대한 고유 공간 계산
각 고유값 \lambda_k에 대하여 동차 연립방정식
(A - \lambda_k I) v = 0
을 풀어 고유 공간 E_{\lambda_k} = \ker(A - \lambda_k I)의 기저를 구한다. 대칭 행렬에서는 각 고유값의 기하학적 중복도가 대수적 중복도와 일치하므로, 기저 벡터의 수가 대수적 중복도와 같다.
4.3 단계 3: 고유 공간 내부의 정규 직교화
서로 다른 고유값에 대응하는 고유벡터는 이미 직교한다. 이는 대칭 행렬의 성질에 의하여 자동으로 보장된다. 따라서 교차 고유 공간 간의 직교화는 불필요하다.
동일 고유값의 고유 공간 내부에서는 기저 벡터가 자동으로 직교하지 않을 수 있다. 이 경우 **그람-슈미트 정규 직교화(Gram-Schmidt orthonormalization)**를 적용한다.
고유 공간의 기저가 \{w_1, w_2, \ldots, w_m\}이라 하면, 그람-슈미트 과정은 다음과 같이 수행한다:
u_1 = w_1
u_k = w_k - \sum_{j=1}^{k-1} \frac{\langle w_k, u_j \rangle}{\langle u_j, u_j \rangle} u_j, \quad k = 2, \ldots, m
정규화:
q_i = \frac{u_i}{\lVert u_i \rVert}, \quad i = 1, \ldots, m
4.4 단계 4: 직교 행렬 및 대각 행렬 구성
모든 고유 공간에서 얻어진 정규 직교 고유벡터를 열로 배치하여 직교 행렬을 구성한다:
Q = \begin{pmatrix} q_1 & q_2 & \cdots & q_n \end{pmatrix}
대응하는 고유값을 대각에 배치하여 대각 행렬을 구성한다:
\Lambda = \operatorname{diag}(\lambda_1, \lambda_2, \ldots, \lambda_n)
여기서 q_i에 대응하는 고유값이 \lambda_i이다.
4.5 단계 5: 검증
Q^T Q = I (직교성)와 Q \Lambda Q^T = A (분해의 정확성)를 확인한다.
5. 수치 예시 1: 상이한 고유값
A = \begin{pmatrix} 5 & -2 \\ -2 & 2 \end{pmatrix}
단계 1. p_A(\lambda) = (5 - \lambda)(2 - \lambda) - 4 = \lambda^2 - 7\lambda + 6 = (\lambda - 1)(\lambda - 6)이므로 \lambda_1 = 1, \lambda_2 = 6이다.
단계 2. \lambda_1 = 1: (A - I)v = 0에서 \begin{pmatrix} 4 & -2 \\ -2 & 1 \end{pmatrix} v = 0이므로 v_1 = \begin{pmatrix} 1 \\ 2 \end{pmatrix}이다.
\lambda_2 = 6: (A - 6I)v = 0에서 \begin{pmatrix} -1 & -2 \\ -2 & -4 \end{pmatrix} v = 0이므로 v_2 = \begin{pmatrix} 2 \\ -1 \end{pmatrix}이다.
직교성 확인: v_1^T v_2 = 2 - 2 = 0이다.
단계 3. 정규화한다.
q_1 = \frac{1}{\sqrt{5}} \begin{pmatrix} 1 \\ 2 \end{pmatrix}, \quad q_2 = \frac{1}{\sqrt{5}} \begin{pmatrix} 2 \\ -1 \end{pmatrix}
단계 4.
Q = \frac{1}{\sqrt{5}} \begin{pmatrix} 1 & 2 \\ 2 & -1 \end{pmatrix}, \quad \Lambda = \begin{pmatrix} 1 & 0 \\ 0 & 6 \end{pmatrix}
단계 5. 검증:
Q \Lambda Q^T = \frac{1}{5} \begin{pmatrix} 1 & 2 \\ 2 & -1 \end{pmatrix} \begin{pmatrix} 1 & 0 \\ 0 & 6 \end{pmatrix} \begin{pmatrix} 1 & 2 \\ 2 & -1 \end{pmatrix} = \frac{1}{5} \begin{pmatrix} 1 & 12 \\ 2 & -6 \end{pmatrix} \begin{pmatrix} 1 & 2 \\ 2 & -1 \end{pmatrix} = \frac{1}{5} \begin{pmatrix} 25 & -10 \\ -10 & 10 \end{pmatrix} = \begin{pmatrix} 5 & -2 \\ -2 & 2 \end{pmatrix}
6. 수치 예시 2: 중복 고유값과 그람-슈미트 과정
A = \begin{pmatrix} 2 & 1 & 1 \\ 1 & 2 & 1 \\ 1 & 1 & 2 \end{pmatrix}
단계 1. 특성 다항식을 계산한다. A의 각 행의 합이 4이므로 \lambda_1 = 4는 고유값이고, 대응하는 고유벡터는 \begin{pmatrix} 1 \\ 1 \\ 1 \end{pmatrix}이다.
\operatorname{tr}(A) = 6이고 \lambda_1 + \lambda_2 + \lambda_3 = 6이므로 \lambda_2 + \lambda_3 = 2이다. \det(A) = 4이고 \lambda_1 \lambda_2 \lambda_3 = 4이므로 \lambda_2 \lambda_3 = 1이다. \lambda_2 + \lambda_3 = 2와 \lambda_2 \lambda_3 = 1로부터 \lambda_2 = \lambda_3 = 1이다.
따라서 \lambda_1 = 4 (대수적 중복도 1), \lambda_2 = 1 (대수적 중복도 2)이다.
단계 2. \lambda_2 = 1: (A - I)v = 0에서
\begin{pmatrix} 1 & 1 & 1 \\ 1 & 1 & 1 \\ 1 & 1 & 1 \end{pmatrix} v = 0
이므로 고유 공간의 기저는 \left\{ w_1 = \begin{pmatrix} -1 \\ 1 \\ 0 \end{pmatrix}, \, w_2 = \begin{pmatrix} -1 \\ 0 \\ 1 \end{pmatrix} \right\}이다. 기하학적 중복도가 2로서 대수적 중복도와 일치한다.
단계 3. w_1과 w_2는 직교하지 않는다: w_1^T w_2 = 1 \neq 0. 그람-슈미트 과정을 적용한다.
u_1 = w_1 = \begin{pmatrix} -1 \\ 1 \\ 0 \end{pmatrix}
u_2 = w_2 - \frac{\langle w_2, u_1 \rangle}{\langle u_1, u_1 \rangle} u_1 = \begin{pmatrix} -1 \\ 0 \\ 1 \end{pmatrix} - \frac{1}{2} \begin{pmatrix} -1 \\ 1 \\ 0 \end{pmatrix} = \begin{pmatrix} -1/2 \\ -1/2 \\ 1 \end{pmatrix}
정규화한다:
q_2 = \frac{u_1}{\lVert u_1 \rVert} = \frac{1}{\sqrt{2}} \begin{pmatrix} -1 \\ 1 \\ 0 \end{pmatrix}
q_3 = \frac{u_2}{\lVert u_2 \rVert} = \frac{1}{\sqrt{6}} \begin{pmatrix} -1 \\ -1 \\ 2 \end{pmatrix}
\lambda_1 = 4에 대응하는 고유벡터를 정규화한다:
q_1 = \frac{1}{\sqrt{3}} \begin{pmatrix} 1 \\ 1 \\ 1 \end{pmatrix}
직교성 확인: q_1^T q_2 = 0, q_1^T q_3 = 0, q_2^T q_3 = 0이다.
단계 4.
Q = \begin{pmatrix} \frac{1}{\sqrt{3}} & \frac{-1}{\sqrt{2}} & \frac{-1}{\sqrt{6}} \\ \frac{1}{\sqrt{3}} & \frac{1}{\sqrt{2}} & \frac{-1}{\sqrt{6}} \\ \frac{1}{\sqrt{3}} & 0 & \frac{2}{\sqrt{6}} \end{pmatrix}, \quad \Lambda = \begin{pmatrix} 4 & 0 & 0 \\ 0 & 1 & 0 \\ 0 & 0 & 1 \end{pmatrix}
7. 직교 대각화의 기하학적 해석
직교 대각화 A = Q \Lambda Q^T는 선형 변환 x \mapsto Ax를 세 단계의 기하학적 조작으로 분해한다.
단계 1: 좌표 회전 Q^T. 입력 벡터 x를 고유벡터 기저로 표현한 좌표 y = Q^T x로 변환한다. Q가 직교 행렬이므로 이 변환은 강체 회전(rigid rotation) 또는 **반사(reflection)**이다. 벡터의 길이와 각도가 보존된다.
단계 2: 축별 스케일링 \Lambda. 고유벡터 기저에서 각 축 방향으로 고유값만큼 독립적으로 스케일링한다. \Lambda y = (\lambda_1 y_1, \lambda_2 y_2, \ldots, \lambda_n y_n)^T이다.
단계 3: 역회전 Q. 스케일링된 벡터를 원래의 표준 기저로 되돌린다. Q = (Q^T)^{-1} = (Q^T)^T이므로, 이는 단계 1의 역변환이다.
따라서 대칭 행렬에 의한 선형 변환은 “적절한 직교 좌표계에서 보면 각 축 방향의 독립적인 스케일링에 불과하다“는 것이 직교 대각화의 기하학적 핵심이다.
8. 이차 형식의 표준화와의 관계
직교 대각화는 이차 형식(quadratic form)의 **주축 정리(Principal Axis Theorem)**와 직결된다. 대칭 행렬 A에 대한 이차 형식
Q(x) = x^T A x
에 직교 좌표 변환 x = Qy (Q는 직교 행렬)를 적용하면
Q(x) = (Qy)^T A (Qy) = y^T Q^T A Q \, y = y^T \Lambda \, y = \sum_{i=1}^{n} \lambda_i y_i^2
이 되어, 이차 형식이 교차 항(cross term) 없이 제곱 항의 합으로 단순화된다. 이는 이차 곡면의 주축을 결정하는 것에 해당한다. 예를 들어, 이차 곡선 5x_1^2 - 4x_1 x_2 + 2x_2^2 = 1에서 x_1 x_2 교차 항을 제거하기 위한 좌표 회전의 각도와 방향이 직교 대각화에 의하여 결정된다.
9. 행렬 거듭제곱의 효율적 계산
직교 대각화 A = Q \Lambda Q^T를 이용하면 행렬의 거듭제곱이 다음과 같이 단순화된다:
A^k = Q \Lambda^k Q^T = Q \, \operatorname{diag}(\lambda_1^k, \lambda_2^k, \ldots, \lambda_n^k) \, Q^T
이는 A의 k제곱을 고유값의 k제곱으로 환원하는 것이다. 일반 대각화에서도 동일한 공식이 성립하지만, 직교 대각화에서는 Q^{-1} = Q^T이므로 P^{-1}의 계산이 불필요하여 수치적으로 유리하다.
마찬가지로, A가 가역이면
A^{-1} = Q \Lambda^{-1} Q^T = Q \, \operatorname{diag}(\lambda_1^{-1}, \lambda_2^{-1}, \ldots, \lambda_n^{-1}) \, Q^T
이다.
10. 직교 행렬의 열 순서와 부호의 비유일성
직교 대각화 A = Q \Lambda Q^T에서 Q와 \Lambda는 유일하지 않다. 구체적으로, 다음의 자유도가 존재한다.
열 순서의 자유도. Q의 열벡터와 \Lambda의 대각 성분을 동일한 순열로 재배치하면 분해가 여전히 성립한다. 통상적으로 고유값을 크기순(내림차순 또는 오름차순)으로 정렬하는 규약을 채택한다.
부호의 자유도. 고유벡터 q_i를 -q_i로 대체하여도 (-q_i)(-q_i)^T = q_i q_i^T이므로 스펙트럼 분해는 변하지 않는다. 따라서 각 고유벡터의 부호(방향)에 임의성이 있다.
중복 고유값에서의 회전 자유도. 고유값 \lambda의 기하학적 중복도가 m \geq 2이면, 해당 고유 공간 내에서 임의의 m차원 직교 변환(회전 및 반사)을 적용하여도 분해가 유효하다.
11. 직교 대각화의 존재에 대한 역 판별
주어진 행렬이 직교 대각화 가능한지 판별하는 가장 직접적인 기준은 대칭성의 확인이다:
- A = A^T를 확인한다.
- 대칭이면 직교 대각화가 가능하다.
- 대칭이 아니면 직교 대각화가 불가능하다.
실용적으로, 수치 행렬에 대하여는 \lVert A - A^T \rVert를 계산하여 기계 정밀도(machine epsilon) 수준 이내인지 확인한다.