수학/Gilbert Strang Linear Algebra

21. Eigenvalues - Eigenvectors

공부중인학생 2022. 5. 1. 02:36

 

 

고유값(eigenvalue)와 고유벡터(eigenvector)은 무엇일까요?

 

square matrix A가 존재한다고 해보겠습니다. 여기에 $x$벡터를 곱해 나온 결과 $Ax$는 대부분 $x$벡터가 가르키는 방향과 다른 방향을 가르키게 됩니다. 하지만 몇몇 경우에는 $Ax$와 $x$벡터가 평행한 경우가 있습니다. 이때 이 $x$벡터를 고유벡터라고 합니다. ($Eigenvector:$ $Ax$ $parallel$ $to$ $x$) 

 

$Ax$와 $x$는 평행하니까 $x$를 적절히 조절해 $Ax$와 같게 만들 수 있을 것입니다.  

$Ax = \lambda x$, 이때 $\lambda$를 고유값이라고 합니다.

 

$A$는 $x$에 곱해져서 방향, 위치를 변환시키게 됩니다. 어떤 $A$를 곱하더라도 그 위치, 방향이 동일하거나 평행하게 유지가 된다면 그 벡터를 고유벡터로 볼 수 있습니다. 각각 방향과 위치가 같더라도 크기가 다를 수 있는데 그 크기를 맞춰주는 특정 상수가 고유값입니다. ($Ax$와 $x$는 고유벡터 만큼의 크기 차이가 존재한다.)

 

고유값이 0이 될때 고유벡터는?

$Ax = 0$인 경우니까 $x$가 null space에 존재하는 벡터. (행렬 A가 특이행렬인 경우)

 

투영행렬을 통해서 더 자세히 알아보겠습니다.

 

 

 

투영행렬(Projection matrix)

 

사진과 같이 어떤 평면이 존재하고 있을 때 투영행렬 P는 곱해지는 벡터를 평면에 투영시킵니다.

 

 

$b$라는 벡터를 평면에 투영시켰는데 이 사진에서 고유벡터가 존재할까요? (아니요)

$b$는 고유벡터가 아닙니다. 투영된 벡터 $Pb$가 다른 방향에 있기 때문입니다. 여기서 우리가 찾아야할 것은 투영을 시켜도 평행한 벡터입니다.

 

어떤 벡터 $x$에 대해서 $Px = x$가 성립할 때,  x벡터는 투영되는 평면위에 존재하는 벡터로 볼 수 있습니다. 이런 경우에는 고유값이 1이 되게 됩니다.

$Px = \lambda x$, (P로 x에 어떤 변환도 주지 못합니다.)

 

다른 고유벡터는 어떤게 있을까요? (평면에 수직인 벡터)

평면에 수직인 벡터는 투영하면 0이 나오게 됩니다. ($Px = 0$, 고유값이 0인 경우)

 

투영행렬 말고 다른 행렬도 살펴보겠습니다.

 

 

 

치환행렬(Permutation matrix)

 

$A = \left[\begin{matrix} 0 & 1 \\ 1 & 0 \end{matrix} \right] $

다음과 같이 치환행렬 $A$를 곱했을 때 만족하는 벡터는? ($Ax = $)

 

$\left[\begin{matrix} 0 & 1 \\ 1 & 0 \end{matrix} \right] $ $\left[\begin{matrix} 1 \\ 1 \end{matrix} \right] =$ $\left[\begin{matrix} 1 \\ 1 \end{matrix} \right] = $ $\lambda \left[\begin{matrix} 1 \\ 1 \end{matrix} \right]$,   $\lambda = 1$

$\left[\begin{matrix} 0 & 1 \\ 1 & 0 \end{matrix} \right] $ $\left[\begin{matrix} -1 \\ 1 \end{matrix} \right] =$ $\left[\begin{matrix} 1 \\ -1 \end{matrix} \right] = $  $\lambda \left[\begin{matrix} -1 \\ 1 \end{matrix} \right]$,   $\lambda = -1$

 

다음과 같이 원소가 같은 벡터를 사용하고 부호가 바뀌는 경우 고유값을 -1로 설정하면 됩니다. (행을 치환해도 같은 원소라서 이전과 동일한 벡터가 나옴)

 

 

How to solve $Ax = \lambda x$

 

이제 $Ax = \lambda x$를 풀어보겠습니다. 간단한 트릭으로 좌변에 값을 몰아주겠습니다. $(A - \lambda I)x = 0$ 이때 x 뒤에 묶여있는 저 행렬 연산으로 만들어진 행렬 $Z$라고 해보겠습니다.

 

$Zx = 0$, $Z$행렬은 특이행렬이여만 합니다. 그래야 $Zx = 0$이 나올 수 있기 때문입니다. (null space가 존재해야 되기 때문)

 

