콘텐츠로 바로가기

Vector Spaces & Linear Maps

고차원 데이터의 수학적 공간인 벡터 공간을 정의하고, 데이터 간의 변환 규칙을 규정하는 선형 사상의 원리를 다루는 학습 노드입니다.

Article
M

Me

hyunyoun's Blog

mathematics-computing-logicmathematicscomputing-logiclinear-algebradata-geometryvector-spaceslinear-mapsmath-logic8 min read

1. Overview

벡터 공간과 선형 사상(Vector Spaces & Linear Maps, VSM)은 숫자의 단순한 나열을 넘어서, 컴퓨터가 다루는 모든 다차원 데이터(이미지, 텍스트 임베딩, 사용자 로그)를 물리적인 공간(Space) 위에 기하학적으로 배치하고 회전/이동시키는 '데이터 기하학'의 엔진입니다.

학습자는 화살표의 길이와 방향으로 정의되는 **벡터(Vector)**가 어떻게 NN차원 공간을 구성하는지 뜯어보고, 공간을 찌그러뜨리지 않고 맵핑하는 **선형 변환(Linear Transformation)**의 물리를 해부합니다. 나아가 기저(Basis) 변환을 통해 수만 차원의 복잡한 데이터를 컴퓨터가 계산하기 편한 새로운 축(Axis)으로 옮겨 버리는 직교성(Orthogonality)의 수리적 역학을 통달하여, 3D 그래픽스 엔진과 머신러닝 모델의 근간이 되는 차원 설계 역량을 확보합니다.

2. Scope & Boundaries

In-Scope

  • 벡터 기하학과 대수 (Vector Mechanics): 벡터의 덧셈과 스칼라 곱, 내적(Dot Product), 외적(Cross Product), 노름(Norm/Length).
  • 벡터 공간 역학 (Vector Spaces): 선형 결합(Linear Combination), 선형 독립(Linear Independence), 생성(Span), 기저(Basis), 차원(Dimension).
  • 선형 사상과 행렬 (Linear Maps): 선형 변환(Linear Transformation)의 정의, 행렬 표기법, 커널(Kernel)과 상(Image), 랭크-널리티 정리(Rank-Nullity Theorem).
  • 직교성과 투영 (Orthogonality & Projection): 직교 벡터, 정규 직교 기저(Orthonormal Basis), 벡터의 직교 투영(Orthogonal Projection), 그람-슈미트 직교화.

Out-of-Scope

  • 고유값과 고유벡터 분해: 선형 변환의 불변 축을 찾는 고유값 분해(Eigendecomposition) \rightarrow 01-03-02. Matrix Calculus & Eigendecomposition 영역.
  • PCA와 차원 축소 알고리즘: 직교 투영을 활용해 데이터의 분산을 최대화하는 주성분 분석 \rightarrow 01-03-03. Dimensionality Reduction & PCA 영역.

Boundaries

  • VSM vs. Discrete Math (01-01): 이산 수학(01-01)이 0과 1, 노드와 엣지처럼 끊어져 있는 데이터 구조를 다룬다면, VSM은 무한히 연속된 실수(Real Number) 좌표계 위에서 텐서(Tensor)들의 연속적이고 기하학적인 움직임을 다룹니다.

3. Counterexample

  • 차원의 저주 맹신 (Curse of Dimensionality Fallacy): "피처(Feature)가 1만 개니까 벡터 공간도 1만 차원이겠지"라고 순진하게 믿고 모든 차원을 메모리에 올리는 행위. 선형 결합(Linear Combination)과 선형 독립(Linear Independence)의 물리를 모르면, 실제로는 단 3개의 기저(Basis)만으로 표현 가능한 3차원 짜리 얇은 평면(Subspace) 데이터조차 1만 차원의 빈 공간을 유지하느라 GPU 메모리 수십 GB를 낭비(OOM)하게 됩니다.
  • 내적의 기하학적 의미 증발 (Dot Product Ignorance): 코사인 유사도(Cosine Similarity)를 짤 때 공식을 외워서 쓰기만 하고, 내적(Dot Product)이 "한 벡터를 다른 벡터의 그림자(Projection) 길이로 환산하여 곱하는 물리적 타격량"임을 이해하지 못하는 현상. 이로 인해 벡터의 노름(정규화) 과정을 누락하여, 추천 시스템에서 엉뚱한 스팸 유저가 최상단에 노출되는 모델링 붕괴가 발생합니다.

