[선형대수 시리즈 14편] 기저와 차원: 표현의 최소 기준 세우기

English version

이번 글에서 다룰 내용

이 글에서는 기저(basis)와 차원(dimension)을 다룹니다.

  • 기저가 무엇인지 정의합니다.
  • 차원이 왜 "최소 축 수"라는 뜻인지 설명합니다.
  • 생성 범위(span)와 독립성(independence)이 어떻게 합쳐져 기저가 되는지 정리합니다.
  • 데이터 표현, 잠재 차원(latent dimension), 차원축소와 연결합니다.

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

  • 기저 (basis): 공간 전체를 만들 수 있으면서 중복이 없는 벡터 집합입니다.
  • 차원 (dimension): 그런 기저에 들어가는 벡터 수입니다.
  • 좌표 (coordinate): 기저를 기준으로 벡터를 수의 묶음으로 표현한 것입니다.
  • 생성 (span)과 독립 (independence): 기저를 이루는 두 핵심 조건입니다.

핵심 아이디어

이 글에서 다루는 "공간"은 벡터공간(vector space)을 뜻합니다. 특히 프로그래머가 처음 만나는 유한 차원(finite-dimensional) 벡터공간을 중심으로 설명합니다.

이전 글에서 다룬 생성 범위(span)는 "이 벡터들로 무엇을 만들 수 있는가"를, 독립성(independence)은 "벡터들 사이에 중복이 있는가"를 말해 줍니다. 이 두 조건을 동시에 만족하는 집합이 바로 기저(basis)입니다.

기저는 다음 두 조건을 동시에 만족하는 벡터 집합입니다.

  1. 공간 전체를 생성한다.
  2. 중복이 없이 선형독립이다.

즉 기저는 공간을 표현하는 최소한의 축 집합입니다. 다시 말해, 더 줄이면 공간 전체를 만들 수 없고 더 늘리면 종속이 생기는 적정 크기의 생성 집합입니다.

차원(dimension)은 그런 기저에 들어가는 벡터 수입니다. 중요한 사실은 한 벡터공간의 서로 다른 기저들은 모두 같은 개수의 벡터를 가진다는 점이고, 이 공통된 개수가 바로 차원입니다.

왜 기저가 중요한가

기저가 있으면 공간의 모든 벡터를 좌표 (coordinate)로 표현할 수 있습니다. 다시 말해, 복잡해 보이는 벡터도 "기저 벡터들을 얼마나 섞었는가"로 바꿔 말할 수 있습니다. 더 중요한 점은, 한 번 기저를 고르면 각 벡터의 좌표 표현이 유일하게 결정된다는 것입니다.

이 점은 프로그래밍에서도 중요합니다. 고차원 데이터라도 실제로는 더 적은 독립 축 위에서 움직일 수 있고, 이 사실은 차원축소(dimensionality reduction), 압축(compression), 잠재 요인(latent factor) 분석으로 이어집니다.

단계별 예시

예시 1) 2차원 평면의 기저

(1, 0)(0, 1)은 2차원 평면 전체를 생성하고 서로 독립이므로 기저입니다. 따라서 평면 차원은 2입니다.

예시 2) 다른 기저도 가능하다

(1, 1)(1, -1)도 2차원 평면의 기저가 될 수 있습니다. 즉 기저는 하나만 있는 것이 아닙니다. 하지만 어떤 기저를 쓰더라도 차원은 변하지 않습니다.

예를 들어 벡터 (3, 1)을 이 기저로 표현해 보면

(3, 1) = 2(1, 1) + 1(1, -1)

이므로 이 기저에서의 좌표(coordinate)는 (2, 1)입니다. 표준기저에서는 (3, 1)이었지만, 기저가 바뀌면 좌표 표현도 함께 바뀝니다.

예시 3) 데이터의 유효 차원

영화 추천 시스템에서 사용자를 100개 영화 평점으로 표현한다고 합시다. 겉보기에는 100차원 데이터처럼 보이지만, 실제로는 액션 선호, 로맨스 선호, 몰입형 서사 선호 같은 몇 개 독립 축으로 대부분 설명될 수 있습니다. 이때 데이터가 실제로 놓인 부분공간의 차원은 원래 표현 차원보다 더 작을 수 있습니다. 머신러닝에서 말하는 잠재 차원(latent dimension)은 보통 이런 구조를 근사적으로 찾는 개념입니다.

수학 주석

  • 기저는 공간을 생성(span)하면서 동시에 선형독립(independent)이어야 합니다.
  • 기저를 잡는 순간 모든 벡터는 좌표(coordinate)로 표현 가능합니다.
  • 좌표는 기저에 따라 바뀌지만, 차원(dimension)과 공간 자체는 바뀌지 않습니다.
  • 서로 다른 기저가 같은 개수의 벡터를 가진다는 것은 증명이 필요한 정리이며, 차원은 그 공통된 개수로 정의됩니다.

즉 기저는 추상 공간을 계산 가능한 형태로 바꿔 주는 장치입니다.

자주 하는 오해

표준기저(standard basis)만 기저라고 생각하기

표준기저는 가장 익숙한 예시일 뿐입니다. 실제로는 같은 공간에 다양한 기저를 잡을 수 있습니다.

차원을 열 개수나 데이터 컬럼 수와 같은 것으로 생각하기

겉보기 차원(ambient dimension)과 실제 자유도는 다를 수 있습니다. 컬럼이 많아도 서로 종속이면 실제 차원은 더 작습니다.

기저를 어려운 추상 개념으로만 보기

기저는 결국 "중복 없이 전체를 설명하는 최소 축"입니다. 이 직관을 잡으면 훨씬 편해집니다.

연습 또는 확장

다음 질문에 답해 보세요.

  1. (1, 0), (0, 1), (1, 1)은 평면의 기저인가? 힌트: 2차원 평면의 기저는 몇 개 벡터를 가져야 할까요?
  2. (1, 1), (2, 2)는 기저가 아닌가?
  3. 같은 평면에 여러 기저가 가능한데 차원은 왜 항상 2인가?

마무리

이번 글에서는 기저(basis)와 차원(dimension)을 정리했습니다.

  • 기저는 공간 전체를 생성하면서도 중복이 없는 집합입니다.
  • 차원은 그 기저 벡터 수입니다.
  • 기저가 있으면 벡터를 좌표(coordinate)로 표현할 수 있습니다.
  • 이 개념은 이후 부분공간(subspace), 계수(rank), 차원축소로 이어집니다.

다음 글에서는 부분공간(subspace)과 함께 열공간(column space), 영공간(null space)을 다루겠습니다.

💬 댓글

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