[선형대수 시리즈 16편] 계수(rank)와 영차원(nullity): 정보 보존량과 손실량

English version

이번 글에서 다룰 내용

이 글에서는 계수 (rank)와 영차원 (nullity)을 다룹니다.

  • 계수(rank)가 무엇을 세는 값인지 설명합니다.
  • 영차원(nullity)이 무엇을 세는 값인지 설명합니다.
  • 두 값이 정보 보존과 정보 손실을 어떻게 요약하는지 정리합니다.
  • 계수-영차원 정리(rank-nullity theorem)의 의미를 직관적으로 이해합니다.

이번 글에서 새로 나오는 용어

  • 계수 (rank): 열공간(column space)의 차원이며, 열벡터들 중 선형독립인 벡터의 최대 개수입니다.
  • 영차원 (nullity): 영공간(null space)의 차원이며, 0으로 사라지는 입력 방향 수입니다.
  • 피벗 (pivot): 사다리꼴에서 각 비영행의 첫 번째 0이 아닌 원소 위치입니다.
  • 자유변수 (free variable): 피벗이 없는 열에 대응하는 변수입니다.

핵심 아이디어

열공간(column space)과 영공간(null space)을 배웠다면, 이제 이 공간들의 크기를 요약할 수 있어야 합니다. 그 역할을 하는 값이 계수(rank)와 영차원(nullity)입니다.

계수 (rank)는 열공간의 차원입니다. 다시 말해, 행렬의 열벡터들 중 선형독립인 벡터의 최대 개수이며, 행렬이 만들어 낼 수 있는 독립적인 출력 방향의 개수입니다.

영차원 (nullity)은 영공간의 차원입니다. 즉 Ax=0을 만족하는 비영벡터 방향이 몇 개 남는지를 나타냅니다.

이 두 수를 함께 보면 행렬이 입력 정보를 얼마나 보존하고, 얼마나 잃는지 한눈에 읽을 수 있습니다.

가장 간단한 숫자 예시

다음 행렬을 보겠습니다.

A = [1 0 0
     0 1 0]

이 행렬은 3차원 입력 [x; y; z]를 받아 [x; y]만 남깁니다. 즉 z 방향은 사라집니다.

  • 계수(rank)는 2입니다. x, y 두 방향이 독립적으로 살아남기 때문입니다.
  • 영차원(nullity)은 1입니다. z 방향 하나가 0으로 사라지기 때문입니다.

이 예시는 3 = 2 + 1이라는 계수-영차원 정리를 바로 보여 줍니다.

단계별 예시

예시 1) 3차원에서 2차원으로의 정사영

3차원 벡터를 xy평면으로 정사영(orthogonal projection)하는 선형변환을 생각해 봅시다.

P = [1 0 0
     0 1 0
     0 0 0]

이 경우 출력은 항상 xy평면 위에 있으므로 계수(rank)는 2입니다. 반면 z축 방향은 모두 0으로 가므로 영차원(nullity)은 1입니다.

즉 원래 3차원 입력은 "살아남는 2차원"과 "사라지는 1차원"으로 나뉩니다.

예시 2) 중복된 열이 있는 행렬

다음 행렬을 보겠습니다.

A = [1 2
     2 4]

두 번째 열은 첫 번째 열의 2배입니다. 그래서 열은 2개지만 독립적인 열은 1개뿐입니다. 따라서 계수(rank)는 1입니다.

이 예시는 열 개수가 많아 보여도 실제 표현력은 더 작을 수 있다는 점을 보여 줍니다.

예시 3) full rank와 가역성

n x n 정사각행렬(square matrix)에서 계수(rank)가 n이면 이를 full rank라고 합니다. 이때만 역행렬이 존재할 수 있습니다. 반대로 계수가 n보다 작으면 어떤 방향 정보는 반드시 잃어버리므로 가역적(invertible)일 수 없습니다.

수학 주석

  • 계수(rank)는 피벗(pivot) 개수와 연결됩니다.
  • 영차원(nullity)은 자유변수(free variable) 개수와 연결됩니다.
  • 행계수(row rank)와 열계수(column rank)는 항상 같습니다.
  • 선형변환 T: R^n -> R^m 또는 m x n 행렬 A에 대해
n = rank(A) + nullity(A)

가 성립합니다. 즉 정의역 차원은 살아남는 방향 수와 사라지는 방향 수의 합으로 분해됩니다.

이 식은 단순 공식이 아니라, 입력 자유도가 "살아남는 부분"과 "사라지는 부분"으로 나뉜다는 뜻입니다.

자주 하는 오해

계수를 그냥 0이 아닌 행 수로 외우기

그렇게 외우면 구조적 의미가 남지 않습니다. 계수는 독립적인 출력 방향 수입니다.

영차원은 부가 개념이라고 생각하기

영차원(nullity)은 정보 손실 방향 수를 말해 줍니다. 차원축소와 압축을 이해하려면 매우 중요합니다.

열 개수나 행 개수만 보면 계수를 알 수 있다고 생각하기

중복과 종속 관계 때문에 실제 계수는 더 작을 수 있습니다. 구조를 봐야 합니다.

연습 또는 확장

다음 질문을 생각해 보세요.

  1. 3 x 3 행렬인데 계수(rank)가 2라면 무엇을 뜻하는가?
  2. 입력 차원이 5이고 계수가 3이면 영차원(nullity)은 얼마인가?
  3. 영차원이 크다는 것은 데이터 압축이나 표현 관점에서 어떤 의미를 가지는가?

마무리

이번 글에서는 계수(rank)와 영차원(nullity)을 정리했습니다.

  • 계수는 독립적으로 살아남는 출력 방향 수입니다.
  • 영차원은 0으로 사라지는 입력 방향 수입니다.
  • 둘을 더하면 원래 입력 차원이 됩니다.
  • 이 관점은 직교(orthogonality), 정사영(projection), 최소제곱(least squares)으로 이어집니다.

다음 글에서는 직교와 정사영을 통해 "가장 가까운 근사"가 어떻게 만들어지는지 보겠습니다.

💬 댓글

이 글에 대한 의견을 남겨주세요