본문 바로가기
머신러닝, 딥러닝

고유값 분해(Eigen-Value Decomposition)

by Deeppago 2022. 2. 28.
-목차-

1. 배경 지식

    1.1 행렬은 벡터들의 모음

    1.2 행렬의 각 열의 상수를 인수분해 하는 방법

2. 고유값 분해(Eigen-Value Decomposition)

3. 대칭 행렬의 고유값 분해

1. 배경 지식

1.1 행렬은 벡터들의 모음

\(n\)개의 \(n\)차원 벡터 \(a_i \in \mathbb{R}^{n \times 1}\) \(for\,i = 1,2,..., n\)이 있다고 생각해보자.

그러면 이 \(n\)개의 벡터들을 모아 \(n\times n\) 차원의 행렬을 구성할 수 있다. 

 

\[A = \begin{bmatrix}|& | & & | \\a_1&a_2& ... & a_n \\| & | & & | \\\end{bmatrix}\in \mathbb{R}^{n\times n} \]

 

1.2 행렬의 각 열의 상수를 인수분해 하는 방법

어떤 \(n\times n\) 차원의 행렬 \(A\)가 다음과 같이 구성되어있다고 가정하자.

 

\[A = \begin{bmatrix}| & | & & | \\\lambda_1a_1 & \lambda_2a_2 & ... & \lambda_na_n \\| & | & & | \\\end{bmatrix} \in \mathbb{R}^{n\times n} \]

 

여기서 \(\lambda_i\,\,, for\,\,i =1, 2, ..., n\) 는 임의의 실수이다.

그렇다면 위 식의 행렬 \(A\)는 다음과같이 인수분해할 수 있다.

 

\[A = \begin{bmatrix}| & | & & | \\a_1 & a_2 & ... & a_n \\| & | & & | \\\end{bmatrix}\begin{bmatrix}\lambda_1 & 0 & ... & 0 \\0 & \lambda_2 & ... & 0 \\ & & \ddots & \\0 & 0 & ... & \lambda_n\\\end{bmatrix} \]

 


2. 고유값 분해(Eigen-Value Decomposition)

임의의 \(n\times n\) 행렬 \(A\)에 대해 여러개의 고유값과 고유 벡터를 얻었다고 해보자.

다시 말해, 아래의 식을 만족하는 고유값과 고유벡터 \(n\)개 씩을 획득할 수 있다.

 

\[Av_i = \lambda v_i \,\, for\,\, i = 1, 2, ..., n\]

 

그러면 고유벡터들을 모아둔 행렬 \(V \in \mathbb{R}^{n\times n}\)를 아래와 같이 생각할 수 있다.

 

\[V = \begin{bmatrix}| & | & & | \\v_1 & v_2 & ... & v_n \\| & | & & | \\\end{bmatrix}\]

 

이때 행렬 \(A\)와 \(V\)를 위의 관계식을 이용해 한번에 표현하면 아래와 같다.

 

\[AV = \begin{bmatrix}| & | & & | \\\lambda_1v_1 & \lambda_2v_2 & ... & \lambda_nv_n \\| & | & & | \\\end{bmatrix}\]

 

또 고유값들을 대각성분에 모아둔 행렬 \(\Lambda \in \mathbb{R}^{n\times n}\)을 아래와 같이 본다면

 

\[\Lambda = \begin{bmatrix}\lambda_1 & 0 & ... & 0 \\0 & \lambda_2 & ... & 0 \\ & & \ddots & \\0 & 0 & ... & \lambda_n \\\end{bmatrix}\]

 

행렬 \(A\)와 고유 벡터\(V\)의 관계를 아래와 같이 표현할 수 있다.

 

\[AV = V\Lambda\]

 

만약 모든 고유 벡터들이 선형 독립이라면 위 식으로부터 행렬 \(A\)를 아래와 같이 쓸 수 있다.

 

\[A = V\Lambda V^{-1}\]

 


3. 대칭 행렬의 고유값 분해

대칭 행렬의 고유값 분해는 일반 정방 행렬의 고유값 분해와 비교했을 때 약간 특이한 점이 있다. 대칭 행렬의 경우 고유 벡터가 서로 직교하는 성질을 보이기 때문이다.

대칭 행렬은 아래와 같은 성질을 만족하는 행렬이다.

 

\[A = A^T\]

 

만약 행렬 \(A\)가 위의 고유값 분해에서 설명한 것과 같이 고유값 분해할 수 있다면 아래의 내용이 성립한다.

 

\[A = V\Lambda V^{-1} = A^T = (V\Lambda V^{-1})^T = (V^{-1})^T\Lambda V^T\]

 

여기서 \(\Lambda \)는 대각 행렬 이므로 \(\Lambda ^T = \Lambda\)를 만족하고 \((V^T)^{-1} = (V^{-1})^T\)이므로 위 식을 아래와 같이 쓸 수 있다.

 

\[V\Lambda V^{-1} = (V^T)^{-1}\Lambda V^T\]

 

위 식에 따라 대칭 행렬의 고유 벡터를 모아놓은 행렬은 직교 행렬이다 따라서 다음이 성립한다.

 

\[V^T = V^{-1}\]

 

따라서 대칭 행렬 \(A\)는 아래와 같이 고유값 분해할 수 있다.

 

\[A = V\Lambda V^T\]

 

댓글