지금, 나는 

Art is anything you can get away with.

Math/Linear Algebra

5. 직교, 오차 그리고 Tall matrix

hyuckee 2023. 7. 16. 13:57
반응형

벡터에 대하여 내적했을 때 0이면 직교한다고 할 수 있다.

우선, 벡터의 길이는 Frobenius Norm으로 정의한다.
유클리드에 근거한 길이이고 다음과 같다.
$\mathbf{v} = (v_{1}, v_{2})$일 때, $||\mathbf{v}|| = \sqrt{|v_{1}|^{2} + |v_{2}|^{2}}$

내적(Dot Product)은 다음과 같다.
$\mathbf{v}\cdot\mathbf{w} = ||\mathbf{v}|| ||\mathbf{w}|| \cos\theta = v_{1}w_{1} + v_{2}w_{2}$


내적을 통해 다음 두 식을 유도할 수 있다.

(1) 삼각 부등식
$||\mathbf{v} + \mathbf{w}|| ≤ ||\mathbf{v}|| + ||\mathbf{w}||$

(2) Cauchy - Schwarz 부등식
$|\mathbf{v}\cdot\mathbf{w}|^{2} ≤ ||\mathbf{v}||^{2}||\mathbf{w}||^{2}$


따라서 내적의 결과가 0이고, 영벡터가 아니라면,
$\cos\theta = 0$으로 직교한다고 말할 수 있다.

또, 모든 상수 k에 대해 $\sum k\mathbf{a} = 0$을 위해
k=0이 아니고서야 만족시킬 수 없다면 a는 서로 독립이다.
따라서 직교하면 독립이 보장됨을 알 수 있다.

Ax = 0이라면 R(A)⊥N(A)라 할 수 있다.
따라서 R(A)와 N(A)는 서로 독립이고
R(A)∪N(A)는 항상 전체 n×1 벡터 공간을 형성한다.

즉, dim(R(A)) = n - dim(N(A))가 성립함을 의미한다.

그러므로 m < n인 Thin matrix에 대해
x가 모두 0이 아니어도 Ax = 0이 가능하지만,

m ≥ n인 matrix에 대해
x가 모두 0이 아니라면, Ax = 0이 성립할 수도, 성립하지 않을 수도 있다.
행렬의 모든 행 또는 열이 서로 독립임을 보장할 수 없기 때문이다.


독립인 두 벡터는 크기가 같을 수는 있어도 방향은 다르다.
여기에 행렬을 곱하면 벡터로 다른 벡터를 표현할 수 있다.
이러한 과정을 (정)사영(Projection)이라 한다.

$\mathbf{p} = x\mathbf{a}$라는 벡터가 있다고 하자.
$\mathbf{b} = \mathbf{p} + \mathbf{e}$로, e만큼의 최소오차가 있는 벡터가 있다.

$\mathbf{a} ⊥ \mathbf{e}$라 하면
$\mathbf{a}^{T}(\mathbf{b}-\mathbf{p}) = 0$이고
정리하면 $x = \frac{\mathbf{a}^{T}\mathbf{b}}{\mathbf{a}^{T}\mathbf{b}}$가 나온다.

따라서 $\mathbf{p} = \frac{\mathbf{a}\mathbf{a}^{T}}{\mathbf{a}^{T}\mathbf{a}}b$가 된다.


벡터를 평면에 사영한다고 해보자.
사영된 벡터는 결국 평면 상의 벡터의 선형합으로 표현되는 벡터이다.
즉, $\mathbf{p} = A\mathbf{x}$의 행렬곱으로 표현된다.

따라서 결과적으로 $\mathbf{p} = A(A^{T}A)^{-1}A^{T}\mathbf{b}$가 된다.


이러한 방식은 A가 Tall matrix일 때 Ax=b를 풀기 위해 사용된다.
Least Square(LS) Approximations(최소제곱법)라 부른다.

우선적으로 Ax=b 대신 Ax=p를 푼다.
그러면 Ax = p = A(ATA)-1ATb가 나오고
우변이 결국 AA-1b인 것으로 해석할 수 있어서
x = (ATA)-1ATb로 최적의 해를 구할 수 있다.

LS 근사는 회귀분석에도 사용할 수 있다.
좌표가 주어지고 선형식으로 근사할 때 다음과 같이 표현된다.

b = Dt + C로 근사한다고 하자.
(1,0), (2,0), (0,6)이 주어지면
$\begin{bmatrix} 1 & 0 \\ 1 & 1 \\ 1 & 2 \end{bmatrix}\begin{bmatrix} C \\ D \end{bmatrix} = \begin{bmatrix} 6 \\ 0 \\ 0 \end{bmatrix}$를 풀면 되고,
C와 D를 구하면 근사식을 구할 수 있다.


Orthonormal(직교단위) 행렬이란, 길이가 1이면서 서로 직교하는 벡터 집합이다.
따라서 QTQ =  QQT = I가 된다.

이것을 도입하면 A평면에 사영하는 것보다
Q평면에 사영하는 것이 수식적으로 더 간단하기 때문이다.

$\mathbf{p} = Q(Q^{T}Q)^{-1}Q^{T}\mathbf{b} = QQ^{T}\mathbf{b} = \mathbf{b}$가 된다.
Qx = b는 x = QTb로 구할 수 있다.
즉, 오차가 없다는 것이다.

orthonormal은 독립인 세 벡터를 서로 수직인 세 벡터로 바꾸는
Gram-Schmidt Process에서 유용하다.

$A = \mathbf{a}_{1}$
$B = \mathbf{a}_{2} - \mathbf{P}_{A}\mathbf{a}_{2}$
$C = \mathbf{a}_{3} - \mathbf{P}_{A}\mathbf{a}_{3} - \mathbf{P}_{B}\mathbf{a}_{3}$

여기서 A, B, C 각각을 길이 ||A||, ||B||, ||C||로 나누면
$\mathbf{q}_{1}$, $\mathbf{q}_{2}$, $\mathbf{q}_{3}$가 된다.

즉, 다음과 같이 A = QR로 분해할 수 있다.
$\begin{bmatrix} \mathbf{a}_{1} & \mathbf{a}_{2} & \mathbf{a}_{3} \end{bmatrix} = \begin{bmatrix} \mathbf{q}_{1} & \mathbf{q}_{2} & \mathbf{q}_{3} \end{bmatrix}\begin{bmatrix} \mathbf{q}_{1}^{T}\mathbf{a}_{1} & \mathbf{q}_{1}^{T}\mathbf{a}_{2} & \mathbf{q}_{1}^{T}\mathbf{a}_{3} \\ 0 & \mathbf{q}_{2}^{T}\mathbf{a}_{2} & \mathbf{q}_{2}^{T}\mathbf{a}_{3} \\ 0 & 0 & \mathbf{q}_{3}^{T}\mathbf{a}_{3} \end{bmatrix}$

따라서 간단하게 QRx = b를 Rx = QTb로 만들 수 있고
R이 위삼각행렬이므로 쉽게 해를 구할 수 있다.

728x90