4. Prerequisites

  • 기초 기하학 (Basic): 2차원 x,yx, y 좌표계와 삼각비(코사인, 사인)에 대한 직관적 이해가 필수입니다.
  • 함수와 사상 (Recommended): 정의역에서 공역으로 데이터를 쏘는 매핑(Mapping)의 개념을 알면 선형 변환을 흡수하기 빠릅니다. (01-01-02 FAM)

5. Learning Map

Sequence Core Cluster Objective & Description Evidence (BoK)
1 Vector Physics 크기와 방향을 가진 물리적 화살표가 내적과 외적을 통해 어떻게 서로의 위상을 측정하는지 쥡니다. P1
2 Space & Basis 허공에 떠 있는 벡터들을 기준점(Origin)과 축(Basis)이라는 구조물에 엮어 차원(Dimension)을 규정합니다. P5
3 Linear Transformation 데이터를 담은 공간 전체를 찌그러뜨리지 않고 늘리거나 회전시키는 맵핑의 마법을 행렬로 번역합니다. Industry<3d>
4 Orthogonality 삐뚤어진 축을 수직으로 깎아내어(직교), 좌표 연산에서 서로 간섭하지 않는 완벽히 독립적인 축을 구축합니다. Industry

6. Learning Topics

Basic

Core Topic 01: 벡터 기하학과 노름 (Vector Physics & Norm)

  • Why to Learn: 넷플릭스의 영화 평가 점수나 자연어 텍스트 문장을 컴퓨터가 알아듣는 공간상의 화살표(Embedding)로 바꾸고, 그 화살표들 간의 거리를 재기 위함입니다.
  • What to Learn:
    • Concepts: 벡터(Vector), 스칼라(Scalar), 노름(Norm, L1/L2L1/L2 Distance).
    • Skills: 벡터의 덧셈/뺄셈, 스칼라 곱, 벡터 공간의 기하학적 시각화.
    • Tools: Python numpy 배열 (1D Tensor).
    • Trade-offs: 데이터를 벡터 하나로 뭉뚱그려 표현했을 때 얻는 압도적 연산 속도 vs 원본 데이터가 가진 비선형적 특성이나 계층적 뉘앙스가 선형 화살표 하나로 짓눌리며 발생하는 정보의 손실(Information Loss).
  • How to Learn:
    • 1단계: 유저 A의 선호도 [4,5,1][4, 5, 1]과 유저 B의 선호도 [3,4,1][3, 4, 1] 벡터의 거리를 L2L2 노름(유클리디안 거리)과 L1L1 노름(맨해튼 거리)으로 각각 구했을 때, 아웃라이어(Outlier)가 물리적 거리에 미치는 충격을 해부합니다.
    • 2단계: "벡터의 뺄셈 vu\mathbf{v} - \mathbf{u}u\mathbf{u}의 끝점에서 v\mathbf{v}의 끝점으로 향하는 물리적 이동 벡터"라는 기하학적 역학을 3D 게임 캐릭터의 이동 델타(Delta) 계산에 매핑해 봅니다.
  • Implement: 두 유저의 평점 1D 배열 배열 2개를 인자로 받아, 유클리디안 거리 연산을 수동 수식과 np.linalg.norm으로 100만 번 돌린 뒤 CPU 사이클 비용(Tick) 차이를 측정하는 프로파일러.

