이번 강의에서는 직교기저와 직교행렬 그리고 그람-슈미트에 대해서 배웁니다.
직교기저란 무엇일까요? q벡터라는 직교벡터가 존재할 때 이 q벡터가 다른 모든 직교벡터들과 직교를 한다면 직교기저라고 할 수 있습니다. 직교행렬 Q는 직교벡터 q들을 column으로 가지고있는 행렬입니다.
Orthogonal matrices and Orthogonal basis
직교행렬의 성질로는 $Q^TQ = I$, 전치를 하면 역행렬이 나오는 성질을 가지고 있습니다.
- 역행렬을 쉽게 구할 수 있다.
대표적인 직교행렬로는 어떤 것들이 있을까요?
1. 치환행렬
PermQ = $\left[\begin{matrix} 0 & 0& 1 \\ 1 & 0& 0 \\ 0 & 1& 0 \end{matrix} \right], \left[\begin{matrix} 0 & 1& 0 \\ 0 & 0& 1 \\ 1 & 0 & 0 \end{matrix} \right]$
두 번째 행렬은 첫 번째 행렬을 전치한 것입니다.
또 다른 직교행렬
Q가 직교 column을 가지고 있을 때 column space에 투영할 경우 투영행렬이 됩니다.
- A대신에 Q를 사용할 경우 다음과 같이 간단하게 표현이 가능합니다.
$P = A(A^TA)^{-1}A^T$
$P = Q(Q^TQ)^{-1}Q^T = QQ^T = I$
정방행렬이면 column space가 전체 공간과 같아져 버려서 다음과 같이 단위행렬이 되는 것입니다.
다른 투영행렬의 조건들도 한번 확인해보겠습니다.
$P^2 = (QQ^T)(QQ^T) = QIQ^T = QQ^T$
이렇게 직교행렬을 이용하면 이전 강의에 배웠던 $A^TA \hat{x} = A^Tb$도 간단히 할 수 있습니다.
- $Q^TQ \hat{x} = Q^Tb = \hat{x} = Q^Tb$
$Q^TQ = I$이기 때문에 간단하게 정리됩니다.
Gram-Schmidt
- 벡터들을 정규직교(orthonormal)로 만드는 방법
다음과 같이 선형독립인 벡터 a, b가 존재할 때 직교벡터를 얻어보겠습니다. orthonormal은 orthogonal하면서 길이가 1인 경우를 말합니다. 직교벡터를 얻은 다음 자기 자신의 길이로 나눠주면 됩니다.
$q_1 = \frac A {||A||}, q_2 = \frac B {||B||}$
a벡터는 수평 방향을 가리키고 있기 때문에 바로 사용할 수 있지만 b벡터는 수직 방향을 가리키고 있지 않습니다. 이것을 어떻게 직교하게 만들어야 할까요?
b벡터에서 수평 방향 성분을 없애주면 됩니다. b벡터를 a벡터에 투영해서 수평 성분만 가진 $\hat {b}$를 만들어서 빼줍니다.
$B = b - \frac {A^Tb} {A^TA} A$
- 이렇게 하면 서로 직교하게 됩니다.
만약 새로운 벡터 c가 orthonormal 하기 위해서는 어떻게 해야 할까요?, 다음과 같이 이미 존재하는 기저들의 성분을 가지지 않게 빼주면 됩니다.
$q_3 = \frac C{||C||} = c - \frac {A^Tc}{A^TA}A - \frac {B^Tc}{B^TB}B$
예제)
다음과 같이 a와 b는 직교하지 않습니다. 이제 위에서 배운 방법을 사용해서 두 벡터가 직교하게 만들겠습니다. 만들어진 두 벡터를 내적 해서 0이 됨을 확인할 수 있습니다.
여기서 행렬 Q와 $q_1, q_2$ 무엇인가요?
- 구한 값에 길이를 나눠서 orthonormal 벡터를 구함
'수학 > Gilbert Strang Linear Algebra' 카테고리의 다른 글
19. Determinant Formulas and Cofactors (0) | 2022.04.01 |
---|---|
18. Properties of Determinants (0) | 2022.03.31 |
16. Projection Matrices and Least Squares (0) | 2022.03.20 |
15. Projections onto Subspaces (0) | 2022.03.19 |
14. Orthogonal vectors, subspace (0) | 2022.03.09 |