Summary

행렬 의 rank(랭크) 은 그 행렬이 실제로 담고 있는 “독립적인 정보의 양”이다. 이 하나로 행렬에 딸린 네 개의 부분공간(four fundamental subspaces) 의 차원이 전부 결정된다. 네 공간은 둘씩 짝지어 같은 큰 공간 안에서 서로 직각(orthogonal)으로 놓여 있다.

용어 설명

  • rank (계수/랭크): 일차독립인 행(또는 열)의 최대 개수. 가우스 소거 후 pivot(피벗) 개수와 같다.
  • nullity (퇴화차수): 영공간의 차원, 즉 .
  • column space (열공간) : 의 열들이 만들어내는 공간. 로 나올 수 있는 모든 결과.
  • null space (영공간) : 을 만족하는 들의 공간.
  • row space (행공간) : 의 행들이 만들어내는 공간.
  • left null space (좌영공간) : , 즉 을 만족하는 들의 공간.
  • rank-nullity (계수-퇴화 정리): , 즉 (열 개수) = (랭크) + (영공간 차원).
  • orthogonal (직교): 두 공간이 서로 직각. 한쪽의 어떤 벡터와 다른 쪽의 어떤 벡터를 내적하면 항상 .

Rank and the Four Fundamental Subspaces

1. 직관 (행렬이 실제로 가진 “독립 정보의 양”)

행렬을 “정보 묶음”이라고 생각해보자. 예를 들어 친구 3명의 키를 적은 표가 있는데, 한 열은 cm 단위 키, 다른 열은 m 단위 키 라면? 두 열은 사실 같은 정보다 (그냥 100배 차이). 열이 2개여도 진짜 정보는 1개뿐이다.

rank(랭크) 는 바로 이 “진짜 독립적인 정보가 몇 개냐”를 세는 숫자다.

이 행렬은 열이 2개지만 두 번째 열 = 첫 번째 열 이라 독립 정보는 1개. 그래서 . 랭크가 작을수록 중복(redundancy) 이 많은, 이른바 저랭크(low-rank) 행렬이다.

2. rank 정의 (피벗 수 = 열공간 차원 = 행공간 차원)

행렬 가 (행 개, 열 개)일 때, rank 은 다음이 전부 같은 값이다.

  • 가우스 소거(Gaussian elimination) 후 남는 pivot(피벗) 의 개수
  • 일차독립인 열(column) 의 최대 개수 → 이게 열랭크(column rank)
  • 일차독립인 행(row) 의 최대 개수 → 이게 행랭크(row rank)

행랭크 = 열랭크

모든 행렬에서 행랭크와 열랭크는 항상 같다. 그래서 그냥 하나의 숫자 “rank “이라고 부른다. 신기하지만 선형대수의 핵심 사실 중 하나다.

또한 항상 . 가능한 최대치()일 때 full rank(풀랭크) 라고 한다.

3. 네 부분공간 (각각 정의와 차원)

가 , rank 일 때:

1) 열공간 Column space , 차원
의 열들이 펼치는(span) 공간. 로 나올 수 있는 모든 벡터의 집합이다. 그래서 가 풀리는 는 정확히 일 때뿐.

2) 영공간 Null space , 차원
을 만족하는 모든 . “곱하면 0이 되어버리는 입력들”이다. 이 차원 을 nullity 라 부른다.

3) 행공간 Row space , 차원
의 행들이 펼치는 공간. (열공간을 에 대해 본 것과 같다.) 열공간과 차원이 똑같이 .

4) 좌영공간 Left null space , 차원
(똑같이 ) 을 만족하는 . “왼쪽에서 곱하면 0이 되는” 벡터들이라 left null space.

어느 공간이 이고 어느 게 ?

열은 세로로 길이가 → 열/좌영공간은 에 산다.
행은 가로로 길이가 → 행/영공간은 에 산다.

직교 관계(orthogonality):

  • 행공간 영공간 (둘 다 안). →
  • 열공간 좌영공간 (둘 다 안). →

즉 각각의 큰 공간이 “랭크짜리 부분”과 “0으로 죽는 부분”으로 직각으로 쪼개진다.

4. rank-nullity 정리 + 차원 관계 그림

마찬가지로 쪽은 .

        입력 공간 R^n                    출력 공간 R^m
   ┌─────────────────────┐         ┌─────────────────────┐
   │  Row space C(A^T)   │   A      │  Column space C(A)  │
   │     dim = r         │ ───────▶ │     dim = r         │
   ├─────────────────────┤ (직교)   ├─────────────────────┤  (직교)
   │  Null space N(A)    │ ──▶ 0    │  Left null N(A^T)   │
   │     dim = n - r     │          │     dim = m - r     │
   └─────────────────────┘         └─────────────────────┘
        n = r + (n-r)                    m = r + (m-r)

핵심: 행공간의 정보가 를 통과하면 열공간으로 “온전히” 옮겨가고(여기서 차원이 보존되어 로 같음), 영공간은 전부 으로 뭉개진다.

5. 어디에 쓰나 / 흔한 함정

쓰임:

  • 해의 존재/유일성 판정: 는 일 때만 해가 있고, () 일 때만 해가 유일하다.
  • 저랭크 근사(low-rank approximation): 큰 데이터/이미지를 랭크 작은 행렬로 압축 (→ SVD).
  • 차원 축소(dimension reduction), 데이터의 진짜 자유도 파악.

흔한 함정

  • “열이 5개니까 rank 5” ❌ → 열 개수가 아니라 독립인 열의 개수다.
  • 행랭크와 열랭크를 다른 값으로 착각 ❌ → 항상 같다.
  • 와 혼동 ❌ → 사는 공간( vs )과 차원( vs )이 다르다.
  • 의 차원을 으로 착각 ❌ → 차원은 (단지 안에 있을 뿐).

6. 30초 요약

  • rank = 피벗 수 = 독립 열 수 = 독립 행 수 (행랭크=열랭크).
  • 네 부분공간 (A는 ):
    • 열공간 , 차원 — 가 풀리는 .
    • 영공간 , 차원 — 의 해.
    • 행공간 , 차원 .
    • 좌영공간 , 차원 .
  • 직교: 행공간 영공간 (), 열공간 좌영공간 ().
  • rank-nullity: .
  • 직관: rank = 행렬이 담은 진짜 독립 정보량. 작으면 중복 많음(저랭크). (교과서: Strang, Ch 3-4)

관련 노트