[Linear Algebra] 6-2.EVD & Property

Linear Algebra
Author

신호연

Published

February 10, 2023

유투브 - 혁펜하임님의 선형대수학강의를 정리하기 위해 작성한 글입니다.

Eigen Value Decomposition(EVD)

  • 고윳값분해는 행렬을 분해하는 방법 중 하나로 행렬이 1)full rank인 정사각행렬이거나 2)정사각행렬이면서 대칭행렬인 경우에 사용할 수 있다.

  • 정사각행렬이며 대칭행렬의 경우에는 항상 EVD 가능하지만 일반적인 정사각행렬인 경우 모든 column,row가 선형독립(full rank)이어야 한다.

  • 행렬 AR2×2의 eigen value는 2개 eigen vector도 2개라 해보자>

Av1=λ1v1Av2=λ2v2
  • 다음과 식을 생각했을때…
A[v1v2]=[Av1Av2]=[λ1v1λ2v2]=[v1v2][λ100λ2]
  • V=[v1v2],Λ=[λ100λ2]라 하면 다음과 같이 정리할 수 있다.
AV=VΛA=VΛV1
  • 위와같이 하나의 행렬을 몇 개의 행렬들로 인수분해했을때, 행렬A를 decomposition했다고 하며 고윳값,고유벡터를 통해서 decompose하면 eigen (value) decomposition이라고 한다.

Diagonalizable

  • 임의의 정방행렬 A에 대해서 다음이 성립한다고 하자.
AP=PDA=PDP1P1AP=D
  • D는 대각행렬이며 P는 유사행렬이라고 하며 역행렬이 존재하는 정방행렬이라고 한다.

  • 위와 같은 경우 A는 diagonalizable(대각화 가능하다)이라고 한다.

정방행렬의 EVD와 Diagonalizable의 연관성

  • 대각화(diagonalization)와 고윳값분해(EVD)는 매우 연관된 개념이다.
  • 어떤 행렬이 Diagonalizable하다는 의미는 대각행렬(diagonal matrix)과 유사행렬(similar matrix)의 곱으로 표현할 수 있다는 의미이다.
  • 이때 고윳값을 대각원소로 하는 대각행렬을 만들고 고유벡터를 열벡터로 유사행렬을 만들면 고윳값분해를 통해 대각화를 할 수 있는 것이다.
  • 정리하자면 정방행렬의 대각화는 고윳값 분해를 이루어질 수 있다고 할 수 있다.

대각화 관련 동치명제 정리

  • ARn×n이라 했을때 다음의 명제는 동치이다.
A가 diagonalizable하다.A가 eigen decomposition이 가능하다.V1를 구할 수 있다.det(V)가 존재한다.V에 존재하는 n개의 vector는 선형독립이다.A에 대한 선형독립인 eigenvector가 n개 존재한다.

분해했을 때 좋은 점

  • 행렬의 거듭제곱을 간단히 구한다.
Ak=VΛV1VΛV1VΛV1VΛV1=VΛkV1
  • inverse matrix의 계산이 간단해진다.

A1=(VΛV1)1=VΛ1V1

  • eigen value를 모두 곱하면 determinant
    • 임의의 행렬에 대해서 det(A1)=1det(A)이다.
    • 또한 대각행렬의 행렬식은 주대각선에 있는 원소를 모두 곱하는 것과 같다. 그러므로 다음과 같다.
det(A)=det(VΛV1)=det(V)det(Λ)det(V1)=det(Λ)=i=1nλiwhere, Λ=diag(λ1,λ2,,λn)
  • eigenvector를 모두 더하면 trace이다.

tr(A)=tr(VΛV1)=tracetricktr(V1VΛ)=tr(Λ)=i=1nλi

  • λ=0인 eigenvalue의 존재여부 파악가능하다.
행렬 A가 rank - defficient.det(A)=0i=1nλi=00인 eigen value가 하나 이상 존재한다.

알아둬야 할 것들

1. AT의 eigen value와 A의 eigen value는 같다.
  • eigen value를 구하는 characteristic equation이 같기 때문이다.
det(AλI)=det((AλI)T)( by|A|=|AT|)=det(ATλI)
2. Q가 orthonormal matrix λ=1 or λ=1
Qv=λv(Qv)TQv=vTQTQv=vTv=|v|22=λ2|v|22λ=1 or λ=1
3. 대칭행렬이 positive definite i,λi>0 (단,A=AT인 symmetric matrix,λi는 행렬A의 모든 고윳값)
  • 증명1 : 먼저 대칭행렬이 positive definite i,λi>0임을 보인다.
A=VΛVT=[v1v2vn][λ1000λ2000λn][v1Tv2TvnT]=[λ1v1λ2v2λnvn][v1Tv2TvnT]=i=1nλiviviT
  • 대칭행렬A가 양의 정부호일 경우 xTAx>0 이므로 x를 행렬A의 임의의 고유벡터인 vj로 놓아도 성립해야한다. 즉 다음과 같다.
j(1,,n),vjTAvj>0j(1,,n),vjT(i=1nλiviviT)vj>0
  • 그런데 대칭행렬의 경우 고유벡터는 직교(orthogonal)한다. 즉 다음과 같이 정리된다.
j(1,,n),vjT(i=1nλiviviT)vj>0j(1,,n),vjT(λ1v1+λ2v2++λjvj+λnvn)vj>0j(1,,n),λjvjTvj=λj|vj|22>0j(1,,n),λj>0
  • 그러므로, 고윳값은 항상0보다 크다.

  • 증명2 : 그 다음 i,λi>0 대칭행렬이 positive definite임을 증명한다.

  • 이차형식은 다음과 같다.

xTAx=xT(i=1nλiviviT)x=i=1nλixTviviTx=i=1nλixTvi(xTvi)T=i=1nλi(xTvi)TxTvi=i=1nλi||xTvi||2=λ1||xTv1||2+λ2||xTv2||2++λn||xTvn||2
  • 행렬A의 고유벡터의 집합을 B=v1,v2,,vn으로 두면 고유벡터는 서로간에 직교하므로 orthogonal set이며 이는 Rn의 직교기저가 될 수 있음을 의미한다.그러므로, xRnx에 대하여 내적xTvi의 값은 적어도 하나는 고유벡터에서는 0보다 커야한다.(간단히 2차원상에 존재하는 벡터는 2차원 공간을 span하는 기저와 모두 직교할 수 없으며 적어도 하나의 기저와는 내적을 했을때 0보다 크다.)

||xTv1||2+||xTv2||2++||xTvn||2>0

  • 결과적으로,i,λi>0이라고 가정했으므로 다음과 같다.

xTAx=λ1||xTv1||2+λ2||xTv2||2++λn||xTvn||2>0

4. Diagonalizable matrix의 non-zero eigenvalue의 수는 rank(A)이다.(중요)
  • diagonalizable할 경우 EVD가 가능하다. 따라서 다음과 같이 고유분해 할 수 있다.
A=VΛV1
  • 임의의 행렬이 서로다른 행렬의 곱인 경우에 행렬의 랭크는 곱해진 행렬 중 가장작은 랭크를 따라간다. 윗 식에서 V,V1는 역행렬이 존재하며 full rank이므로 랭크는 Λ에 달려있다.
rank(A)=rank(VΛV1)=rank(Λ)where Λ=[λ1000λ2000λn]
  • 따라서 rank(A)= 0이아닌 고윳값의 갯수와 같음을 알 수 있다.