선형대수 핵심
선형대수(Linear Algebra)는 벡터와 행렬을 다루는 수학 분야로, ML 알고리즘의 데이터 표현과 변환의 기반이 됩니다.학습 목표
- 벡터와 행렬의 기본 연산을 이해합니다.
- 내적(dot product)의 기하학적 의미를 파악합니다.
- 고유값 분해(eigendecomposition)가 PCA에서 어떻게 활용되는지 이해합니다.
- ML에서 선형대수가 사용되는 대표적인 사례를 파악합니다.
왜 중요한가
ML에서 데이터는 행렬로, 개별 데이터 포인트는 벡터로 표현됩니다. 모델 학습은 본질적으로 행렬 연산이며, PCA, SVM, 추천 시스템 등 핵심 알고리즘은 선형대수 없이는 이해할 수 없습니다.핵심 개념
벡터 (Vector)
벡터는 크기와 방향을 가진 양으로, ML에서는 하나의 데이터 포인트를 나타냅니다.- L1 노름: 각 원소의 절대값 합 → 정규화(Lasso)에서 사용
- L2 노름: 각 원소의 제곱합의 제곱근 → 정규화(Ridge)에서 사용
내적 (Dot Product)
두 벡터의 내적은 벡터 간의 유사도를 측정하는 핵심 연산입니다.행렬 (Matrix)
행렬은 벡터의 모음으로, ML에서는 전체 데이터셋을 나타냅니다.고유값과 고유벡터 (Eigenvalues & Eigenvectors)
직관: 행렬을 통한 변환에서 방향이 변하지 않는 벡터가 고유벡터이고, 그 벡터가 늘어나거나 줄어드는 비율이 고유값입니다.행렬 분해 (Matrix Decomposition)
복잡한 행렬을 단순한 행렬들의 곱으로 분해하는 기법입니다.AI/ML에서의 활용
| 알고리즘 | 사용되는 선형대수 개념 | 레퍼런스 |
|---|---|---|
| PCA | 공분산 행렬, 고유값 분해 | PCA |
| SVM | 내적, 초평면, 커널 트릭 | SVM |
| 선형 회귀 | 행렬 곱, 역행렬 (정규방정식) | 선형 회귀 |
| 추천 시스템 | 행렬 분해 (SVD) | Truncated SVD |
| KNN | 거리 계산 (노름) | KNN |
Q: 선형대수를 몰라도 scikit-learn을 사용할 수 있나요?
Q: 선형대수를 몰라도 scikit-learn을 사용할 수 있나요?
네, scikit-learn은 내부적으로 선형대수 연산을 처리합니다. 그러나 PCA의 주성분을 해석하거나 SVM의 커널을 이해하려면 기본적인 선형대수 지식이 필요합니다.
Q: NumPy와 선형대수의 관계는?
Q: NumPy와 선형대수의 관계는?
NumPy는 파이썬에서 선형대수 연산을 효율적으로 수행하는 라이브러리입니다.
np.dot, np.linalg.eig, np.linalg.svd 등이 핵심 함수입니다.체크리스트
- 벡터의 내적과 코사인 유사도를 계산할 수 있다
- L1, L2 노름의 차이를 설명할 수 있다
- 고유값과 고유벡터의 직관적 의미를 설명할 수 있다
- PCA가 고유값 분해를 어떻게 활용하는지 설명할 수 있다

