행렬의 고유값과 고유벡터

박재한·2022년 1월 14일
0

수학(mathematics)

목록 보기
2/7

참고

1. 행렬의 고유값과 고유벡터란?

  • 고유벡터(eigen vector) : n×nn\times n 정방행렬(고유값, 고유벡터는 정방 행렬에 대해서만 정의됨) A에 대해서 Av=λv\mathbf{Av=\lambda v}를 만족하는 0이 아닌 벡터
  • 고유값(eigen value) : 상수 λ\lambda
  • 행렬에서 고유값과 고유 벡터가 존재할 때 고유값과 고유 벡터는 1개 이상일 수 있다.

2. 고유값과 고유벡터의 기하학적 의미

  • 고유 벡터 : 선형변환 A에 의해 방향은 그대로고 스케일만 변환되는 방향벡터
  • 고유값 : 고유벡터가 변화되는 스케일

3. 고유값 분해를 이용한 대각화(eigen-decomposition)

행렬의 대각화는 행렬을 고유벡터(eigen vector)와 고유값(eigen value)만으로 표현하는 것을 말하며 이 때의 고유값은 대각 행렬(diagonal matrix)로 표현된다.
행렬의 대각화를 이용해서 행렬의 제곱같은 복잡한 행렬 연산을 이해하기 쉽고 간단한 계산으로 가능하게 하여 문제의 복잡도를 줄여준다.
행렬 A의 고유값, 고유 벡터를 λi,vi,  i=1,2,3,...n\lambda_i, v_i,\;i=1,2,3,...n 이라고 할 때,(행렬의 고유값과 고유벡터는 여러개가 나올 수 있다.)
Av1=λ1v1Av2=λ2v2...Avn=λnvnAv_1=\lambda_1 v_1 \\ Av_2=\lambda_2 v_2 \\ ... \\ Av_n=\lambda_n v_n
이를 다시 표현하면,
A[v1v2...vn]=[λ1v1λ2v2...λnvn]=[v1v2...vn][λ10...00λ2...0000λn]A \begin{bmatrix} v_1 &v_2 &... &v_n \\ \end{bmatrix}= \begin{bmatrix} \lambda_1v_1 &\lambda_2v_2 &... &\lambda_nv_n \\ \end{bmatrix}= \begin{bmatrix} v_1 &v_2 &... &v_n \\ \end{bmatrix} \begin{bmatrix} \lambda_1 &0 &... &0 \\ 0 &\lambda_2 &... &0 \\ \vdots &\vdots &\ddots &\vdots \\ 0 &0 &0 &\lambda_n \\ \end{bmatrix}
행렬 A의 고유벡터들을 열벡터로 하는 행렬을 P, 고유값들을 대각원소로 하는 대각 행렬을 Λ\Lambda라고 하면 다음 식이 성립한다.
AP=PΛAP=P\Lambda
A=PΛP1A=P\Lambda P^{-1}
이와 같이 행렬 A는 자신의 고유벡터(고유벡터를 열벡터로 하는 행렬 P)와 고유값(고유값을 대각원소로 하는 대각행렬 Λ\Lambda)의 곱으로 나타낼 수 있고 이를 고유값 분해를 이용한 대각화(eigen-decomposition)라고 한다.
예로서 다음 행렬을 고유값 분해를 이용한 대각화를 시켜보았다.
[110021003]=[111012002][100020003][111012002]1\begin{bmatrix} 1 &1 &0 \\ 0 &2 &1 \\ 0 &0 &3 \\ \end{bmatrix}= \begin{bmatrix} 1 &1 &1 \\ 0 &1 &2 \\ 0 &0 &2 \\ \end{bmatrix} \begin{bmatrix} 1 &0 &0 \\ 0 &2 &0 \\ 0 &0 &3 \\ \end{bmatrix} \begin{bmatrix} 1 &1 &1 \\ 0 &1 &2 \\ 0 &0 &2 \\ \end{bmatrix}^{-1}

4. 고유값 분해를 이용한 행렬의 대각화(eigen-decomposition) 활용

4.1 행렬식(determinant) 구하기

det(A)=det(PΛP1)=det(P)det(Λ)det(P1)=det(P)det(Λ)1det(P)=det(Λ)=λ1λ2...λndet(A)=det(P\Lambda P^{-1}) \\ =det(P)det(\Lambda)det(P^{-1}) \\ =det(P)det(\Lambda)\frac{1}{det(P)} \\ =det(\Lambda) \\ =\lambda_1\lambda_2...\lambda_n
행렬 A의 행렬식(determinant)는 고유값들의 곱과 같다.
(대각행렬의 행렬식은 대각원소의 곱이고 이의 증명은 여기를 참조하면 된다.)

