이번 포스팅에서는 행렬이 벡터에 작용할 때 방향이 변하지 않는 특별한 벡터, 즉 고유벡터와 그에 대응하는 고유값을 정리한다.
선형 연산(Linear Operator)
이전 행렬 변환 포스팅에서 선형 변환을 다뤘다. 덧셈보존($L(\mathbf{a} + \mathbf{b}) = L(\mathbf{a}) + L(\mathbf{b})$)과 스칼라 곱 보존($L(r\mathbf{a}) = rL(\mathbf{a})$)을 만족하는 함수$L \colon V \to W$가 선형 변환이었고, 모든 행렬 변환은 선형 변환이었다.
고유값과 고유벡터는 특별히 $V = W$인 경우, 즉 같은 공간에서 같은 공간으로의 선형 변환 $L \colon V \to W$를 다룬다. 이를 선형 연산(inear operator)이라 한다. 행렬 $A$를 벡터에 곱하는 것($\mathbf{x} \mapsto A\mathbf{x}$)이 대포적인 linear operator이며, 이 경우 $A$는 반드시 정방행렬($n \times n$)이다. 입력과 출력의 차원이 같아야 하기 때문이다.
고유값과 고유벡터의 정의
$n \times n$행렬 $A$에 대해, 0이 아닌 벡터 $\mathbf{x}$가 존재하여
$$A\mathbf{x} = \lambda\mathbf{x}$$
를 만족하면 $\lambda$를 고유값(eigenvalue), 이 방정식을 만족하는 0이 아닌 모든 벡터 $\mathbf{x}$를 고유벡터(eigenvector)라 한다.

