모든 m×n 행렬 A에서 4개의 부분공간은 다음과 같다. - 2개의 Rm 부분공간 - 2개의 Rn 부분공간
Ex)
[Counting Law] r개의 독립인 일차방정식으로 이뤄진 Ax = 0에는 일차독립인 해가 n - r개 존재한다. (일차독립은 Ax = 0의 해가 단 하나만 존재함을 의미)
😶Graph
위 그래프는 5개의 edge와 4개의 vertex를 갖는다.
영공간 N(A) : 영공간을 찾기위해 5개의 방정식에서 b=0으로 두고 계산했을 때, 4개의 미지수 x1, x2, x3, x4는 모두 같은 값 c를 갖는다. 따라서 모든 벡터 x = (c,c,c,c)는 Ax = 0의 해가 된다. 이 영공간은 R4에서 직선으로 - 특수해 x = (1,1,1,1)은 영공간 N(A)의 기저(basis)이고 rank = 1(∵직선)이다.
열공간 C(A): r = 4 - 1 = 3개의 일차독립인 열이 존재한다. 아래 3개의 열은 A의 열공간의 기저(basis of column space)이다. A의 1, 2, 3열은 일차독립(linearly independent)이며 4열은 다른 3열의 일차결합(linear combination)이다.
행공간 C(AT): column과 마찬가지로 rank = 3이지만, 처음 3개의 행은 일차독립이 아니다.(∵3행 = 2행 - 1행) 처음으로 3개의 일차독립이 되는 행은 1, 2, 4행이다. - 1, 2, 4행들은 행공간의 기저이다.
좌영공간 N(AT): ATy = 0의 해를 구해보자. 행의 일차결합은 0이며 이미 3행이 2행에서 1행을 뺀 것을 알고 있기에 하나의 해는 y = (1, -1, 1, 0, 0)이다. 또 하나의 y는 y = (0, 0, -1, 1, -1)로 이 해는 ATy = 0의 일차독립인 해이다. 따라서 좌영공간 N(AT)의 차원은 m - r = 5 - 3 = 2이다. 따라서 이 2개의 y는 좌영공간의 기저(basis of left nullspace)이다.
▶ A의 행공간 C(A)의 차원: r = 3 ▶ A의 열공간 C(AT)의 차원: r = 3 ▶ A의 영공간 N(A)의 차원: n - r = 1 ▶ AT의 영공간 N(AT)의 차원: m - r = 2
1.3.1 AB와 A + B의 rank
행렬을 곱할 때, rank가 증가할 수 있는데 이는 column space와 row space에서 확인할 수 있다. 또한, rank가 감소하지 않는 특별한 상황도 존재하며 이를 통해 AB의 rank를 알 수 있다.
rank의 주요명제 4. mxr행렬 A, rxn행렬 B의 rank가 모두 r이라면, AB의 rank도 r이라는 의미.
명제 1. : AB의 열공간과 행공간에 관한 내용 C(AB)는 C(A)에 포함된다. C((AB)T)는 C(BT)에 포함된다. - 1.1절에서 언급했듯, rank(행) = rank(열)이다. - 즉, 행 또는 열을 이용한다면 행렬곱셈인 AB는 rank를 증가시킬 수 없다!
명제 2. : A + B의 각 열은 A의 열과 B의 열의 합이다. rank(A + B) ≤ rank(A) + rank(B) 는 항상 참이다. - 이는 C(A)와 C(B)의 기저의 결합을 의미한다.
rank(A + B) = rank(A) + rank(B) 는 항상 참이 아니다. - 이 명제는 A = B = I 일 때, 거짓이다.
명제 3. : A와 ATA에 모두 n개의 열이 있다. 두 행렬은 모두 영공간이 같다. 따라서 두 행렬에서 n - r의 값은 같고 rank는 모두 r이 된다. - 또한 rank(AT) ≤ rank(ATA) = rank(A)이다.
😶 vector space - linear space라고도 불리며 이 공간안에 정의된 원소를 벡터(vector)라 부른다. - vector space는 집합 V의 원소에 대해 정의되는 덧셈, 실수배연산이 만족될 때 V를 벡터공간(선형공간)이라 하며 V의 원소를 벡터라 부른다.
😶subspace - 벡터공간의 부분집합이 벡터공간구조를 가질 때, 그 부분집합을 부분공간이라 부른다.
😶Euclidean space - vector space Rn에 대해 벡터의 크기 norm을 정의한 공간 - 이 공간에서는 유클리드 기하가 성립하며 이 정의를 이용해 두 점 사이의 거리나 선분의 길이를 구할 수 있다.
😶 (standard) inner product - v·w 또는 <v, w>로 표현한다. - v·w = v1w1 + v2w2 + ... + vnwn = vTw = wTv로 표현된다.
1.1행렬A의 열을 이용한 곱셈Ax
Ax = x₁a₁ + x₂a₂로 표현가능하다. - 즉, Ax는 행렬 A의 열의 일차결합으로 이는 행렬 A의 column space로 이어진다. - 이때, x₁과 x₂는 실수이며, 이 벡터공간은 임의의 벡터 x에 대해 모든 Ax를 포함한다.
cf. a₁, a₂, a₃은 서로 독립(independent)이다.
즉, (x₁ , x₂)가 Ax = b의 해라면, b = (b₁ , b₂ , b₃)은 행렬 A의 column space C(A)의 원소이다.
또한, n×n 가역행렬에 대해 Ax = b의 유일 해는 x = A⁻¹b이며, 이때 가역행렬의 열의 일차결합 즉, column space는 Rⁿ과 같다.
1.1.1행렬A의 독립인 열과 랭크
행렬 A의 기저(basis)를 찾을 수 있고, A를 두 행렬의 곱셈 C × R로 분해할 수 있을 때 최종목표: 행렬 A에서 행렬 C를 바로 찾는 것
A의 n개 열로 찾을 수 있는 행렬 C (이때, 가능한 많은 C의 열이 일차독립이어야 한다.) 이때, subspace의 basis는 일차독립인 벡터로 이루어지며
※ 랭크 정리 - 일차 독립인 열과 일차독립인 행의 개수는 같다.
즉, rank = 일차독립인 열의 최대 개수 = 일차독립인 행의 최대 개수
A = CR로 표현될 때, 이때 행렬크기는 (m × n) = (m × r) (r × n)이다. 즉, 행렬 A의 계수(rank)는 행공간과 열공간의 차원을 뜻한다.
2장 Computations with Large Matrices 2.1 수치선형대수학 2.2 네 가지 최소제곱 2.3 열공간의 세 가지 기저 2.4 임의화 선형대수학
3장 Low Rank and Compressed Sensing 3.1 A의 변화에 따른 A^{-1}의 변화 3.2 고윳값 인터레이싱과 낮은 랭크 신호 3.3 급격히 감소하는 특잇값 3.4 l²+l¹에 대한 분해 알고리즘 3.5 압축 센싱과 행렬완성
4장 Special Matrices 4.1 푸리에 변환 : 이산과 연속성 4.2 이동행렬과 순환행렬 4.3 크로네커 곱 AⓧB 4.4 크로네커 합을 통한 사인과 코사인 변환 4.5 퇴플리츠 행렬과 이동 불변 필터 4.6 그래프와 라플라시안 그리고 키르히호프의 법칙 4.7 스펙트럼 방법과 K-평균을 이용한 군집화 4.8 랭크 1 행렬완성 4.9 직교 프로크루스테스 문제 4.10 거리행렬
5장 Probability and Statistics 5.1 평균, 분산, 확률 5.2 확률분포 5.3 모멘트생성함수, 누적생성함수, 통계 부등식 5.4 공분산행렬과 결합확률 5.5 다변량 정규분포와 가중최소제곱 5.6 마르코프 연쇄
6장 Optimization 6.1 최솟값 문제 : 볼록성과 뉴턴 방법 6.2 라그랑주 승수와 비용 도함수 6.3 선형 계획법, 게임이론, 쌍대성 6.4 최솟값으로 향하는 경사하강 6.5 확률적 경사하강과 ADAM
7장 Learning from Data 7.1 심층 신경망의 구조 7.2 합성곱 신경망 7.3 오차역전파와 연쇄법칙 7.4 초매개변수 : 숙명적 결정 7.5 머신러닝 세계
🧐 Purpose
😶 이 책의 목표 1. Data Science의 주요 방법론과 아이디어를 정리 2. 1.을 어떻게 선형대수학으로 표현할 지 학습 3. 1.을 어떻게 설명할 지 학습
🧐 Basic for Machine Learning
😶 ML & DL 머신러닝에서 선형대수학, 확률통계, 최적화는 마치 대들보와 같다. 본 책은 train data를 올바르게 분류, 처음보는 data까지 분류하는 "learning function"구성이 목표 보통 이런 learning function 구성을 하는 방식 중 요즘 가장 많이 사용되는 것이 바로 "Deep Learning"이다.
😶 Linear & Nonlinear Activation - Linear의 가장 큰 예시 중 Affine function의 경우, 빠르게 학습이 가능하지만 그 자체로는 너무 단순하다는 단점이 있다. 즉, 선형성이란 매우 제한이 큰 조건이다.
- Nonlinear는 입력벡터 v의 성분을 제곱(norm2)하는 형태로 나타난다.
😶 Neural Network & F(v)의 구조 딥러닝 구성 함수 F(v) = L(R(L(R(...(Lv)))))의 형태이다. - 이때, F는 함수 R과 Affine함수인 Lv = Av + b간의 합성함수이다. - A와 b는 F의 가중치로 행렬로 표현되며, train data로 학습된다. 이때, train data의 특성을 뽑기위해 가중치를 계산, 이때 가중치는 행렬성분이며 미분적분학의 "편미분"을 이용해 현재 가중치를 향상시키는 방향을 제시한다.
- 층이 많아질수록 F(v)의 정확도가 올라간다.
cf. stochastic(=random)이라는 표현은 성공이 확실성이 아닌 확률에 좌우됨을 의미한다. 즉, 큰 수의 법칙은 큰 함수의 법칙으로 확장되며 만약 모델구조가 잘 설계되고 parameter가 잘 계산된다면 성공할 확률이 높음을 대변할 수 있다.
선형대수 응용 시, 가장 기본적이고 중요한 개념이 되는 5가지 문제
1.Ax=b(만족하는 x값 구하기) 2.Ax=λx(만족하는 x와λ값 구하기) - x와 λ값을안다면, 단순 선형문제로 변하기에 어떤 선형문제라도 풀 수 있게 된다.
3.Av=σu(만족하는 v, u, σ값 구하기) - SVD는 가장 간단한 표현의 σuvT를 찾으며, Data Science는 SVD에서 선형대수학과 연결된다. - 이때, σuvT를 찾는 것은 PCA의 목적이 된다.