Core Topic 02: 내적, 외적 그리고 코사인 유사도 (Dot & Cross Product)

  • Why to Learn: "이 유저가 저 유저와 얼마나 비슷한가(내적)"를 판단하거나, "3D 게임 엔진에서 총알이 벽의 수직 방향으로 맞았는가(외적)"를 실시간으로 물리 연산하기 위해서입니다.
  • What to Learn:
    • Concepts: 내적(Dot Product, ab\mathbf{a} \cdot \mathbf{b}), 외적(Cross Product, a×b\mathbf{a} \times \mathbf{b}).
    • Skills: 코사인 유사도(Cosine Similarity), 수직 벡터(Orthogonal Vector, ab=0\mathbf{a} \cdot \mathbf{b} = 0), 법선 벡터(Normal Vector).
    • Tools: 선형대수학 계산 라이브러리.
    • Trade-offs: 길이를 무시하고 두 벡터가 가리키는 순수 '방향의 일치도'만 보는 코사인 유사도의 텍스트 매칭 위력 vs 벡터의 '절대적 크기(Magnitude)'가 중요한 매출액 유사도 분석에서는 맹점으로 작용하는 한계.
  • How to Learn:
    • 1단계: ab=abcosθ\mathbf{a} \cdot \mathbf{b} = \|\mathbf{a}\|\|\mathbf{b}\|\cos\theta 라는 공식을 해부하여, 두 벡터가 직교(90도)할 때 내적이 왜 0이 되며, 방향이 100% 일치할 때 왜 값이 최대가 되는지 투영(Projection) 물리로 뜯어봅니다.
    • 2단계: 3차원 그래픽스에서 외적 a×b\mathbf{a} \times \mathbf{b}가 두 벡터가 이루는 평면을 뚫고 솟아오르는 수직(Normal) 벡터를 만들어내며, 이것이 조명(Lighting) 반사광을 계산하는 핵심 수리임을 분석합니다.
  • Implement: 1×5121만 \times 512 차원의 텍스트 임베딩 매트릭스를 입력받아, 특정 쿼리 벡터와의 코사인 유사도를 행렬 곱(Matrix Multiplication) 1방으로 0.01초 만에 뽑아내어 랭킹을 매기는 미니 검색 엔진 로직 구현.

Practical

Core Topic 03: 선형 결합, 기저 그리고 차원 (Basis & Dimension)

  • Why to Learn: 100차원의 더미 데이터 뭉치 속에서, 진짜 의미 있는 독립적인 축(Basis)이 몇 개인지 파악하여 압축 가능한 진짜 차원(Rank)을 찾아내기 위함입니다.
  • What to Learn:
    • Concepts: 선형 결합(Linear Combination), 생성(Span), 선형 독립(Linear Independence).
    • Skills: 기저(Basis), 차원(Dimension), 가우시안 소거법(Gaussian Elimination).
    • Tools: 행렬의 기약 행 사다리꼴(RREF).
    • Trade-offs: 모든 데이터를 표준 기저(Standard Basis, [1,0],[0,1][1,0], [0,1])로 표현하는 직관적 편리함 vs 데이터의 특성에 맞춰 기저 축 자체를 회전시켜버렸을 때 얻는 압도적인 데이터 압축률과 계산 속도 이득.
  • How to Learn:
    • 1단계: 벡터 v3\mathbf{v_3}v1+2v2\mathbf{v_1} + 2\mathbf{v_2}로 표현될 수 있다면, v3\mathbf{v_3}는 새로운 차원을 개척하지 못하는 잉여(Dependent) 쓰레기 데이터임을 증명하고 선형 독립의 조건을 해부합니다.
    • 2단계: 선형 독립인 벡터들의 집합이 공간 전체를 생성(Span)할 때, 그 집합이 왜 그 공간의 뼈대(Basis)가 되며 벡터의 개수가 차원(Dimension)이 되는지 위상적 역학을 뜯어봅니다.
  • Implement: 무작위 3D 벡터 5개가 들어있는 리스트를 받아, 그람-슈미트 과정(Gram-Schmidt) 또는 랭크(Rank) 검사를 통해 이들이 실제로 3차원 공간 전체를 Span하는지, 아니면 2차원 평면에 갇힌 종이 쪼가리인지 판별하는 기하학 탐지기.

Advanced

