지난번 포스팅에서는 행 사다리꼴(Row echelon form)과 계수(Rank)를 이용해서 선형연립방정식 해의 존재성(existence)과 유일성(uniqueness)을 알아보는 방법을 소개하였습니다.
이번 포스팅에서는 고유값(eigenvalue)과 고유벡터(eigenvector)에 대해서 알아보겠습니다.
필자는 경영학을 전공했었는데요, 통계학과의 다변량통계분석 과목을 (겁도 없이 무대뽀로...) 수강했었습니다. 차원축소 기법 중 하나인 요인분석(factor analysis) 시간에 고유값(eigenvalue)과 고유벡터(eigenvector)를 처음 접했었는데요, 그땐 당초에 무슨 소리인지 교수님의 강의를 하나도 못 알아들었습니다. 지금 보면 그냥 이해가 되고 어려워 보이지 않는데요, 그땐 참 소련말처럼 들리고 어렵더라고요. ^^;;;
요즘 회사에서 제조업쪽에 분석 사례 관련 논문을 자주 찾아보는 편인데요, 왠만한 논문에는 고유값(eigenvalue)과 고육벡터(eigenvector) 표기를 마주치곤 합니다. 그만큼 아주 중요하고 많이 쓰이는 개념입니다.
다소 단순하게 보이는 벡터 방정식 "정방행렬 A에 대해 Ax = λx "로부터 놀랄만큼 많은 관련 이론과 풍부한 응용예가 유도된다. 실제로 공학, 물리학, 기하학, 수치해석, 이론수학, 생물학, 환경과학, 도시계획, 경제학, 심리학 등 많은 분야에서 고유값 문제가 나타난다
- Erwin Keryszig, 선형대수와 벡터 미적분학, 범함서적주식회사
자, 그럼 고유값(eigenvalue)과 고유벡터(eigenvector)의 정의에 대해서 부터 시작하시지요.
정방행렬 A에 대하여 Ax = λx (상수 λ) 가 성립하는 0이 아닌 벡터 x가 존재할 때
|
행렬 A에 대한 고유값(eigenvalue) λ ("Lambda", "람다" 라고 읽음)은 특성값(characteristic value), 또는 잠정근(latent root) 라고도 합니다. (eigen은 '고유' 또는 '특성'을 뜻하는 독일어임. '아이겐'이라고 읽음)
Ax = λx 를 만족하는 0이 아닌 고유벡터(eigenvector) x 는 특성벡터(characteristic vector) 라고도 합니다.
그리고 행렬 A의 모든 고유값의 집합을 A의 스펙트럼(spectrum) 이라고 하며, 최대로 서로 다른 n개의 고유값을 가질 수 있습니다. A의 고유값의 절대값의 최대값을 A의 스펙트럼 반경 (spectrum radius)라고 합니다.
이때 행렬 A는 n*n 정방행렬(square matrix) 이라는 점 다시 한번 상기하시구요, Ax = λx를 만족하는 모든 상수 λ와 0이 아닌 모든 벡터 x (1개 ~ 최대 n 개)를 찾는 것이 우리가 할 일입니다.
좀더 쉽게 이해할 수 있도록 고유값(eigenvalue)과 고유벡터(eigenvector)가 가지는 의미를 아래의 예를 들어서 설명하겠습니다.
정방행렬 A (square matrix A) |
| |
고유값 λ (eigenvalue) |
λ = 7 |
λ = 2 |
고유벡터 x (eigenvector) |
|
|
고유값(eigenvalue)와 고유벡터(eigenvector)의 기하학적인 의미를 살펴보면, 벡터 x에 대해 n차 정방행렬 A를 곱하는 결과와 상수 λ를 곱하는 결과가 같다는 의미입니다. 즉, 행렬의 곱의 결과가 원래 벡터와 "방향"은 같고, "배율"만 상수 λ 만큼만 비례해서 변했다는 의미입니다. 이게 고유값(eigenvalue)과 고유벡터(eigenvector)가 무척 중요한 이유입니다. 행렬과 벡터 곱을 했더니 "방향"도 바뀌고 "크기(배율)"도 모두 바뀌는 것과, "방향"은 그대로 있고 "크기(배율)"만 바뀌는 것 중에 뭐가 연산이 간단할 지 생각해보시면 됩니다.
아래의 2차 정방행렬 A=(4,3 2, 5) 에 의해 대응되는 선형사상 f에 의한 c1(2, 3)+c2(-1, 1) 의 상을 가지고 기하학적인 의미의 예를 들어보겠습니다.
위의 결과를 좌표에 나타내보면 아래와 같습니다. 좀 복잡해보이긴 하는데요, 화살표의 eigenvector (2, 3), (-1, 1)의 R^2 공간이 정방행렬 A=(4, 3 2, 5)에 의해서 오른쪽 R^2 공간으로 변환될 때 "방향"은 똑같고, "배율"만 eigenvalue λ 배수 (7배, 2배) 만큼 변했다는 것을 알 수 있습니다.
왼쪽의 A, B, C, D, E 의 좌표점들이 오른쪽에는 A', B', C', D', E' 로 정방행렬 A=(4, 3 2, 5)에 의해 변환되었습니다. 계산 예시로 B (2, 3) -> B' (14, 21)와 D (-1, 1) -> D' (-2, 2) 만 아래 그래프 위에 겹쳐서 제시해보았습니다.
좀더 직관적으로 이해할 수 있도록 아래에 사람 얼굴()이 어떻게 변환되는지 겹쳐서 제시해보았습니다. eigenvector의 방향은 똑같고 (same direction), 크기만 eigenvalue 만큼씩 배수(magnification)가 되었습니다.
이제 고유값(eigenvalue)와 고유벡터(eigenvector)의 정의와 기하학적인 의미에 대해서는 이해가 좀 되시는지요?
행렬식이랑 좌표에 그림 그리려니 시간이 어마무시 걸리네요. ㅜ_ㅜ
아... 봄날의 토요일 오후가 그냥 가버렸어요... 흑...
다음번 포스팅에서는 고유값(eigenvalue)과 고유벡터(eigenvector)를 구하는 방법에 대해서 소개하도록 하겠습니다.
이번 포스팅이 도움이 되었다면 아래의 공감 ♡ 꾸욱~ 눌러주세요. ^^
'R 분석과 프로그래밍 > R 선형대수' 카테고리의 다른 글
[선형대수] 행렬의 대각화, 고유값, 고유벡터를 활용하여 n차 정방행렬의 p제곱 구하기 (15) | 2016.04.13 |
---|---|
[선형대수] 고유값, 고유벡터 구하기 (calculation of eigenvalue and eigenvector) (7) | 2016.04.10 |
[선형대수] 행 사다리꼴(Row echelon form), 계수(Rank), 그리고 선형연립방정식 해의 존재성(existence)과 유일성(uniqueness) (0) | 2016.04.02 |
[선형대수] 행렬의 계수, rank, rank A, rk(A), 階數 (8) | 2016.03.22 |
[선형대수] 핵(核, kernel Ker f), 상(像, image, Im f), 차원정리(dimension theorem) (0) | 2016.03.20 |