직관적으로, 행렬 $A$를 벡터에 곱하면 일반적으로 방향과 크기가 모두 바뀐다. 그런데 고유벡터는 $A$를 곱해도 방향은 유지되고 크기만 $\lambda$배 변하는 특별한 벡터이다. $\lambda > 1$이면 늘어나고, $0 < \lambda < 1$이면 줄어들고, $\lambda < 0$이면 방향이 발전된다. $\lambda = 1$이면 $A$를 곱해도 아예 변하지 않는다.
고유값을 구하는 방법
$A\mathbf{x} = \lambda\mathbf{x}$를 어떻게 풀까? 우변을 좌변으로 옮기면
$$A\mathbf{x} - \lambda\mathbf{x} = \mathbf{0} \implies (A - \lambda I)\mathbf{x} = \mathbf{0}$$
이다. 이것은 $ (A - \lambda I)$를 계수 행렬로 하는 동차 연립방정식이다. 우리가 원하는 건 0이 아닌 $\mathbf{x}$, 즉 nontrivial solution이다. 랭크를 다뤘던 포스팅에서 다뤘던 동치 조건을 떠올려보면, $(A - \lambda I)\mathbf{x} = \mathbf{0}$이 nontrivial solution을 가지려면 $ A - \lambda I$가 singular(역행렬이 존재하지 않음)이어야 한다. 이는 곧
$$det(A - \lambda I) = 0$$
을 의미한다. 이 식을 $A$의 특성 방정식(characteristic equation)이라 하고, $det(\lambda I_n - A)$를 $\lambda$에 대한 다항식으로 전개한 것을 특성 다항식(characteristic polynomial)이라 한다. $n \times n$행렬의 특성 다항식은 $\lambda$에 대한 $n$차 다항식이므로, 고유값은 중복을 포함하여 최대 $n$개 존재한다.
고유벡터와 고유공간
고유값$\lambda$를 구한 뒤, 각 $\lambda$에 대해 $(A - \lambda I)\mathbf{x} = \mathbf{0}$을 출면 고유 벡터를 얻는다. 이 동차 연립방정식의 해공간을 고유공간(eigenspace) 이라 한다. 고유공간은 이전 포스팅에서 다뤘던 null space와 같은 개념이다. $A - \lambda I$의 null space가 곧 $\lambda$에 대응하는 고유공간이다.
고유벡터는 하나의 벡터가 아니라 고유공간에 속하는 모든 0이 아닌 벡터임에 주의하자. 고듀벡터의 스칼라 배도 고유벡터이다.
예시
1. 고유값이 존재하지 않는 경우
$90^\circ$ 반시계 방향 전환 $L\left(\begin{pmatrix} x_1 \\ x_2 \end{pmatrix}\right) = \begin{pmatrix} -x_2 \\ x_1 \end{pmatrix}$에 대해 $L(\mathbf{x}) = \lambda \mathbf{x}$를 풀어보자.
$$-x_2 = \lambda x_1, x_1 = \lambda x_2$$
두 식을 결합하면 $x_1 = -\lambda^2x_1$이므로 $x_1(\lambda^2 + 1) = 0$이다. $x_1 \neq 0$이면 $\lambda^2 + 1 = 0$, 즉 $\lambda \pm i$가 된다. 실수 범위에서 해가 없으므로, 이 변환은 실수 고유값을 갖지 않는다. 직관적으로 생각해보면 $ 90^\circ $회전은 어떤 벡터도 원래 방향으로 두지 않으니 맞다.
2. 고유값이 존재하는 경우
$A = \begin{pmatrix} 1 & 1 \\ 0 & -1 \end{pmatrix}$에 대해 고유값과 고유벡터를 구하자.
1) 특성 방정식을 세운다.
$$\det(\lambda I - A) = \begin{vmatrix} \lambda - 1 & -1 \\ 0 & \lambda + 1 \end{vmatrix} = (\lambda - 1)(\lambda + 1) = 0$$
$$ \therefore \lambda = 1 \text{ 또는 } \lambda = -1 $$
2) 각 고유값에 대해 $(A - \lambda I)\mathbf{x} = \mathbf{0}$을 푼다.
$\lambda = 1$인 경우:
$$(A + I)\mathbf{x} = \begin{pmatrix} 2 & 1 \\ 0 & 0 \end{pmatrix} \begin{pmatrix} x_1 \\ x_2 \end{pmatrix} = \begin{pmatrix} 0 \\ 0 \end{pmatrix} \implies x_2 = -2x_1$$
$x_1$은 자유 변수이므로 고유공간은 $\mathbf{x} = s \begin{pmatrix} 1 \\ 0 \end{pmatrix} (x \neq 0)$이다.
$\lambda = -1$인 경우:
$$(A + I)\mathbf{x} = \begin{pmatrix} 2 & 1 \\ 0 & 0 \end{pmatrix} \begin{pmatrix} x_1 \\ x_2 \end{pmatrix} = \begin{pmatrix} 0 \\ 0 \end{pmatrix} \implies x_2 = -2x_1$$
고유공간은 $\mathbf{x} = p \begin{pmatrix} 1 \\ -2 \end{pmatrix} (p \neq 0)$이다.
검산해 보면, $A \begin{pmatrix} 1 \\ 0 \end{pmatrix} = \begin{pmatrix} 1 \\ 0 \end{pmatrix} = 1 \cdot \begin{pmatrix} 1 \\ 0 \end{pmatrix}$이고, $A \begin{pmatrix} 1 \\ -2 \end{pmatrix} = \begin{pmatrix} -1 \\ 2 \end{pmatrix} = (-1) \cdot \begin{pmatrix} 1 \\ -2 \end{pmatrix}$이다. 각각 방향이 유지되고 크기만 $\lambda$배 변한 것을 확인할 수 있다.
Nonsingular 동치 조건의 확장
이전 포스팅에서 정리했던 nonsingular 행렬의 동치 조건에 고유값 관련 조건을 추가할 수 있다. $A$가 $n \times n$ 정방행렬일 때, 기존 조건들에 더해 다음이 동치이다.
$\lambda = 0$은 $A$의 고유값이 아니다.
$\lambda = 0$이 고유값이면 $A\mathbf{x} = 0 \cdot \mathbf{x} = \mathbf{0}$, 즉 $A\mathbf{x} = \mathbf{x} = \mathbf{0}$이 nontrivial solution을 가진다는 뜻이다. 이는 $A$가 singular임을 의미한다. 반대로 $A$가 nonsingular이면 $det(A) \neq 0$이고, $det(A - 0 \cdot I) = det(A) \neq 0$이므로 $\lambda = 0$은 고유값이 될 수 없다. 이렇게 이전 포스팅들에서 다뤘던 개념들이 고유값에서도 일관되게 연결된다.
ML에서 고유값과 고유벡터가 가장 직접적으로 사용되는 곳은 PCA(Principla Component Analysis)이다. 데이터의 공분산 행렬(covariance matrix)을 고유값 분해하면, 고유벡터가 데이터의 분산이 가장 큰 방향(주성분)을 나타내고, 고유값이 그 방향의 분산 크기를 나타낸다. 큰 고유값에 대응하는 고유벡터만 선택하면 정보 손실을 최소화하면서 차원을 축소할 수 있다. SVD(Singular Value Decomposition)도 본질적으로 고유값 분해를 일반화한 것이다.
'Mathematics' 카테고리의 다른 글
| [선형대수학#13] Least Squares Solution (0) | 2026.03.28 |
|---|---|
| [선형대수학#12] Gram-Schmidt Process (0) | 2026.03.27 |
| [선형대수학#11] 내적(Inner Product) (0) | 2026.03.26 |
| [선형대수학#10] Rank & Null Space (0) | 2026.03.16 |
| [Convex Optimization#1] Optimization Problem과 Convex Optimization (0) | 2026.03.15 |