개발_기록용

[선형대수학 정리] 6. Column space와 span 본문

선형대수학

[선형대수학 정리] 6. Column space와 span

나폴나폴 2024. 7. 16. 12:40
728x90

1. 배경

 

 

 


그래픽스 공부에 들어가기 전, 근본 중에서도 근본 선형대수학을 먼저 파야겠다고 생각했다!

 

Chris Ohk 님의 Game Developer Roadmap 2022를 보고 내가 부족한 부분을 채워나가기로 결심했기 때문이다.

 

https://github.com/utilForever/game-developer-roadmap

 

GitHub - utilForever/game-developer-roadmap: Roadmap to becoming a game developer in 2022

Roadmap to becoming a game developer in 2022. Contribute to utilForever/game-developer-roadmap development by creating an account on GitHub.

github.com

.

2. 정리


 

 

Column space? Span?

 

앞서 행렬의 곱셈을 살펴보다가

이를 바라보는 관점 중 Column space 관점에 대해 다룬 적이 있다.

 

https://dev-check.tistory.com/37

 

[선형대수학 정리] 5. 행렬의 곱셈과 Column Space

1. 배경   그래픽스 공부에 들어가기 전, 근본 중에서도 근본인 선형대수학을 먼저 파야겠다고 생각했다! Chris Ohk 님의 Game Developer Roadmap 2022를 보고 내가 부족한 부분을 채워나가기로 결심했

dev-check.tistory.com

 

이 개념에 대해 조금 더 상세히 살펴보자.

Column spaces는 Column 벡터들이 Span하는 space이다.

 

그럼 span은 무엇일까?

 

Span은 어떤 벡터들의 Linear Combination으로 나타낼 수 있는 모든 벡터를 모은 집합이다.

 

 

네? Span도 모르는데 Linear Combination이요?

 

 

벡터 v1, v2, v3에 대해 각각 a1, a2, a3를 곱해서

단순히 더한 것이 선형으로 더해진 모양이라이를 Linear Combination이라 한다.

 

그럼, v1과 v2가 서로 orthogonal하면

a1, a2를 계속 바꾸면서 두 벡터 v1, v2가 놓인 평면을 모두 커버할 수 있다.

 

반면 v1, v2가 평행하다면

a1, a2를 아무리 바꾸어도 두 벡터 v1, v2가 놓인 1차원 직선만 커버.

 

또, v1, v2가 영벡터라면

임의의 a1, a2에 대해 그냥 한 점만 커버하게 된다.

 

이처럼, 어떤 벡터들을 가지고 span하느냐에 따라

커버할 수 있는 공간의 dimension도 달라진다.

 

방금 본 서로 orthogonal한 벡터들처럼

[더 좋은 벡터들]을 가지고 span하면 더 넓은 공간을 span한다.

 

여기서 [linear independent]의 개념이 등장한다.

linear independent

 

정확한 정의를 살펴보기 전 예시를 하나 살펴보자.

 

 

내가 스타트업 사장이라 직원들을 잘 뽑아야 한다.

 

*서로 직교한 애들을 뽑으면?

2차원 평면을 다 커버하니 매우 좋다.

 

**서로 평행한 애들을 뽑으면?

1차원 직선만 커버하니 안 좋다.

 

 

그래서 서로 평행한 벡터들만 있을 때

또 다른 방향으로의 벡터를 두면 계수를 바꿔가며

span하는 공간이 한 차원이 더 넓어진다.

 

이 또다른 방향으로 확장하게 해주는 게

Linear independent 이다.

 

참고로, 꼭 직교할 필요는 없다. 평행하지 않으면 됨.

단지 orthogonal하면 Linear independent를 만족.

(= Linear independent가 더 넓은 개념)

 

Linear independent의 정의

 

이제, 정의를 살펴보자.

 

 

a1v1 + a2v2 + a3v3 + ...  = 0 (영벡터)가 되는게a1 = a2 = ... = an일 때!

 

이를 Linear independent라 부른다.

 

 

예를 들어 서로 평행한 두 벡터 v1, v2는

a1, a2이 0이 아니어도 a1v1 + a2v2 = 0이 가능하다.

 

이 둘은 평행하므로 linear independent하지 않다.

(이런 애들을 linear dependent하다고 함.)

 

아무튼 linear independent한게 2개면 2차원 span,

3개면 3차원 span, 100개면 100차원을 span.

 

basis

 

 

추가로, 어떤 공간을 이루는 필수적인 구성요소를 basis라고 한다.

 

linear independent한 것들은 2개면 2차원 평면을 이루니까

곧 2차원 평면의 basis가 된다.

반응형
Comments