콘텐츠로 바로가기

Linear Algebra & Data Geometry

고차원 데이터의 구조를 체계적으로 다루는 선형대수학과, 이를 공간적 관점에서 해석하는 데이터 기하학을 다루는 학습 노드입니다.

sys.entry
M

Me

hyunyoun's Blog

posts6 min read

1. Overview

선형대수 및 데이터 기하학(Linear Algebra & Data Geometry, LADG)은 다차원 공간 상의 데이터를 선형 결합과 변환을 통해 체계적으로 분석하는 학문입니다.

컴퓨터 그래픽스의 좌표 변환, 머신러닝의 차원 축소(PCA), 검색 엔진의 랭킹 알고리즘(PageRank) 등 현대 컴퓨팅의 거의 모든 대규모 수치 연산은 선형대수의 행렬 계산을 기반으로 합니다. 학습자는 단순한 수식 계산을 넘어 데이터가 가진 기하학적 의미(투영, 회전, 변환)를 파악하고, 고차원 데이터 공간을 수학적으로 명확하게 설계하고 최적화하는 역량을 습득합니다.

2. Scope & Boundaries

In-Scope

  • 벡터 공간과 부분 공간: 기저(Basis), 차원(Dimension), 랭크(Rank), 선형 독립성 정의
  • 선형 변환 및 행렬: 좌표계 변환, 투영(Projection), 가역성(Invertibility) 및 행렬 연산 법칙
  • 고유값과 분해 기법: 고유값 분석(Eigen-decomposition), LU/QR 분해, 특이값 분해(SVD)
  • 정보 기하학: 주성분 분석(PCA)의 기하학적 원리, 텐서(Tensor) 구조의 기초

Out-of-Scope

  • 추상 대수학의 순수 대수적 군/환/체 이론 (일반 수학 영역)
  • 비선형 최적화 및 편미분 방정식 (11. Machine Learning 및 수치해석 영역으로 위임)
  • 단순한 비즈니스 통계 지표 (04. PSI 영역으로 위임)

Boundaries

  • LADG vs. Graphics: CS2023(DS/MS) 및 GV 지침에 따르면 LADG는 '공간의 수학적 모델'을 정의하며, 그래픽스(12)는 이를 이용해 '화면상의 래스터라이징 및 렌더링'을 물리적 환경에 맞게 구현합니다.

3. Counterexample

  • 복잡한 행렬 곱셈이나 역행렬을 손으로 빠르게 계산하는 것만이 LADG 학습이 아닙니다. 왜 특정 행렬의 Determinant(행렬식)가 0이 되는 것이 데이터 공간 측면에서 **'정보의 손실(Rank Deficiency)'**이나 **'시스템의 비가역성'**을 의미하는지 기하학적으로 해석하고 설명할 수 있어야 학습이 완료된 것입니다.

4. Prerequisites

  • 이산 구조 및 모델링 (Basic): 함수와 사상의 기본 개념이 선형 변환(Linear Transformation)을 함수의 확장으로 이해하는 데 필수적입니다. (01. Discrete Structures)

5. Learning Map

  1. Vector & Basis: 데이터를 고차원 벡터로 표현하고, 그들이 이루는 공간의 기본 틀(Basis)을 정의합니다.
  2. Matrix Logic: 행렬을 단순한 데이터 셋이 아닌 '공간 사이의 선형 변환기(Operator)'로 인식합니다.
  3. Algebraic Decomposition: 복잡한 행렬 연산을 LU, QR, Eigen 분해를 통해 처리 효율성과 정보의 핵심(Principal)을 추출합니다.
  4. Data Geometry & Dim Reduction: 고차원 데이터의 기하학적 패턴을 포착하고 PCA, SVD를 통해 유의미한 저차원을 도출합니다.

6. Learning Topics

Basic

Core: 벡터와 내적의 기하학 (Vectors & Inner Products)

  • Why to Learn: 데이터를 공간상의 점이나 방향으로 인식하여 유사도(Distance)를 측정하기 위한 기초입니다.
  • What to Learn:
    • 벡터의 덧셈, 스칼라 곱, 노름(Norm, L1/L2) 정의
    • 내적(Dot Product)을 통한 투영(Projection)과 각도 계산
    • 코사인 유사도의 수학적 배경
  • How to Learn:
    • 두 텍스트 문서의 벡터 표현(TF-IDF 기초)을 통한 유사도 측정 연습
    • 특정 벡터를 기준 축에 투영하는 연산 실습
  • Implement: NumPy 또는 기초 라이브러리를 활용한 벡터 연산 기초 모듈

Core: 시스템 선형 방정식과 랭크 (Linear Systems & Rank)

  • Why to Learn: 자원 할당이나 네트워크 흐름 분석 시 해의 존재 여부와 시스템의 안정성을 판단하기 위함입니다.
  • What to Learn:
    • 가우스 소거법(Gaussian Elimination)과 해의 구조(Unique, Infinite, None)
    • 행렬의 랭크(Rank)와 영공간(Null Space)의 의미
    • 차원 정리(Rank-Nullity Theorem)
  • How to Learn:
    • 노드 간 전이 확률이 포함된 시스템 방정식을 세우고 솔버로 풀기
    • 데이터의 중복성(Linear Dependency)을 랭크로 판별하는 실습
  • Implement: 역행렬 없이 가우스 소거법(Pivot 기반)으로 해를 구하는 알고리즘 루틴

