연결 강의: MIT 18.06 Linear Algebra - Lecture 21: Eigenvalues and Eigenvectors
1. 고유값 단원의 시작
이번 강의부터 eigenvalue와 eigenvector를 다룬다.
선형대수학에서 고유값과 고유벡터는 매우 큰 주제이다. 앞으로 남은 강의의 많은 부분이 이 주제와 연결된다.
지금까지는 주로 를 풀거나, 행렬의 열공간, 영공간, 직교성, 투영, 행렬식 같은 내용을 다뤘다. 이제는 정사각행렬 가 벡터를 어떻게 변형하는지 더 깊게 본다.
이번 강의의 핵심 질문은 다음이다.
- eigenvector란 무엇인가
- eigenvalue란 무엇인가
- eigenvalue와 eigenvector를 어떻게 찾는가
- 어떤 경우에 좋은 일이 생기고, 어떤 경우에 문제가 생기는가
2. 행렬은 벡터를 바꾸는 함수이다
행렬 는 벡터에 작용한다.
벡터 를 넣으면, 행렬은 새로운 벡터 를 만든다.
이것은 함수와 비슷하다.
미적분에서 함수는 숫자 를 받아 숫자 를 출력한다.
선형대수학에서는 행렬이 벡터 를 받아 벡터 를 출력한다.
대부분의 벡터는 행렬을 곱하면 방향이 바뀐다.
즉, 일반적으로 는 와 다른 방향을 가리킨다.
하지만 특별한 벡터들이 있다. 행렬을 곱해도 방향이 바뀌지 않는 벡터들이다.
이런 벡터를 eigenvector라고 한다.
3. Eigenvector와 eigenvalue의 정의
eigenvector는 행렬 를 곱했을 때 원래 벡터와 평행한 방향으로 나오는 벡터이다.
즉, 다음을 만족하는 0이 아닌 벡터 이다.
여기서 가 eigenvector이고, 가 eigenvalue이다.
는 가 얼마나 늘어나거나 줄어드는지를 나타내는 배율이다.
예를 들어 다음과 같이 해석할 수 있다.
- 이면 벡터가 같은 방향으로 2배 늘어난다.
- 이면 벡터가 같은 방향으로 절반이 된다.
- 이면 벡터가 반대 방향으로 뒤집힌다.
- 이면 벡터가 0으로 보내진다.
여기서 중요한 점은 eigenvector는 반드시 0이 아닌 벡터여야 한다는 것이다.
0벡터는 어떤 에 대해서도
을 만족하기 때문에 의미가 없다. 그래서 eigenvector에서는 0벡터를 제외한다.
4. eigenvalue가 0인 경우
인 경우를 보자.
eigenvalue가 0이면 다음 식이 된다.
즉,
이다.
따라서 eigenvalue가 0인 eigenvector는 의 nullspace 안에 있는 0이 아닌 벡터이다.
즉,
이다.
이것은 곧 가 singular matrix라는 뜻이다.
따라서 다음이 성립한다.
고유값 관점에서는 도 특별히 예외적인 값이 아니다. 다만 nullspace와 직접 연결된 eigenvalue일 뿐이다.
5. Projection matrix의 eigenvalues
먼저 그림으로 이해하기 쉬운 projection matrix를 보자.
어떤 평면 위로 벡터를 투영하는 projection matrix 가 있다고 하자.
임의의 벡터 를 로 곱하면 는 그 평면 위로 내려간 투영벡터가 된다.
일반적인 는 eigenvector가 아니다.
왜냐하면 와 의 방향이 다르기 때문이다.
그렇다면 어떤 벡터가 projection matrix의 eigenvector일까?
5.1 평면 안에 있는 벡터
벡터 가 이미 projection plane 안에 있다고 하자.
그러면 를 평면에 투영해도 아무 변화가 없다.
이 식은 다음과 같이 볼 수 있다.
따라서 평면 안에 있는 모든 0이 아닌 벡터는 eigenvector이고, 그 eigenvalue는 1이다.
즉, projection matrix는 평면 위의 방향들을 그대로 보존한다.
5.2 평면에 수직인 벡터
이번에는 벡터 가 projection plane에 수직이라고 하자.
이 벡터를 평면에 투영하면 0벡터가 된다.
이는 다음과 같다.
따라서 평면에 수직인 방향의 eigenvalue는 0이다.
정리하면 projection matrix의 eigenvalues는 다음과 같다.
평면 안의 벡터들은 eigenvalue 1을 가지고, 평면에 수직인 벡터들은 eigenvalue 0을 가진다.
projection matrix는 이처럼 기하적으로 eigenvector를 이해하기 좋은 예시이다.
6. Permutation matrix 예시
다음 permutation matrix를 생각하자.
이 행렬은 벡터의 두 성분을 서로 바꾼다.
이제 어떤 벡터가 이 행렬의 eigenvector인지 찾아보자.
6.1 eigenvalue 1
벡터
를 생각하자.
이 벡터는 두 성분이 같기 때문에 성분을 바꿔도 변하지 않는다.
따라서,
이다.
즉, 는 eigenvector이고 eigenvalue는 1이다.
6.2 eigenvalue
이번에는 벡터
를 보자.
행렬 를 곱하면 두 성분이 바뀐다.
그런데 이는 원래 벡터의 배이다.
따라서,
이다.
즉, 두 번째 eigenvalue는 이다.
이 행렬의 eigenvalues는 다음과 같다.
7. Trace와 eigenvalue의 합
방금 본 permutation matrix의 대각성분은 모두 0이다.
대각성분의 합을 trace라고 한다.
이 예시에서는 trace가 0이다.
그리고 eigenvalues의 합도 다음과 같이 0이다.
일반적으로 eigenvalues의 합은 trace와 같다.
행렬에서는 이 성질이 특히 유용하다. eigenvalue 하나를 알고 trace를 알면 다른 eigenvalue를 바로 알 수 있기 때문이다.
8. eigenvalue를 찾는 방법
이제 일반적인 방법을 보자.
eigenvector와 eigenvalue는 다음 식을 만족한다.
여기서 와 를 둘 다 모른다.
이 식은 일반적인 선형방정식 와 다르다. 오른쪽에 미지수 와 미지수 가 곱해져 있기 때문이다.
해결 방법은 오른쪽 항을 왼쪽으로 옮기는 것이다.
는 로 쓸 수 있다.
따라서,
공통으로 를 묶으면 다음이 된다.
이제 문제는 다음과 같다.
여기서 는 0이 아닌 벡터여야 한다.
즉, 가 0이 아닌 null vector를 가져야 한다.
이는 가 singular matrix라는 뜻이다.
따라서 determinant가 0이어야 한다.
이 식을 characteristic equation이라고 한다.
eigenvalue를 찾는 핵심 공식은 다음이다.
9. eigenvector를 찾는 순서
eigenvalue와 eigenvector를 찾는 순서는 다음과 같다.
- characteristic equation을 푼다.
- 여기서 eigenvalue 들을 구한다.
- 각 에 대해 다음 homogeneous equation을 푼다.
- 이 nullspace 안의 0이 아닌 벡터들이 eigenvector이다.
즉, 먼저 eigenvalue를 구하고, 그 다음 nullspace를 구해서 eigenvector를 찾는다.
10. 대칭행렬 예시
다음 행렬을 생각하자.
이 행렬은 symmetric matrix이다.
symmetric matrix는 좋은 성질을 많이 가진다.
대표적으로 eigenvalues가 real number로 나오고, 서로 다른 eigenvalues에 대응하는 eigenvectors가 perpendicular가 된다.
이 예시에서 직접 확인해보자.
11. characteristic equation 계산
먼저 를 만든다.
determinant를 계산하면 다음과 같다.
따라서,
이를 전개하면,
characteristic equation은 다음이다.
인수분해하면,
따라서 eigenvalues는 다음과 같다.
여기서 coefficient들을 보면 행렬의 특징이 드러난다.
이 예시에서 trace는 다음과 같다.
그리고 determinant는 다음과 같다.
그래서 characteristic equation이 다음처럼 나온다.
즉, 행렬에서는 eigenvalues의 합이 trace이고, eigenvalues의 곱이 determinant이다.
실제로,
이다.
12. 의 eigenvector
이제 eigenvector를 찾자.
먼저 를 사용한다.
eigenvector는 이 행렬의 nullspace에 있다.
즉, 다음을 풀면 된다.
행렬을 보면 두 행이 서로 종속이다.
nullspace의 대표 벡터는 다음이다.
실제로,
따라서 에 대응하는 eigenvector로 를 잡을 수 있다.
13. 의 eigenvector
이번에는 를 사용한다.
이 행렬의 nullspace를 구하면 된다.
대표적인 null vector는 다음이다.
확인하면,
따라서 에 대응하는 eigenvector는 로 잡을 수 있다.
이제 두 eigenvector를 비교해보자.
두 벡터는 perpendicular이다.
이것은 symmetric matrix에서 매우 중요한 성질이다.
14. 를 더하면 eigenvalue가 어떻게 변하는가
방금 본 행렬은 permutation matrix에 를 더한 형태로 볼 수 있다.
먼저 permutation matrix는 다음이었다.
여기에 를 더하면 다음 행렬이 된다.
permutation matrix의 eigenvalues는 , 이었다.
여기에 를 더하자 eigenvalues는 , 가 되었다.
즉, eigenvalues가 각각 3만큼 증가했다.
eigenvectors는 변하지 않았다.
왜 그런지 식으로 보면 간단하다.
만약
라면,
따라서,
정리하면,
즉, 의 eigenvector는 그대로 이고, eigenvalue만 으로 바뀐다.
더 일반적으로,
이다.
15. 일반적인 행렬을 더할 때는 조심해야 한다
를 더하는 경우에는 eigenvectors가 그대로 유지되었다.
하지만 일반적인 행렬 를 더할 때는 그렇게 단순하지 않다.
예를 들어 의 eigenvector가 이고,
라고 하자.
또 의 어떤 eigenvalue가 라고 하자.
여기서 바로 다음처럼 쓰고 싶을 수 있다.
그런데 이것은 일반적으로 성립하지 않는다.
가 의 eigenvector라고 해서 의 eigenvector라는 보장은 없기 때문이다.
만약 잘못해서 다음처럼 더하면,
그래서,
라고 생각할 수 있지만, 일반적으로 틀린 주장이다.
eigenvalue는 행렬 덧셈에 대해 단순히 더해지지 않는다.
마찬가지로 행렬곱에 대해서도 일반적으로 eigenvalues가 단순히 곱해지지 않는다.
즉, 보통은 다음이 성립하지 않는다.
또한 일반적으로 다음도 성립하지 않는다.
특별한 경우에는 가능하다. 예를 들어 이거나, 두 행렬이 같은 eigenvectors를 공유하는 경우에는 단순한 관계가 생길 수 있다.
하지만 일반적인 행렬에서는 나 에 대해 다시 eigenvalue problem을 풀어야 한다.
16. Rotation matrix와 complex eigenvalues
이번에는 90도 회전행렬을 보자.
이 행렬은 평면의 모든 벡터를 반시계 방향으로 90도 회전시킨다.
그렇다면 real eigenvector가 존재할까?
eigenvector는 행렬을 곱해도 방향이 변하지 않아야 한다.
하지만 90도 회전은 0이 아닌 모든 real vector의 방향을 바꾼다. 어떤 real vector도 자기 자신과 평행한 방향으로 가지 않는다.
따라서 real eigenvector는 없다.
그런데 characteristic equation을 계산하면 eigenvalues는 나온다.
determinant는 다음과 같다.
따라서,
characteristic equation은 다음이다.
따라서 eigenvalues는 다음과 같다.
즉, real matrix에서도 complex eigenvalues가 나올 수 있다.
이 예시는 그 사실을 가장 단순하게 보여준다.
17. Real matrix의 complex eigenvalues
행렬 는 완전히 real matrix이다.
하지만 eigenvalues는 complex number이다.
real coefficient를 가진 characteristic polynomial의 complex roots는 conjugate pair로 나온다.
따라서 real matrix에서 complex eigenvalue가 하나 나오면, 그 conjugate도 함께 나온다.
이 경우에는 와 가 한 쌍이다.
symmetric matrix에서는 이런 일이 일어나지 않는다.
real symmetric matrix의 eigenvalues는 항상 real이다.
반대로 는 symmetric이 아니라 skew-symmetric이다.
skew-symmetric matrix는 pure imaginary eigenvalues를 가질 수 있다.
따라서 이 예시는 symmetric matrix와 skew-symmetric matrix가 eigenvalue 관점에서 얼마나 다른지를 보여준다.
18. Repeated eigenvalue에서 생길 수 있는 문제
마지막으로 repeated eigenvalue가 만드는 문제를 보자.
다음 행렬을 생각하자.
이 행렬은 upper triangular matrix이다.
triangular matrix의 eigenvalues는 대각성분에서 바로 읽을 수 있다.
따라서 eigenvalues는 다음과 같다.
즉, eigenvalue 3이 두 번 반복된다.
직접 characteristic equation으로 확인해보자.
determinant는 삼각행렬이므로 대각성분의 곱이다.
따라서,
이고 eigenvalue는 이다.
19. eigenvector가 부족한 경우
이제 에 대한 eigenvector를 찾자.
eigenvector는 다음 nullspace에 있다.
즉,
이 식은 을 의미한다.
은 자유롭게 선택할 수 있으므로 nullspace는 다음 한 직선이다.
따라서 eigenvector는 한 방향밖에 없다.
문제는 이 행렬이 인데도 independent eigenvector가 하나밖에 없다는 점이다.
eigenvalue가 반복되면 eigenvector도 충분히 나올 것처럼 보일 수 있지만, 항상 그렇지는 않다.
repeated eigenvalue는 eigenvector 부족 문제를 일으킬 수 있다.
이런 행렬은 diagonalization이 잘 되지 않는 대표적인 예시이다.
단, repeated eigenvalue가 항상 나쁜 것은 아니다. 예를 들어 identity matrix는 모든 eigenvalue가 1로 반복되지만, 모든 벡터가 eigenvector이기 때문에 eigenvectors는 충분하다.
문제는 repeated eigenvalue가 있을 때 eigenvectors가 충분한지 따로 확인해야 한다는 점이다.
20. 이번 강의의 핵심 정리
이번 강의는 eigenvalue와 eigenvector의 첫 소개이다.
핵심 정의는 다음이다.
여기서 는 0이 아닌 eigenvector이고, 는 eigenvalue이다.
eigenvector는 행렬을 곱해도 방향이 바뀌지 않는 특별한 벡터이다.
eigenvalue는 그 방향에서 벡터가 얼마나 늘어나거나 줄어드는지를 나타내는 배율이다.
eigenvalue를 찾는 핵심 식은 다음이다.
이 식으로 를 먼저 찾고, 각 에 대해 다음 nullspace 문제를 풀어 eigenvector를 찾는다.
이번 강의에서 본 예시는 다음과 같다.
- projection matrix: eigenvalue는 1과 0이다.
- permutation matrix: eigenvalues는 1과 이다.
- symmetric matrix : eigenvalues는 4와 2이고 eigenvectors는 perpendicular이다.
- : eigenvectors는 그대로이고 eigenvalues는 만큼 증가한다.
- rotation matrix: real matrix에서도 complex eigenvalues가 나올 수 있다.
- repeated eigenvalue: eigenvectors가 부족할 수 있다.
고유값과 고유벡터는 행렬을 이해하는 새로운 좌표계 같은 역할을 한다. 어떤 방향은 행렬을 곱해도 방향이 유지되고, 그 방향에서 행렬은 단순한 스케일링처럼 작동한다.
이 관점이 이후 diagonalization, powers of matrices, differential equations로 이어진다.