고유값과 고유벡터 (eigenvalue and eigenvector)

수학
한 줄 정의: 어떤 행렬을 곱해도 방향은 그대로이고 길이만 일정한 배수로 바뀌는 특별한 벡터를 고유벡터, 그 배수를 고유값이라고 합니다.

쉽게 풀면

행렬은 공간을 늘리거나 회전시키는 "변환기"라고 생각할 수 있습니다. 대부분의 벡터는 이 변환기를 통과하면 방향이 휙 꺾여버립니다. 그런데 몇몇 특별한 방향의 화살표는 변환기를 통과해도 방향이 바뀌지 않고, 그저 길이만 늘어나거나 줄어듭니다. 이 "방향이 안 바뀌는 화살표"가 고유벡터이고, 그 길이가 몇 배로 변했는지를 나타내는 숫자가 고유값입니다. 예를 들어 반죽을 밀대로 미는 상황을 떠올려보면, 반죽이 늘어나는 방향(길게 펴지는 축)과 거의 안 늘어나는 방향이 있는데, 이런 "변하지 않는 축"을 찾는 것이 바로 고유값·고유벡터를 구하는 작업입니다.

왜 중요한가

고유값·고유벡터는 복잡한 행렬 연산을 몇 개의 단순한 축 방향 배율 조정으로 환원해주기 때문에, 선형대수를 다루는 거의 모든 응용 분야에서 핵심 도구로 등장합니다. 주성분분석과 같은 차원 축소, 마르코프 체인의 정상분포 계산, 시스템의 안정성 분석, 그래프의 구조 분석 등은 모두 고유값·고유벡터를 계산하는 문제로 귀결됩니다. 그래서 논문에서 "행렬의 구조를 요약한다"거나 "시스템의 장기적 거동을 예측한다"는 설명이 나오면 그 배경에 고유값 분해가 있는 경우가 많습니다.

논문에서는 이렇게 쓰입니다

"공분산 행렬의 고유값과 고유벡터를 구한 뒤, 가장 큰 고유값에 대응하는 상위 몇 개의 고유벡터를 주성분으로 선택하여 데이터의 차원을 축소하였다."

이 문장은 주성분분석(PCA)에서 데이터가 가장 많이 흩어져 있는 방향(분산이 큰 방향)을 찾기 위해 고유값·고유벡터를 이용했다는 뜻입니다. 고유값이 클수록 그 방향으로 데이터가 넓게 퍼져 있어 정보량이 많다고 해석합니다. 신호처리, 네트워크 분석, 양자역학 등 다양한 분야의 논문에서 시스템의 핵심 특성을 요약할 때 자주 등장합니다.

"상태전이행렬의 고유값 중 절댓값이 1보다 작은 것들이 존재함을 확인하여 시스템이 점근적으로 안정함을 보였다."

제어이론이나 동역학 시스템 분석에서는 고유값의 크기(절댓값)를 통해 시스템이 시간이 지나면서 수렴하는지 발산하는지를 판단하는 근거로 삼습니다.

"그래프 라플라시안 행렬의 두 번째로 작은 고유값(대수적 연결성)을 이용해 네트워크의 군집 구조를 분석하였다."

네트워크 과학이나 스펙트럴 군집화 연구에서는 그래프를 행렬로 표현한 뒤 그 고유값과 고유벡터를 통해 노드들의 연결 패턴이나 군집 구조를 파악합니다.

조금 더 깊게 보면

고유값을 실제로 구할 때는 행렬식을 0으로 만드는 특성방정식을 푸는 것이 이론적 정의지만, 큰 행렬에서는 직접 풀지 않고 거듭제곱법(power iteration)이나 QR 알고리즘 같은 반복적 수치기법을 사용하는 것이 일반적입니다. 또한 대칭행렬의 경우 고유값이 모두 실수이고 고유벡터들이 서로 직교한다는 성질이 있어 공분산행렬처럼 대칭인 행렬을 다룰 때 특히 다루기 쉬워집니다. 정사각행렬이 아닌 일반 행렬에도 비슷한 개념을 확장한 것이 특이값분해(SVD)이며, 자료행렬 자체에 직접 적용하고 싶을 때 흔히 대안으로 쓰입니다.

주의할 점

고유값·고유벡터는 정사각행렬에 대해서만 정의되며, 행렬 하나에 고유벡터가 여러 개 존재할 수 있고 그 방향들은 서로 독립적인 경우가 많습니다. 계산 과정 자체는 행렬식을 0으로 만드는 값을 찾는 것과 연결되어 있습니다.

관련 용어