Practical

Core: 고유값 분석과 행렬 분해 (Eigen-Analysis & Decomposition)

  • Why to Learn: 대규모 데이터 처리의 효율성을 극대화하고, 시스템의 주요 특징(Top Eigenvector)을 추출하기 위해서입니다.
  • What to Learn:
    • 고유값(Eigenvalue)과 고유벡터(Eigenvector)의 기하학적 정의
    • LU 및 QR 분해를 통한 수치 해석적 연산 최적화
    • 대각화(Diagonalization)와 거듭제곱 연산 속도 향상
  • How to Learn:
    • 구글의 PageRank 알고리즘을 고유벡터 관점에서 분석
    • 행렬 분해를 통한 이미지 압축(Low-rank Approximation) 원리 학습
  • Implement: 고유값 분석 라이브러리를 이용한 간단한 추천 엔진 프로토타입

Advanced

Core: 특이값 분해와 데이터 매니폴드 (SVD & Data Manifolds)

  • Why to Learn: 정방 행렬이 아닌 모든 고차원 데이터 셋에 대해 잡음을 제거하고 핵심 특징 공간을 찾기 위함입니다.
  • What to Learn:
    • SVD(Singular Value Decomposition)의 3가지 행렬(U, Σ, V*) 의미
    • PCA(Principal Component Analysis)와 공분산 행렬의 관계
    • 고차원 데이터의 기하학적 왜곡(Curse of Dimensionality)과 보존
  • How to Learn:
    • 고차원 추천 데이터(Matrix Factorization)를 SVD로 분해하여 특징 상위 추출
    • PCA를 이용한 다변수 데이터의 2차원 시각화 실습
  • Implement: SVD 기반의 이미지 노이즈 제거 필터 또는 차원 축소 데이터 파이프라인

7. Terminology

Term (EN / ko, abbr) 1문장 정의 단계(기본/권장/실무/심화) 역할/맥락 관련 개념 유사/대비/함께 사용 오해 포인트 Evidence(Primary/Secondary/Industry) Flags(core/misused/legacy)
Span (생성) 주어진 벡터들의 선형 결합으로 생성할 수 있는 모든 가능한 벡터의 집합(공간)입니다. 기본 기초 정의 Vector Space Basis 단순히 '길이'로 오해함 P1:CS2023/Linear core
Orthogonality (직교성) 두 벡터의 내적이 0이 되어 서로 독립적인 방향을 가짐을 의미합니다. 추천 데이터 독립성 Projection Eigenvector 90도 각도라는 기하학적 의미에만 국한됨 SWEBOK core
Eigenvalue (고유값) 선형 변환 시 방향은 변하지 않고 크기만 변하는 특정 축에 대한 스케일링 상수입니다. 실무 특징 추출 PCA SVD 스칼라 값 자체보다 의미가 중요 Industry Docs core
SVD (특이값 분해) 모든 직사각형 행렬을 두 개의 회전 행렬과 하나의 스케일 행렬로 분해하는 기법입니다. 심화 차원 축소 Matrix Factorization PCA 정방 행렬에만 쓰인다고 오해 P4:DS-BoK core

8. References

Primary References

Secondary References

  • [Linear Algebra and Its Applications] Gilbert Strang, Wellesley-Cambridge Press — Standard curriculum reference.
  • [3Blue1Brown] Essence of Linear Algebra — Excellent visual intuition for geometry.

Industry References

  • [Google Developers] PageRank Explained — Practical application of Linear Algebra in Search.
  • [PyTorch/TensorFlow Docs] Tensors and Linear Algebra Operations — Modern hardware mapping.

9. Final Checklist

Primary Checklist

  • 고차원 데이터를 벡터 공간의 원소로 정의하고 기저 변환(Change of Basis)의 수식적/기하학적 의미를 아는가? (P1)
  • 행렬 곱을 함수 합성으로 인식하고 역행렬 유무를 Determinant와 연관 지어 판단 가능한가? (P1, P4)

Secondary Checklist

  • 고유값 분해와 SVD가 데이터 압축 및 특징 추출(Feature Extraction)에서 담당하는 역할을 설명할 수 있는가?
  • 가우스 소거법을 이용해 시스템 선형 방정식의 해의 구조(Rank 기반)를 추론 가능한가?

Industry Checklist

  • PCA를 활용하여 변수가 많은 데이터 셋에서 정보 손실을 최소화하며 차원을 축소하는 로직을 설계할 수 있는가? (SFIA)
  • 딥러닝 등의 텐서 연산 시 BroadCasting과 행렬 차원 변환의 수리적 무결성을 검토할 수 있는가?