Core Topic 04: 선형 변환과 랭크-널리티 정리 (Linear Transformations)

  • Why to Learn: 3D 모델을 화면에 그리기 위해 확대/축소/회전(Matrix Multiplication)시키거나, 고차원 데이터를 저차원으로 뭉개버리는 블랙박스 맵핑의 구조적 결함을 수학적으로 예측하기 위해서입니다.
  • What to Learn:
    • Concepts: 선형 변환(Linear Map, T(x)=AxT(\mathbf{x}) = A\mathbf{x}), 커널/영공간(Kernel/Null Space), 상(Image/Column Space).
    • Skills: 변환 행렬(Transformation Matrix), 랭크-널리티 정리(Rank-Nullity Theorem).
    • Tools: 2D/3D 아핀 변환(Affine Transformation).
    • Trade-offs: 선형 변환(T(x+y)=T(x)+T(y)T(\mathbf{x}+\mathbf{y}) = T(\mathbf{x}) + T(\mathbf{y}))을 통해 모든 기하학적 왜곡을 행렬 하나로 완벽히 제어하는 계산적 축복 vs 딥러닝에서 요구하는 찌그러짐(비선형성, Non-linearity)을 절대 만들어낼 수 없는 수리적 강직성.
  • How to Learn:
    • 1단계: 2D 이미지의 픽셀 좌표 x\mathbf{x}에 행렬 A=[cosθsinθsinθcosθ]A = \begin{bmatrix} \cos\theta & -\sin\theta \\ \sin\theta & \cos\theta \end{bmatrix}를 곱했을 때, 원점을 기준으로 θ\theta만큼 회전하는 완벽한 기하학적 맵핑을 뜯어봅니다.
    • 2단계: 3차원 공간(n=3n=3)을 2차원 평면(Rank=2Rank=2)으로 찌그러뜨리는 변환(그림자)을 할 때, 잃어버린 1차원 분량의 데이터는 모두 원점(0,0)으로 블랙홀처럼 빨려 들어가는 커널(Nullity=1Nullity=1)이 됨을 랭크-널리티 정리로 해부합니다.
  • Implement: 2D 점들의 배열을 받아, 전단 변환(Shear) 행렬과 투영(Projection) 행렬을 곱하여 상(Image)의 좌표를 구하고, 동시에 어떤 입력 점들이 영점(0,00, 0)으로 박살 났는지(Kernel)를 O(N3)O(N^3) 가우스 소거법으로 추적하는 변환 파이프라인.

7. Terminology

Term (EN / ko, abbr) 1문장 정의 단계(기본/권장/실무/심화) 역할/맥락 관련 개념 유사/대비/함께 사용 오해 포인트 Evidence(Primary/Secondary/Industry) Flags(core)
Vector Space 벡터들이 덧셈과 스칼라 곱에 대해 닫혀 있는 수학적 공간 물리입니다. 기본 영토 정의 Field Set 단순히 '배열'로 오해 P1:CS2023/LinearAlgebra core
Linear Independence 어떤 벡터도 다른 벡터들의 선형 조합으로 표현될 수 없는 정보의 고유성 상태입니다. 추천 독립성 판단 Basis Dependency '수직'과만 혼동 P1:CS2023/LinearAlgebra core
Basis (기저) 선형 독립이면서 해당 공간 전체를 생성할 수 있는 벡터들의 최소 집합입니다. 실무 좌표계 정의 Dimension Coordinates '기초'라는 모호한 의미로 오해 P1:CS2023/LinearAlgebra core
Rank 행렬이나 선형 변환을 통해 도달할 수 있는 이미지 공간의 물리적 차원 수입니다. 심화 유효 정보량 Nullity Matrix 행렬의 '행 수'와 혼동 P1:CS2023/LinearAlgebra core

8. References

Primary

Secondary

  • [Linear Algebra and Its Applications] Gilbert Strang — The industry standard pedagogical text.
  • [Linear Algebra Done Right] Sheldon Axler — Theoretical focus on linear maps.

Industry

  • [Computer Graphics: Principles and Practice] — VLM in 3D rendering.
  • [Google PageRank Math Foundations] — VLM in network ranking.

9. Final Checklist

Primary

  • 특정 벡터 집합이 주어졌을 때, 선형 독립 여부를 판별하여 해당 공간의 실제 '차원(Dimension)'을 물리적으로 도출할 수 있는 가? (P1)
  • 랭크-차원 정리(Rank-Nullity Theorem)를 사용하여 선형 변환 시 소멸되는 정보량(Nullity)을 수학적으로 계산 가능한가? (P1)

Secondary

  • 기저 변환(Change of Basis)이 일어날 때, 벡터의 실제 위치는 변하지 않지만 '좌표값'이 어떻게 물리적으로 재정의되는지 설명할 수 있는 가?
  • 선형 사상(Linear Map)의 결과가 왜 행렬 곱셈과 완벽한 일대일 대응 관계에 있는지 논리적으로 소통 가능한가?

Industry

  • 그래픽스 렌더링 파이프라인에서 '모델 좌표계'에서 '월드 좌표계'로의 변환을 선형 사상 관점에서 설계할 수 있는 가? (SFIA)
  • 데이터 전처리 단계에서 상관관계가 높은 다차원 정보를 결합하여, 유효 기저(Basis)만 남기는 '차원 축소'의 타당성을 수학적으로 입증할 수 있는 가?

Math Logic / Linear Algebra & Data Geometry

1 / 5