본문 바로가기

Mathematics/선형대수학

(선형대수학) 7-2. Subspace와 Orthogonality + Projection Matrix

이번에는 우리가 보았었던 Subspace 사이에 어떤 각도 관계가 있는지 생각해보려고 한다.

 

먼저, 벡터에서 Orthogonality(직교)

=> 두 벡터가 수직(90도)이다!

 

즉, 앞에서 배웠던 내적을 이용해보면 다음 성질을 얻는다.

이렇게, 내적이 0인 경우, u,v가 서로 직교한다(Orthogonal)라고 한다.

 

또한, Subspace에 대해서도 동일한 식으로 정의할 수 있다!

각 Subspace의 벡터끼리 모두 직교이면, Subspace도 직교라고 한다!


그러면, 행렬에서의 Subspace의 내용으로 돌아가서 각각 어떤 각도 관계가 있는지 살펴보자.

일단, 결론만 말하자면

1. Null Space와 Row Space가 서로 직교!

2. Left-Null space와 Column Space가 서로 직교!

 

이를 한번 증명해보도록 하자! (차원에 주의!)

 

(증명 1) : Null Space와 Row Space

(증명 2) : Left Null Space와 Column Space

위의 증명에서 A를 그냥 A의 전치행렬(A^T)로 놓으면 되기 때문에 생략!!

 


더 나아가서 Orthogonal Complement라는 개념을 보자.

 

(Orthogonal Complement)

즉, X의 Orthogonal Complement는 X와 수직인 모든 벡터들을 모아놓은 Space라고 생각하면 된다.

 

그러면, 신기하게도 N(A)와 R(A)가 서로 Orthogonal Complement가 된다!!

즉, N(A)의 "모든 수직 벡터"들을 모아놓으면 R(A)가 된다!!

(NOTE) 그렇다고 모든 n차원 벡터가 N(A) 아니면 R(A)라는 것은 아니다! N(A), R(A) 둘 다 아닐 수도 있다!!

 

이를 한번 증명해보자.

(증명)

더보기

 

만약에 c=0이라면 Ax=0일 필요는 없지만, y=0인 경우 "하나만" 나오므로, "모든 y"에 대한 내용이 아니다.

-> 모든 c(즉, 모든 y)에 대해서 성립하려면, 결국 Ax=0이어야 한다!


정리해보면...

1. Null Space와 Row Space는 서로 Orthogonal Complement!

2. Left-Null Space와 Column Space는 서로 Orthogonal Complement! (동일한 방법으로 증명하면 됨)

 

1. 앞에서 나온 각 Subspace의 차원과 연관되어서 생각해보면

 

2. 일반해와 특수해의 느낌으로 본다면...

n차원 벡터 x를 Null Space와 Row Space 성분으로 나누자! (서로 수직이므로)

즉, Row Space를 A를 이용해 Mapping하면, 항상 Column Space가 나온다!!

=> 지금 당장은 큰 의미가 안 보이지만 항상 Mapping이 가능하다는 점을 이용하면 => 역행렬 비슷하게 응용도 가능하다! (Pseudo-inverse)

 


이번에는 Subspace에서 빠져나와서, Orthogonality와 Projection에 대한 이야기로 넘어가보자.

Projection Matrix에 대한 정의를 할 때, 어떻게 구하는지는 설명하지 않고, 그냥 의미(제곱한 것과 원래가 동일!)만 확인했었다.

지금부터 이 Projection Matrix를 구하는 방법에 대해서 살펴보도록 한다.

 

일단, 간단하게

=> 벡터 x가 주어져 있을 때, 벡터 z방향으로의 Projection(사영)에 대해서 생각해보자.

여기서 벡터 x는 파란선, z는 저 빨간 선이라고 하자. 그리고 우리의 사영된 벡터는 y가 될 것이다!

일단, y는 z와 평행이기 때문에 z의 상수배일 것이다.

Orthogonality를 이용한다면

즉, 우리가 저 a를 구할 수 있다!

그러므로, 저 z방향으로 사영된 x는...

여기서 헷갈리면 안되는게, 저 분수는 "실수"이고, z는 "벡터"이기 때문에, 마음대로 약분을 하면 안된다!!!

그러나, 저 벡터들의 곱은 마치 "행렬의 곱"처럼 그냥 계산할 수 있다!!! (순서 마음대로 못바꾼다!!)

 

이렇게 y는 구했는데, 그러면 Projection Matrix는 어떻게 되는걸까...

조금 더 자세히 설명하자면,

1. 상수배와 벡터는 자리를 바꿀 수 있다!! (분수부분과 z 자리 바꿈!)

2. 그냥 행렬의 곱처럼 생각해버리자!

3. 그러면 x만 뒤로 뺄 수 있다!

이렇게 구한 Projection Matrix는 => 분자부분은 분명히 Matrix!!!, 분모부분은 실수!!(z의 norm)

 

=> z방향으로의 Projection Matrix를 구했다!!


위에서 헷갈릴만한 계산들을 예시를 하나 들면서 이해해보자.

 

1. zz^T의 성질!

위에서 계산하는 과정을 보면 알겠지만, 하나의 Column z를 2배 한것, 1배 한것,.... 이렇게 나열한 행렬이기 때문에, Rank=1이다.

그러므로 Projection Matrix의 Rank는 무조건 1이다!

 

2. Projection Matrix의 정의(제곱한게 원래와 같은지) 확인!

여기서도, 상수(실수)는 순서와 상관없이 밖으로 빠질 수 있다는 점을 이용하면 된다!!! (나머지는 순서바꿀 수 없다!)

 


여기까지, Projection Matrix에 관한 성질을 보았다...

 

이번챕터에서 기억할 것은

1. 4가지 Subspace의 Orthogonality 관계

2. Projection Matrix의 성질 => 특히 벡터 계산할 때, 순서 바꾸지 말것!, 상수만 순서 바꿀 것!

 

다음 챕터에서는 이 Projection Matrix를 이용해서, Least Square Method라는 방법으로 "최적화"에 대한 문제를 접근해볼 것이다.