이번 글에서 다룰 내용
이 글에서는 계수 (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)은 정보 손실 방향 수를 말해 줍니다. 차원축소와 압축을 이해하려면 매우 중요합니다.
열 개수나 행 개수만 보면 계수를 알 수 있다고 생각하기
중복과 종속 관계 때문에 실제 계수는 더 작을 수 있습니다. 구조를 봐야 합니다.
연습 또는 확장
다음 질문을 생각해 보세요.
3 x 3행렬인데 계수(rank)가 2라면 무엇을 뜻하는가?- 입력 차원이 5이고 계수가 3이면 영차원(nullity)은 얼마인가?
- 영차원이 크다는 것은 데이터 압축이나 표현 관점에서 어떤 의미를 가지는가?
마무리
이번 글에서는 계수(rank)와 영차원(nullity)을 정리했습니다.
- 계수는 독립적으로 살아남는 출력 방향 수입니다.
- 영차원은 0으로 사라지는 입력 방향 수입니다.
- 둘을 더하면 원래 입력 차원이 됩니다.
- 이 관점은 직교(orthogonality), 정사영(projection), 최소제곱(least squares)으로 이어집니다.
다음 글에서는 직교와 정사영을 통해 "가장 가까운 근사"가 어떻게 만들어지는지 보겠습니다.
💬 댓글
이 글에 대한 의견을 남겨주세요