그리고 특이행렬의 행렬식이 0인데 $det$ $(A - \lambda I) = 0$ 이것을 사용해서 고유값을 찾아보겠습니다. 행렬식을 사용하면 미지수 두 개중 람다만 남게 되는데 먼저 고유값을 찾겠다는 아이디어입니다. 여기서 n개의 람다를 찾아야 합니다. 고유값을 찾고 나서 고유벡터를 찾는 것은 null space를 찾는 것이기 때문에 어렵지 않습니다. (가우스 소거를 이용)

 

 

$A = \left[\begin{matrix} 3 & 1 \\ 1 & 3 \end{matrix} \right] $ 

대칭행렬 A가 존재할 때 $(A - \lambda I)$를 한 다음 행렬식을 진행하면 됩니다.

 

 

 

행렬식을 진행하면 $(3 - \lambda)^2 - 1$이 나오게 되는데 이것을 전개하면 $\lambda^2 - 6 \lambda + 8$이 나오게 됩니다. 인수분해를 진행해주면 $\lambda^2 - 6 \lambda + 8 = (\lambda - 4)(\lambda - 2) = 0$이니

 

  •  $\lambda_1 = 4$, $\lambda_2 = 4$

 

이제 나온 값을 대입해주면 됩니다.

$(A-\lambda I)x = 0$

 

$\left[\begin{matrix} 3 - 4 & 1 \\ 1 & 3 - 4 \end{matrix} \right] $ $\left[\begin{matrix} x_1 \\ x_2 \end{matrix} \right] = 0$

 

$\left[\begin{matrix} -1 & 1 \\ 1 & -1 \end{matrix} \right] $ $\left[\begin{matrix} -1  \\ 1 \end{matrix} \right] =$ $-1 \left[\begin{matrix} -1  \\ 1 \end{matrix} \right] +$ $1 \left[\begin{matrix} 1  \\ -1 \end{matrix} \right] = 0$ 

 

이렇게 고유값이 4일 때 고유벡터는 $\left[\begin{matrix} -1  \\ 1 \end{matrix} \right] $ 라는 것을 찾아냈습니다. 

 

고유값의 또 다른 특징은 $Ax = \lambda x$일 때 $(A + 3I) = (\lambda + 3x)$ 대각 성분의 변화가 일어나면 고유값에도 변화가 생긴다는 것입니다.

 

그러면 $Ax = \lambda x$이고 $Bx = \alpha x$일때 $(A + B)x = (\lambda + \alpha)$와 같을까요? (아니요)

다른 행렬인 $A, B$인 만큼 고유벡터와 고유값이 다를 수도 있기 때문에 성립할 수 없습니다.

 

 

 

회전행렬(Rotation matrix)

 

회전행렬에 대해서 고유값과 고유벡터를 찾아보겠습니다.

 

 $Q = \left[\begin{matrix} 0 & -1 \\ 1 & 0 \end{matrix} \right] $

 

이번에는 고유값의 규칙을 적용해서 풀어보겠습니다.

 

- 행렬 A의 고유값의 합은 A의 대각원소들의 합(trace)과 같다.

- $n \times n$행렬의 행렬식은 고유값들의 곱과 같다.

 

$det$ $Q = 1 = \lambda_1 \lambda_2$

$trace = 0 = \lambda_1 + lambda_2$

 

 $det$ $(Q - \lambda I)= \begin{vmatrix} -\lambda & -1 \\ 1 & -\lambda  \notag \end{vmatrix} = \lambda^2 + 1$

 

$\lambda_1 = i$, $\lambda_2 = - i$

 

고유값이 복소수로 나왔는데 행렬이 대칭에 가까워야지 복소수로 표현이 안됩니다. 회전행렬은 90도로 회전하니 대칭성을 찾을 수 없습니다. 만약 180도나 0도로 회전한다고 한다면 고유값이 복소수가 아니게 됩니다.

 

 

 

 

요약

 

- $A(cx) = \lambda (cx)$ 이기 때문에 고유값은 유일하나 고유벡터는 무수히 많다. (방향은 동일하고 크기에 변화를 주면 무수히 많은 고유벡터가 나온다.)

- 이 무수히 많은 고유벡터들이 형성하는 부분공간이 고유공간(eigenspace)이다.

- 고유값이 0인 경우는 $Ax = 0$인 경우로 $A$가 특이행렬이여서 $x$가 null space에 존재하는 벡터일 때 가능함.

- 행렬식을 이용해서 먼저 고유값을 찾고 나서 고유벡터를 찾는다.

- 고유값이 동일하다면 문제가 생긴다.

- 비대칭성이 강할수록 고유값이 복소수가 된다.