4.2 행렬 A의 거듭제곱

Ak=(PΛP1)k=(PΛP1)(PΛP1)...(PΛP1)=PΛkP1=Pdiag(λ1k,λ2k,...,λnk)P1A^k=(P\Lambda P^{-1})^k \\ =(P\Lambda P^{-1})(P\Lambda P^{-1})...(P\Lambda P^{-1}) \\ =P\Lambda^kP^{-1} \\ =P\,diag(\lambda_1^k, \lambda_2^k,...,\lambda_n^k)\,P^{-1}
행렬 A의 거듭제곱은 P와 Λ\Lambda의 곱으로 나타내어 진다.

4.3 역행렬(inverse matrix)

A1=(PΛP1)1=PΛ1P1=Pdiag(1λ1,1λ2,...,1λn)P1A^{-1}=(P\Lambda P^{-1})^{-1} \\ =P\Lambda^{-1}P^{-1} =P\,diag(\frac{1}{\lambda_1},\frac{1}{\lambda_2},...,\frac{1}{\lambda_n})\,P^{-1}
행렬 A의 역행렬은 P와 Λ\Lambda의 곱으로 나타내어 진다.

4.4 대각합(trace)

tr(A)=tr(PΛP1)=tr(ΛP1P)  (tr(AB)=tr(BA))=tr(Λ)=λ1+λ2+...+λntr(A)=tr(P\Lambda P^{-1}) \\ =tr(\Lambda P^{-1}P)\;(\because tr(AB)=tr(BA)) \\ =tr(\Lambda) \\ =\lambda_1+\lambda_2+...+\lambda_n
행렬 A의 대각합은 고유값의 합과 같다.

4.5 행렬의 다항식

f(x)=a0+a1x+...+anxn이라고하면f(A)=a0I+a1A+...+anAn=a0PP1+a1PΛP1+...+anPΛnP1=P(a0P1+a1ΛP1+...+anΛnP1)=P(a0I+a1Λ+...+anΛn)P1=Pdiag(f(λ1),f(λ2),...,f(λn))P1f(x)=a_0+a_1x+...+a_nx^n\,이라고 하면\\ f(A)=a_0I+a_1A+...+a_nA^n \\ =a_0PP^{-1}+a_1P\Lambda P^{-1}+...+a_nP\Lambda^nP^{-1} \\ =P(a_0P^{-1}+a_1\Lambda P^{-1}+...+a_n\Lambda^n P^{-1}) \\ =P(a_0I+a_1\Lambda+...+a_n\Lambda^n)P^{-1}\\ =P\,diag(f(\lambda_1),f(\lambda_2),...,f(\lambda_n))\,P^{-1}
행렬의 다항식은 고유값과 고유벡터를 이용하여 간략하게 표현할 수 있다.

5. 대칭 행렬과 고유값

대칭 행렬(symmetric matrix)는 고유값과 고유벡터관련 다음의 성질을 가진다.
참고자료

5.1 모든 대칭 행렬은 고유값 분해로 행렬의 대각화가 가능하다.

증명은 매우 어렵다.(여기를 보고 잘 정리해보도록 하자!)

5.2 실수 대칭 행렬에서, 고유값은 모두 실수이다.

TheeignevaluesareReal.The\,eignevalues\,are\,Real.

  • 먼저 복소 켤레(complex conjugate)는 복소수에서 허수 부분의 부호를 바꾼 것이다. (예, z=2+3i,  zˉ=23iz=2+3i,\;\bar{z}=2-3i)
  • 고유값이 복소수인 경우 고유값과 고유벡터는 서로 켤레(conjugate)관계인 쌍(pair)으로 존재한다.(증명은 생략)

