Mathematics/Linear Algebra

[Linear Algebra] 선형대수학에서의 랭크(Rank)

언킴 2022. 4. 29. 20:59
반응형

선형대수학을 다루다보면 랭크(Rank)라는 말을 많이 들어봤을 것이다. 랭크는 열공간(Column Space)의 차원을 의미한다. 일단 이를 이해하기 위해서는 일차독립에 대해서 먼저 알고 있어야 한다. 우리의 최종 목표는 행렬 $\text{A}$에서 행렬 $\text{C}$를 찾는 것이다. 이때의 $\text{C}$의 어떠한 열도 다른 열의 일차결합으로 표현되지 않아야 한다. $\text{A}$를 $\text{C}$로 변환하면서 우리는 랭크를 찾을 수 있다. 이 과정은 아래와 같이 수행된다. 

 

  1. $\text{A}$의 1열의 성분에 0이 아닌 것이 존재하면, 이를 행렬 $\text{C}$에 포함한다.
  2. $\text{A}$의 2열이 1열에 상수를 곱한 것과 같지 않으면, 이를 $\text{C}$에 포함한다. 
  3. $\text{A}$의 3열이 1열과 2열의 일차결합(곱,뎃섬 등으로 표현되는)이 아니면, 이를 $\text{C}$에 포함한다.
  4. 위 작업을 반복 수행한다.
  5. 마지막의 $\text{C}$는 r ($r \ge n$)개의 열이 된다.
  6. 이 $r$개의 열은 $\text{A}$의 열공간의 기저(basis)다.

 

몇 가지 예시를 통해 이를 계산해보자. 

\[ \text{A} = \begin{bmatrix} 1 & 3 & 8 \\ 1 & 2 & 6 \\ 0 & 1 & 2 \end{bmatrix} \Rightarrow \text{C} = \begin{bmatrix} 1 & 3 \\ 1 & 2 \\ 0 & 1 \end{bmatrix} \] 

$\text{A}$의 열은 n=3이고, $\text{C}$의 열은 r=2이다. $\text{A}$의 세번째 열이 첫번째 열과 두번째열의 합산에 2를 곱한 것과 동일하기 때문이다. 이때의 랭크는 r이며 2이다. 

\[ \text{A} = \begin{bmatrix} 1 & 2 & 3 \\ 0 & 4 & 5 \\ 0 & 0 & 6 \end{bmatrix} \Rightarrow \text{C} = \text{A} \]

위의 경우에는 첫번째열부터 세번째열까지 전부 독립(independent)이기 때문에 r=3이며, 이때의 랭크는 3이다. $\text{A}$는 가역행렬이며 $\text{A} \in \mathbb{R}^3$이다. 가역행렬은 역행렬이 존재한다는 것을 의미한다.  

 

행렬 $\text{C}$는 행렬 $\text{R}$을 매개로 하여 행렬 $\text{A}$와 연결된다. 다시 말해 $\text{A}=\text{CR}$이다. 이때 행렬의 크기는 $(m \times n) = (m \times r)(r \times n)$이다. 이 수식을 자세히 보면 이는 바로 행렬 분해(factorization)을 의미하며 행렬로 표기하면 다음과 같다. 

\[ \text{A} = \begin{bmatrix} 1 & 3 & 8 \\ 1 & 2 & 6 \\ 0 & 1 & 2 \end{bmatrix} = \begin{bmatrix} 1 & 3 \\ 1 & 2 \\ 0 & 1 \end{bmatrix} \begin{bmatrix} 1 & 0 & 2 \\ 0 & 1 & 2 \end{bmatrix} = \text{CR} \]

위 행렬을 계산하면 $\text{A}$가 나오는 것을 확인할 수 있다. 행렬 분해의 기본적인 개념이 바로 랭크로부터 나왔다고 할 수 있다!! 원래 factorization은 인수분해를 뜻하지만 행렬에 대한 분해도 factorization이라 표현한다. 

 

이때의 $\text{R}$은 기약행 사다리꼴(Reduced Row Echelon Form, RREF)이라 한다. $\text{R} = \text{rref}(\text{A})$ RREF를 이해하기 위해서는 일단 먼저 행사다리꼴 행렬이 무엇인지 알고 있어야 한다. 행사다리꼴 행렬은 아래의 두 조건을 만족해야 한다. 

 

  1. 모든 성분이 0인 행은 모두 최하단에 위치한다.
  2. 임의의 두 leading entry(pivot)의 위치를 비교했을 때 행이 빠를수록 열도 빠르다. (같은 열에 위치하는 것은 허용하지 않는다)

 

계단식의 형태를 띄고 있어야만 이를 바로 행사다리꼴 행렬이라고 부를 수 있다. 행사다리꼴 행렬 중에서 다음과 같은 조건을 추가적으로 만족할 경우 우리는 이를 바로 기약행 사다리꼴 RREF라고 부른다. 

 

  1. leading entry(pivot)는 1이다. 기약행사다리꼴의 leading entry를 leading one이라 한다.
  2. leading one과 같은 열에 위치한 성분은 모두 0이다.

 

머신러닝 분야에서는 다양한 방법으로 행렬을 분해하고 있는데, 대표적인 방법론으로는 SVD 가 존재한다. 행렬 분해를 할 때 기본이 되는 랭크에 대해서 한 번 다루어 보았다.