Linearly Independent한 Basis는 좌표계를 만들 수 있지만, 벡터들이 서로 orthogonal하지 않으면 Projection과 coordinate 계산이 복잡하다. Gram-Schmidt Process는 같은 Span을 유지하면서 Orthogonal Basis 또는 Orthonormal Basis를 만드는 절차이다.

Gram-Schmidt Process

Linearly Independent한 벡터

가 주어졌다고 하자.

첫 번째 벡터는 그대로 둔다.

두 번째 벡터에서는 방향 성분을 제거한다.

세 번째 벡터에서는 앞의 두 방향 성분을 제거한다.

일반적으로

이다.

각 단계에서 이전 방향의 Projection을 제거하므로 는 이전 벡터들과 orthogonal하다.

Span이 유지되는 이유

의 Linear Combination이다. 반대로 식을 정리하면 의 Linear Combination이다.

따라서 모든 단계에서

이다.

Orthonormal Basis 만들기

각 Orthogonal Vector를 정규화한다.

그러면 는 같은 Subspace의 Orthonormal Basis이다.

예제

이다.

이고

이다. Scalar Multiple을 바꾸어 를 사용해도 된다.

정규화하면

이다.

Classical과 Modified Gram-Schmidt

수학적으로 Classical Gram-Schmidt와 Modified Gram-Schmidt는 같은 결과를 만든다. 그러나 floating-point 계산에서는 이미 제거한 성분이 round-off error 때문에 다시 나타날 수 있다.

Modified Gram-Schmidt는 Projection을 한 번에 합산하지 않고, 벡터를 단계별로 갱신한다. 수치적으로 더 안정적이며 QR Factorization 구현에 자주 사용된다.

Orthogonal Diagonalization

일반 Diagonalization은

이다. Eigenvector들을 Orthonormal Basis로 선택할 수 있다면 는 Orthogonal Matrix가 된다. 이를 라고 쓰면

이므로

이다. 이를 Orthogonal Diagonalization이라고 한다.

Spectral Theorem

실수 정사각행렬에 대해 다음 두 조건은 서로 동치이다.

즉, Real Symmetric Matrix는 항상 Orthonormal Eigenbasis를 가진다.

서로 다른 Eigenvalue의 Eigenvector가 Orthogonal한 이유

이고

라고 하자.

이므로

이다. 이면 이다.

중복된 Eigenvalue의 Eigenspace 안에서는 임의의 Basis가 자동으로 orthogonal하지 않을 수 있다. 이때 Gram-Schmidt Process를 적용해 Orthonormal Eigenbasis를 만든다.

Orthogonal Diagonalization 예제

의 Eigenvalue는 이고 대응하는 Orthonormal Eigenvector는

이다.

이면

이다.

정리

  • Gram-Schmidt Process는 같은 Span을 유지하면서 Orthogonal Basis를 만든다.
  • 정규화하면 Orthonormal Basis를 얻는다.
  • Modified Gram-Schmidt가 수치적으로 더 안정적이다.
  • Real Symmetric Matrix는 Orthogonally Diagonalizable하다.
  • 서로 다른 Eigenvalue의 Eigenvector는 orthogonal하다.
  • 중복 Eigenvalue의 Eigenspace에서는 Gram-Schmidt로 Orthonormal Basis를 만들 수 있다.

확인 문제

다음 벡터들에 Gram-Schmidt Process를 적용해 Orthonormal Basis를 구한다.

풀이

이고

이다. 따라서

이다.