Vector와 Scalar를 아마 물리시간에 처음 접했던 것 같습니다. 벡터는 방향과 크기를 가지는 값이고 스칼라는 크기만 가지는 값이라고 배웠습니다. 이번시간에는 벡터를 활용한 선형대수에 대하여 배워보기 위해 벡터를 조금 깊게 이해하고 linear combination을 알아보도록 하겠습니다.
Vector는 a로 위에 화살표를 작성하여 표시합니다. 선형대수에서는 볼드체로 문자를 작성하여 a와 같이 표현하기도 합니다. R2 차원의 벡터라는 의미는 실수 2차원의 벡터를 의미합니다. 그 벡터는 아래와 같이 표현할 수 있습니다.
a=[x1x2]
이 벡터 값의 의미는 (0,0)에서 (x1,x2)까지의 크기와 방향을 가진 벡터가 됩니다.
만약 서로 다른 두개의 벡터를 더해준다면 사다리꼴 모양으로 두 벡터가 합쳐지게 됩니다. 따라서 서로 다른 방향의 a벡터와 b벡터를 더하게 된다면 각 요소를 더해준 것이 결과가 됩니다.(이해가 어렵다면 그래프를 직접 그려보는 것을 추천드립니다.)
a=[14]b=[23]
a+b=[37]
스칼라 값을 더하는 것은 당연히 불가능합니다. 스칼라는 방향이 없기 때문입니다. 하지만 곱하는 것은 가능합니다. 곱하게 된다면 스칼라 값만큼 벡터의 크기가 커지거나 작아지게 됩니다. 동일하게 원소들에 각각 곱해주면 스칼라 곱을 할 수 있습니다.
a=[14]c=5
c∗a=[520]
현재 R2차원의 벡터에 대한 연산만 수행하였기 때문에 2개의 요소만 나타나는 것이며, Rn차원까지 벡터가 늘어나게 된다면 n개의 요소를 작성해야 합니다.
Rn에서 벡터의 기본성질
실수차원에서의 벡터끼리의 덧셈에서는 교환법칙, 결합법칙등이 성립합니다. 그리고 영벡터(방향과 크기가 0인 벡터)를 더해도 그대로이며 반대방향의 벡터를 더한다면 영벡터가 됩니다.
a+b=b+a
(a+b)+c=a+(b+c)
a+0=0+a=a (여기서 0은 영벡터를 의미합니다.)
a+−a=−a+a=0
스칼라 곱에 대하여도 분배와 결합법칙이 성립하게 됩니다. 그리고 스칼라 값 1을 곱해도 자기 자신의 벡터가 나오게 됩니다.
c(a+b)=ca+cb
(c+d)a=ca+da
c(da)=(cd)a
1a=a
Linear combinations
Linear combination은 Rn차원의 벡터 v1,v2,v3⋯vp와 스칼라 c1,c2,c3⋯cp의 곱으로 이루어진 벡터의 합을 의미합니다.
y=c1v1+c2v2+⋯+cpvp
위 처럼 벡터들이 더해진 것을 Linear combination이라고 부릅니다. 그리고 이 때 앞에 곱해진 스칼라 값들을 weight라고 부릅니다.
그렇다면 Linear Combination이 갖는 의미가 무엇인지 알아보겠습니다.
"어떤 벡터 b를 a1와 a2 벡터의 Linear Combination으로 표현할 수 있는가?" 라는 질문의 의미를 수식으로 풀어보겠습니다.
위 식의 벡터를 풀어쓰면 자연스럽게 linear system이 되는 것을 알 수 있습니다. 따라서 어떤 벡터를 Linear Combination으로 표현할 수 있는지 여부를 풀이하는 것은 Linear system의 해가 존재하는지 해결하는 방법과 동일합니다.
Span {v1,...vp}
Linear Combination으로 표현한다는 것은 결국 주어진 벡터를 활용해 Linear System을 풀어 값이 있는지 여부를 판단하는 것과 동일하다는 결론을 얻었습니다.
이제 새로운 용어를 정의하도록 하겠습니다. Span{v1,...vp}은 {}괄호 안에 있는 벡터들의 linear combination으로 표현할 수 있는 모든 벡터를 의미합니다.
즉 벡터 b가 Span{v1,v2}인지를 묻는 것은 v1,v2의 linear combination으로 b를 표현할 수 있는지 여부를 물어보는 것입니다. 이는 linear system으로 해가 존재하는지 여부를 Row Reduction 알고리즘을 활용해 해결하는 문제로 변환하여 해결할 수 있게 됩니다.