intro
처음은 행렬 A 의 열을 이용한 곱셈 Ax 와 AB 로 시작한다.
행렬의 곱셈은 선형대수학의 응용에서 가장 기본이 되는 개념이다.
먼저 가장 기본적이고 중요한 다섯 가지 문제의 소개
- Ax = b
- Ax = lamda x
- av = sigma u
- ||Ax||^2 / ||x||^2 의 최소화
- 행렬 A의 분해
위 다섯 가지 문제는 단순한 계산 문제로 보인다.
- Ax = b 를 만족하는 x 를 구하라.
- Ax = lamda x 를 만족하는 x와 lamda 를 구하라
- av = sigma u 를 만족하는 v, u, sigma 를 구하라
- ||Ax||^2 / ||x||^2 의 최소화
- 행렬 A를 열과 행의 곱으로 분해하라.
하지만 목적은 단순히 계산하는 것이 아닌 문제에 함축된 수학 개념을 이해하고, 이를 데이터 분석에 실질적으로 활용하는 데 있다.
방정식 Ax=b 의 해 x가 존재한다면 그 해를 알고 싶을 것이다.
벡터 b 는 A의 열공간의 원소인가?
이렇게 물어본다면 전혀 다른 문제로 느껴질 것이다. 공간이라는 용어를 알려면 또 다른 수학적 지식이 필요하다.
고유 방정식 Ax = lamda x 는 Ax = b 와는 상당히 다른 형태이다. 여기에는 벡터 b가 없다. 즉 행렬 A 만을 이용해 이 방정식의 해를 계산해야 한다. 다시 말하면 Ax 와 x가 같은 방향인 경우를 찾는 것이다.
그 방향을 찾아 행렬 A와 관련된 복잡한 문제를 단순하게 변형하고자 한다. 예를 들어 벡터 A^2*x 는 lamda^2*x 로 변형되고, 미분방정식에서 생성되는 행렬 e^At 은 x에 단순히 e^(lamda*t) 를 곱하는 문제로 변형된다.
모든 x와 lamda 를 안다면 어떤 선형 문제라도 풀 수 있다.
방정식 Av = sigma u 는 고윳값 문제와 비슷해 보이지만 다른 문제이다. 두 벡터 v 와 u 그리고 행렬 A가 있다고 하자. 행렬 A는 대부분 정사각행렬이 아니며 데이터로 가득 차 있다. 이 데이터 행렬의 어떤 부분이 중요할까?
특잇값 분해 Singular Value Decomposition, SVD) 는 가장 간단한 표현 방법인 simga*u*v^T 를 찾는다. 이 각각은 모두 행렬이다. 이 모든 행렬은 직교벡터로 만들어진다. 그러므로 데이터 과학은 SVD 에서 선형 대수학과 연결된다. simga*u*v^T를 찾는 것은 주성분 분석 Principal Component Analysis, PCA 의 목적이다.
최소화와 행렬 분해는 기본적인 응용 문제이다. 이 두 문제는 특이벡터 v, u 와 밀접한 관계가 있다. 최소 제곱에서 최적의 x를 구하고, PCA 에서 주성분인 v1 를 계산하는 것은 데이터 적합의 대수적 문제라고 할 수 있다.