Analytic Geometry
데이터사이언스대학원 Bootcamp 3일차에는 교재의 해석기하학 챕터(Chapter 3)를 다뤘다. 이번 장에서는 앞서 배운 내용들에 대한 기하학적 해석들을 살펴본다. Geometric vector를 이용해서 길이, 거리, 두 벡터간 각도를 계산할 수 있는데, 이를 위해서 아래 내용들부터 살펴보자.
3.1 Norms
Norm은 벡터 공간을 input으로 하고 output으로 음이 아닌 실수를 내뱉는 함수이다. 링크에 나온의 세가지 조건을 만족해야 한다. 대표적으로 l1-norm과 l2-norm이 있는데 l2-norm은 Euclidean distance라고 부르기도 한다.
3.2 Inner Products
벡터의 길이 또는 두 벡터 사이의 각도에 대한 직관적인 이해를 위해서 inner product 개념이 활용된다. Inner product로 두 벡터가 서로 orthogonal한지 확인할 수 있다. 우선 inner product의 대표격인 dot product부터 살펴보자.
3.2.1 Dot Product
Dot product 또는 스칼라곱은 유클리드 공간의 두 벡터로부터 실수 스칼라를 얻는 연산이다.
3.2.2 General Inner Products
먼저, linear mapping 개념에 더해서 bilinear mapping 개념을 살펴본다. Bilinear map은 두개의 벡터 공간을 input으로 받아 새로운 벡터 공간을 뱉어내는 함수이다.
Symmetric
교환에 대하여 불변
Positive definite
0 벡터를 제외한 벡터 공간을 input으로 해서 같은 벡터로 bilinear mapping을 해서 항상 0보다 크면 bilinear map은 positive definite이다. 두개 argument 모두 영벡터인 경우에만 0이 나온다.
최종적으로 일반적인 inner product는 positive definite, symmetric한 bilinear mapping으로 같이 정의할 수 있다.
3.2.3 Symmetric, Positive (Definite Matrices)[https://en.wikipedia.org/wiki/Definite_symmetric_matrix]
n X n 실수 행렬 A가 symmetric, postive definite이고 <x, y> = 이면 벡터 공간 V와 V의 ordered basis B에 대하여 <·,·>: V x V → R은 inner product이다. x̂(x hat)과 ŷ(y hat)은 basis B에 대한 x, y 좌표이다.
3.3 Lengths and Distances
길이는 inner product에 루트를 씌어준 것, 즉 norm으로 정의할 수 있다. 하지만 모든 norm이 inner product로 유도되는 것은 아니라는 점에 유의하자. Inner product에 따라서 길이가 달라질 수 있다. 두 벡터 간 거리는 두 벡터를 뺀 것의 norm으로 정의할 수 있다.
3.4 Angles and Orthogonality
두 subspace 간 각도는 inner product를 이용해서 정의할 수 있다. 각도는 방향이 얼마나 유사한지를 나타낸다. 비슷할 수록 각도는 0에 가깝다.
두 벡터를 argument로 하는 inner product가 0 일 때 orthogonal하다고 한다. 특별히 두 벡터의 norm이 1인 경우는 orthonormal하다고 한다.
Orthogonal Matrix는 transpose와 곱해서 identity matrix가 나오는 square matrix로 정의한다. 이는 을 의미한다.
3.5 Orthonormal Basis
n-dimensional vector space에서 n개의 basis 벡터들이 서로 orthogonal하고 길이가 1인 경우이다.
3.6 Orthogonal Complement
D-dimensional vector space V는 M-dimensional subspace U와 그 (D-M)-dimensional orthogonal complement로 나타낼 수 있다. U와 그 orthogonal complement의 교집합의 원소는 영벡터 뿐이다.
3.8 Orthogonal Projections
앞서 vector space V를 어떤 subspace U와 그 orthogonal complement로 표현할 수 있다는 것을 알았다. 이를 이용해서 V에 속하는 벡터 x를 U에 projection할 수 있다. U의 ordered basis B와 B의 각 원소의 coordinate을 표현하는 λ를 행렬곱하면 x를 projection한 결과를 얻을 수 있다. 우리가 관심 있는 부분은 λ이다. (x - Bλ) = 0(B^TB)^{-1}B^TxB^TB$$의 역행렬이 존재한다. 따라서 λ를 구할 수 있다.