본문 바로가기

공부를 합니다/수학 (mathematics)

선형대수(HYU)_10 벡터의 직교성과 직선투영

3. Orthogonality

 

3.1 Orthogonal Vectors and Subspaces

Orthogonality

  • 기하학적으로 생각하면 basis는 space를 이루는 coordinate axes로 볼 수 있다.
  • 일반적으로 봐왔던 x-y plane이나 3-dimensional space의 axes처럼 수직을(perpendicular) 이루고 있는 basis를 **orthogonal**하다고 한다.
  • Orthogonal한 basis로 계산을 보다 쉽게 할 수있다.

 

Orthogonal Vectors


그럼 어떤 vector가 orthogonal한 벡터일까.

두 벡터 x, y가 orthogonal한지 확인하려면 가장 먼저 vector의 길이를 알이야한다.

 

Length of Vector

Vector x의 길이(lentgh)는 x로 나타내고 그 제곱을 다음과 같이 나타낼 수 있다.

x2=i=1nxi2=xTx(xTx:innerproduct)

 

Orthogonal vectors

orthogonal한 두 basis vector x, y는 right triangle을 형성하고 삼각형 각 변을 이루는 vector의 크기를 피타고라스 정리를 이용해서 표현하면 다음과 같다.

x2+y2=xy2

위 식의 vector 크기를 내적을 이용해서 나타내면

xTx+yTy=(xy)T(xy)=xTxyTxxTy+yTy

xTy+yTx=0

vector xy를 내적한 값은 scalar값이므로 transpose를 취해도 그 값이 같다.

즉, xTy=(xTy)T=yTx 이므로

xTy=yTx=0 이다.

 

xTy의 값이 zero이면 xy는 orthogonal 하다.
xTy is zero if and only if x and y are orthogonal vectors.

 

xy를 내적할 때

  • xTy=0 for Orthogonal (right angle)
  • xTy<0 for angle > 90deg
  • xTy>0 for angle < 90deg

 

Orthogonality and Linearly Independent

nonzero vercor v1,v2,vkmutually orthogonal하면 (모든 verctor가 서로 수직) 이 vectors들은 linearly independent하다.

Proof

c1v1+c2v2++ckvk=0일 때,

임의의 vi에 대해 viT(c1v1+c2v2++ckvk)=viT0=civi2=0

 vivj=0 (ij)

nonzero vi에 대해 civi20 이므로
모든 ci=0

 

Orthonormal

Basis vector v1,v2,vk가 orthogonal 하면서 vi의 length가 vi=1 일 때 vector viorthonornal 하다.

Orthonormal한 basis vector v1,v2,vk가 이루는 vector space V안의 임의의 벡터 x에 대해서 xvi의 linear combination으로 나타낼 수 있다.

x=i=1kcivi

이 때, Basis vector가 orthonormal하면 linear coefficient ci를 보다 쉽게 구할 수 있다.

vix=civi2

for orthonormal vi, vi2=1

ci=vix

 

Orthogonal Subspaces


동일한 space R의 두 개의 subspace VW에 대해서 V의 모든 vector vW의 모든 vector w에 orthogonal하면 두 subspace VW는 orthogonal하다. vTw=0 for all v and w.

  • {0}는 모든 subspace에 orthogonal하다.
  • R3의 subspace는 원점을 지나는 line(1-dimension)이나 plane(2-dimension)으로 나타낼 수 있으며 line과 line 혹은 line과 plane 사이에 orthogonality가 성립할 수 있다.

 

Orthogonal Subspace in Four Fundamental Subspace

어떤 Space의 orthogonal subspace는 항상 두 개가 동시에 존재한다*.

그리고 fundamental subspaces가 orthogonal subspace를 이루기 때문에 orthogonal subspace는 항상 존재한다 (unavoidable).

* 생각해보면 subspace가 '수직'을 이루려면 당연히 두 개가 존재해야한다.

m by n matrix에 A에 대해서,
Row space는 Rn에서 nullspace와 orthogonal 하다.
Column space는 Rm애서 left nullspace와 orthogonal 하다.

 

proof 1

nullspace의 vector x에 대해서 Ax=0 이고 이 system의 m개의 equation을 다음과 같이 표현할 수 있다.

Ax=[row 1row 2row m][x1x2xn]=[000]

A의 각 row는 x와 orthogonal하기 떄문에 x는 rows의 어떤 combination이라도 orthogonal하다. (row)Tx=0

Nullspace의 vector x는 모든 row space의 vector에 orthogonal하므로 nullspace는 row space에 orthogonal하다. N(A)C(AT)

 

Left nullspace의 vector y 역시 ATy=0 혹은 yTA=0 이고 이 system을 다음과 같이 나타낼 수 있다.

yTA=[y1ym][ccoolluummnn1n]=[00]

Vector y는 모든 column에 orthogonal 하므로 column의 모든 combination에 orthogonal하다.

