DAY15 - 랭크
랭크
- 행렬의 열벡터 중 서로 독립인 열벡터의 최대 개수 : 열랭크
- 행렬의 행벡터 중 서로 독립인 행벡터의 최대 개수 : 행랭크
- 행랭크와 열랭크는 항상 같다.
- 따라서 행렬의 랭크 = 행랭크 = 열랭크
- 행렬 $A$의 랭크는 $rankA$로 표기.
랭크는 다음과 같은 성질을 가진다.
$$ rankA \le min( M, N ), A \in R^{M\times N} $$
풀랭크
- 풀랭크는 $ rankA = min( M, N ) , A\in R^{M\times N}$ 인 경우를 의미한다.
- 선형독립인 벡터들을 행 또는 열로 가지는 행렬을 만들면 랭크의 정의에 의해 해당 행렬은 풀랭크가 된다.
로우 랭크 행렬
- 서로 독립인 N차원 벡터 K개를 이용하여 만들어지는 행렬을 rank-K matrix 라고 한다.
ex)
$x = [x_1\ x_2\ x_3\ \dots\ x_N]^T$ 일 때 $xx^T \in R^{N\times N}$ 을 rank-1 matrix라고 한다.
$$ xx^T = [x_1x\quad x_2x\quad x_3x\quad \dots\quad x_Nx] $$
$[x_1\ x_2]\begin{bmatrix} x_1^T\\x_2^T\end{bmatrix} = x_1x_1^T + x_2x_2^T $ 는 서로 독립인 N차원 벡터 2개를 이용하여 만들어지는 행렬로 rank-2 matrix라고 한다.
벡터공간과 기저벡터
- N차원 벡터 K개가 서로 선형독립일 때, K개의 벡터의 선형조합으로 만들어지는 벡터의 집합을 "벡터공간"이라고 한다.
- 그리고 벡터공간을 만들어 낸 K개의 선형독립 벡터를 "기저벡터"라고 한다.
- 벡터공간의 차원 = 기저벡터의 개수
* N개의 N차원 벡터가 선형독립이면 모든 N차원 벡터를 만들 수 있습니다.
$ X = \begin{bmatrix} x_1&x_2&\dots&x_N\end{bmatrix} $ 일 때, 새로운 $N$차원 벡터를 $x$를 $X$의 열벡터로 추가할 경우 $ X = \begin{bmatrix} x_1&x_2&\dots&x_N&x\end{bmatrix} $가 되어 $ X \in R^{N\times (N+1)} $ 이 되는데, $rankX = N $이므로 새로 추가된 벡터 $x$는 반드시 $x_1, x_2, \dots, x_N$의 선형조합입니다.
따라서 어떠한 $N$차원 벡터를 생각하더라도 기저벡터의 조합으로 표현할 수 있습니다.
랭크와 역행렬
- 정방행렬의 랭크와 역행렬 사이에는 다음과 같이 정리가 성립
: 정방행렬이 풀랭크이다 $\leftrightarrow\ $ 역행렬이 존재한다
*증명과정
$$ X \in R^{N\times N}, \quad rankX = N, \quad \begin{bmatrix} x_1&x_2&\dots&x_N\end{bmatrix}\quad \rightarrow\ linearly\ independent$$
$X$의 열벡터들이 $N$차원 벡터공간의 기저벡터이므로 다음과 같이 선형조합으로 $N$차원 벡터 표현 가능
$$ Xc_1 = e_1 = \begin{bmatrix} 1 \\ 0 \\ \vdots \\ 0\end{bmatrix} $$
$$ Xc_2 = e_2 = \begin{bmatrix} 0 \\ 1 \\ \vdots \\ 0\end{bmatrix} $$
$$ \vdots $$
$$ Xc_N = e_N = \begin{bmatrix} 0 \\ 0 \\ \vdots \\ 1\end{bmatrix} $$
$$ X\begin{bmatrix} c_1&c_2&\dots&c_N\end{bmatrix} = I $$
$$ XC = CX = I $$