When    A    is    real    symmetric    matrix    :When\;\;A\;\;is\;\;real\;\;symmetric\;\;matrix\;\;:
Ax=λx(1)  complex  conjugated!Aˉxˉ=λˉxˉ(2)transpose!xˉTAˉT=xˉTλˉT(3)=xˉTλˉ    (4)because  A  is  real  symmetricxˉTA=xˉTλˉ    (5)\begin{aligned} A\mathbf{x}&=\lambda \mathbf{x} \qquad\qquad\qquad\qquad\cdots(1) \\ &\downarrow\;complex\;conjugated! \\ \bar{A}\mathbf{\bar{x}}&=\bar{\lambda}\mathbf{\bar{x}} \qquad\qquad\qquad\qquad\cdots(2) \\ &\downarrow transpose! \\ \mathbf{\bar{x}^T}\bar{A}^T&=\mathbf{\bar{x}^T}\bar{\lambda}^T \qquad\qquad\qquad\quad\cdots(3) \\ &=\mathbf{\bar{x}^T}\bar{\lambda} \qquad\qquad\qquad\quad\;\;\cdots(4) \\ &\downarrow\quad because\;A\;is\;real\;symmetric \\ \mathbf{\bar{x}^T}A&=\mathbf{\bar{x}^T}\bar{\lambda}\qquad\qquad\qquad\quad\;\;\cdots(5) \end{aligned}
(2)에서 고유값이 복소수일 경우, 고유값과 고유벡터와 그 켤레(conjugate)값이 각각 쌍으로 존재한다. 따라서 원래 고유값과 고유벡터의 켤레값도 행렬 A의 고유값과 고유벡터이다.
(4)에서 λ\lambda는 대칭행렬이라 λT=λ\lambda^T=\lambda이다.
Ax=λx(1)multiply  xˉTxˉTAx=λxˉTx(6)\begin{aligned} A\mathbf{x}&=\lambda \mathbf{x} \qquad\qquad\qquad\qquad\cdots(1) \\ &\downarrow \quad multiply\;\mathbf{\bar{x}^T} \\ \mathbf{\bar{x}^T}A\mathbf{x}&=\lambda \mathbf{\bar{x}^Tx} \qquad\qquad\qquad\quad\cdots(6) \\ \end{aligned}
----------------------------------------------------
xˉTA=xˉTλˉ(5)multiply  xxˉTAx=xˉTλˉx    (7)\begin{aligned} \mathbf{\bar{x}^T}A&=\mathbf{\bar{x}^T}\bar{\lambda}\qquad\qquad\qquad\qquad\cdots(5) \\ &\downarrow \quad multiply\;\mathbf{x} \\ \mathbf{\bar{x}^T}A\mathbf{x}&=\mathbf{\bar{x}^T}\bar{\lambda}\mathbf{x}\qquad\qquad\qquad\quad\;\;\cdots(7) \\ \end{aligned}
----------------------------------------------------
from (6), (7), 좌변이 둘 다 같으므로 우변도 같아야 한다.
λxˉTx=λˉxˉTx      (8)\lambda \mathbf{\bar{x}^Tx}=\bar{\lambda}\mathbf{\bar{x}^Tx}\qquad\qquad\qquad\quad\;\;\;\cdots(8)
λ\lambdaλˉ\bar{\lambda} 가 같으려면 허수부가 0이어야만 하므로 λ\lambda는 실수이다.
따라서, 실수 대칭 행렬에서 고유값은 모두 실수이다.

5.3 실수 대칭 행렬에서, 고유벡터는 서로 직교한다.

TheeigenvectorsarePerpendicular.The\,eigenvectors\,are\,Perpendicular.
대칭 행렬의 고유 벡터들은 서로 수직(perpendicular)하며 크기가 1인 방향 성분만을 나타내는 단위 벡터(unit vector)로 만들 수 있다. 이를 정규직교벡터(orthonormal vector)라고 한다. 그리고 이 정규직교벡터들을 모아서 행렬을 만든 것을 정규직교행렬(orthogonal matrix)이라고 한다.
(Proof)
고유벡터들이 서로 직교한다고 가정했을 때, 행렬 A가 대칭행렬이라는 것을 증명하면 된다.
A=PΛP1=PΛPTA=P\Lambda P^{-1}=P\Lambda P^T (행렬 P의 고유벡터들이 서로 직교한다고 가정, 즉 정규직교행렬이라고 가정)
AT=(PΛPT)T=PΛTPT=PΛPT\begin{aligned} A^T&=(P\Lambda P^T)^T\\ &=P\Lambda^T P^T\\ &= P\Lambda P^T \end{aligned}
Λ\Lambda는 대각 행렬이라 Λ=ΛT\Lambda=\Lambda^T
따라서 고유 벡터들이 서로 직교할 때 행렬 A와 A의 전치행렬(ATA^T)가 같기 때문에 행렬 A는 대칭행렬이다.

profile
바쁘게 부지런하게 논리적으로 살자!!!

0개의 댓글