Left nullspace의 vector y는 column space의 모든 vector에 orthogonal하므로 left nullspace는 column space에 orthogonal하다. N(AT)C(A)

 

Proof 2
coordinate-free proof

xAx=0를 만족하는 nullspace일 때 v가 row space의 vector라면 v는 A의 row들의 combination으로 나타낼 수 있다. v=ATz (z는 coefficients).

이 경우 xv는 다음을 만족한다.

vT=(ATz)Tx=zTAx=zT0=0

Null space Row space

 

Example

Rank가 1인 matrix A에 대해서

A=[132639]

  • row는 (1,3의 상수배이기 때문에 nullspace는 A의 모든 row에 orthogonal한 x=(3,1)를 포함한다.

  • nullspace와 row space는 R2 안의 수직한 line이다.

  • column space는 (1,2,3)을 지나는 line이므로 left nullspace는 그에 수직인 plane인 y1+2y2+3y3=0이다.

 

Orthogonal Complement

위의 예시에서 처음 두 개의 sub spaces (two lines)는 R2안에서 1+1=2의 dimension을 갖는다. 두 번쨰 sub spaces (line and plane)는 R3안에서 1+2=3의 dimension을 갖는다.

이를 일반적으로 적용하면,

  • dimension of (row space) + (nullspace) = r+(nr)=n (number of columns) in Rn
  • dimension of (column space) +(left nullspace) = r+(mr)=m (number of rows) in Rm

이 처럼 subspace 사이에 orthogonal 하면서 dimension에 보완 관계가 있는 경우 orthogonal complement라고 한다.

Rn의 sub space V에 대해서 V에 orthogonal한 모든 vector를 V의 orthogonal complement라고 하고 V=V perp 라고 표시한다.

  • row space nullspace: C(AT)=(N(A))
  • column space left nullspace: C(A)=(N(AT))

결과적으로 four fundamental subspaces의 관계를 정리하면 다음과 같다.

  • nullspace는 Rn에서 row space의 orthogonal complement이며 row space의 vector에 orthogonal한 모든 vector를 포함한다.
  • left nullspace는 Rm에서 column space의 orthogonal complement이며 column space의 vector에 orthogonal한 모든 vector를 포함한다.

 

Ax = b

Column space와 left nullspace의 orthogonal complement를 이루는 성질을 Ax=b에 이용할 수 있다.

  • Ax=b의 solution이 존재하기 위해서는 bA의 column space에 있어야 한다. (b가 column space의 linear combination)
  • bA의 left nullspace에 perpendicular 해야한다.

Ax=byTA=0 일 때, yTb=0이면 해가 존재한다.
Ax=b is solvable if and only if yTb=0 whenever yTA=0

 

The Matrix and the Subspaces


Orthogonal complement와 orthogonal은 다르다.

 

Dimension이 작은 경우 orthogonal하지만 orthogonal complement는 아닐 수 있다.

Example

V가 (0, 1, 0)이 span한 line이고 W가 (0, 0, 1)이 span한 line인 경우, VW는 orthogonal하지만 VW는 아니다.

W의 orthogonal complement는 2-dimensional한 plane이어야 하고 위의 line은 W의 일부분일 뿐이다.

 

Dimension이 충분하면(right) orthogonal sub space들은 무조건 orthogonal complement를 이룬다.

W=V 이면 V=W 이고 dim V+dim W=n 이다.

즉, V⊥⊥=V 이고 이는 VW의 dimension이 충분하면 whole space Rn은 두 개의 수직한 부분으로 나눠진다는 것을 의미한다.

 

Summary of Fundamental Theorem of Linear Algebra

What is happening inside the multiplication Ax

  • Nullspace는 zero vector로 이동.
  • 모든 AxA의 column space안에 존재.
  • 그 어느 것도 left nullspace로는 이동하지 않음.

일반적으로 x는 "row space compoment"와 "null space component"로 나눌 수 있다. x=xr+xn

  • xA를 곱하면, Ax=Axr+Axn
  • Nullspace component는 zero로 간다: Axn=0
  • Row space component는 column space로 간다: Axr=Ax

xrx를 row space로, xnx를 nullspace로 projection한 것이다 → Projections

 

Transpose, Pseudoinverse

추후에 작성

 

3.2 Cosines and Projections onto Lines


  • Vector의 inner product를 vector가 이루는 각과 연결시키기 위함.
  • Vector가 이루는 각이 right angle이 아니고 그 inner product 값도 zero가 아닌 경우.

 

Projection

Vector b의 point에서 a방향으로 향하는 가장 직선 거리.

  • Line a의 위에 있는 point 중 b와 가장 가까운 point p를 찾으면
  • bp를 연결하는 직선은 a에 수직이다.

Line이 아니라 plane이나 임의의 subspace S가 주어져도 상황은 동일하다.

point pb를 subspace로 projection한 것이다.

 

기하학적으로 projection은 point b와 subspace S의 거리와 같지만,

Linear system에서는 overdetermined system의 least-squares solution을 구하는데 사용할 수 있다.

즉, Ax=b의 solution이 없는 경우, projection을 이용해서 least-squares method로 구한 p가 가장 근접하게 b를 대체할 수 있다.

 

Inner Products and Cosines


Inner product는 각이 아니지만 각의 cosine값은 inner product와 직결된다.

 

위의 그림에서 cosθ는 다음과 같다.

cosθ=aTbab

벡터를 삼각형으로 보고 law of cosines를 이용해도 동일한 결과를 구할 수 있다.

Law of Cosinesba2=b2+a22bacosθ

vector의 length를 모두 inner product로 바꿔서 식을 정리하면
ba2=b2+a22bacosθ(ba)T(ba)=bTb+aTa2bacosθaTb+bTa=2abcosθ

aTb=bTa 이므로 동일한 cosθ 값을 구할 수 있다.

 

Projection onto a Line


Projection point p를 구해보자.

p는 주어진 vector a를 이용해서 나타낼 수 있다: p=x^a

 

 

point b에서 p로의 line은 vector a와 수직하므로

(bx^a)a,oraT(bx^a)=0,orx^=aTbaTa

를 이용해서 x^를 구할 수 있다.

projection onto a line p를 구하면

p=x^a=aTbaTaa

 

Schwarz inequality

projection식을 이용해서 Schewarz inequality를 이끌어낼 수 있다.

위의 Figure에서 e2=bp2가 음수가 될 수 없음을 이용하면,

baTbaTaa2=bTb2(aTa)2aTa+(aTbaTa)2aTa=(bTb)(aTa)(aTb)2(aTa)0

이로부터 (bTb)(aTa)(aTb)2임을 알 수 있다.

모든 vector abRn에서 |cosθ|1Schwarz inequality를 만족한다.
|aTb|ab

 

Example

b=(1,2,3)a=(1,1,1)를 지나는 line으로 projection해서 x^p를 구함.

x^=aTbaTa=63=2,p=x^a=(2,2,2)

ab사이의 각도는

cosθ=aTbab=6314

6314로 Schwarz ineqality를 만족한다.

 

Projection Matrix of Rank 1


이전에 표기하던 p=x^a에 약간의 변화를 줘서 표기해볼 수 있다: p=a(aTb/aTa)

이처럼 x^a의 순서를 바꾸면 line으로의 projection을 Proejction matrix P 를 이용해서 나타낼 수 있다. P는 vector b와 곱해져서 p를 만드는 matrix이다.

p=aaTbaTa=aaTaTab,P=aaTaTa

 

Example

a=(1,1,1)을 지나는 line으로 project하는 matrix

P=aaTaTa=13[111][111]=[131313131313131313]

 

예시에서 두 가지 성질을 발견할 수 있다.

  1. P는 symmetric matrix이다
  2. Matrix를 제곱하면 자기 자신이 나온다. P2=P

b를 두 번 projection 하면 P2b로 나타낼 수 있고 이는 Pb를 projection하는 것과 같다. Pb는 이미 line위에 있으므로 P2b=Pb이다.

Projection matrix를 나타내는 식으로 계산해도 동일한 결과를 얻을 수 있다.

P2=(aaT)(aaT)(aTa)(aTa)=a(aTa)aT(aTa)(aTa)=aaTaTa=P

P를 four fundamental subspaces의 관점에서 볼 수도 있다. 위의 예시에서 P는:

  • a=(1,1,1)을 지나는 line으로 이루어진 column space
  • a에 수직인 plane으로 이루어진 nullspace 이고
  • rank r=1이다.

 

b satisfying Pb=0

p=0으로 project하는 b를 별도로 다뤄보면: Pb=0

P의 모든 column이 a의 multiple이므로 p=0로 project하는 baTb=0을 만족한다.

이는 p=0으로 project하는 ba의 nullspace (=perpendicular plane)에 놓여있다는 것을 의미한다: ba

 

Remark on Scaling

Projection matrix는 scaling에 영향을 받지 않는다.

위의 예시에서 a를 double해도 결과는 같다.

a=[222],P=aaTaTa=112[222][222]=[131313131313131313]

 

Example: Project onto θ-line

a=(cosθ,sinθ)으로 project하는 projection matrix를 구해보면

P=aaTaTa=[cs][cs][cs][cs]=[c2cscss2]

  • c=cosθ , s=sinθ
  • 분모의 c2+s2=1

 

Transposes from Inner Products


Transpose는 matrix의 diagonal을 기준으로 reflection 시킨 것이다: AijT=(A)ji

Transpose를 inner product랑 연결시키면 transpose에 대한 좀 더 추상적(abstract)한 정의를 얻을 수 있다:

Axy를 inner product한 것은 xATy inner product한 것과 같다.
(Ax)Ty=xTaTy=xT(ATy)

동일한 방법으로 (AB)T=BTAT 역시 보일 수 있다.

(Ax)Ty=xTATy=xT(ATy)