일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
- rnn
- Machine Learning
- 그리디
- 머신러닝
- 이진 탐색
- 삽입정렬
- LSTM
- BFS
- 다이나믹 프로그래밍
- GRU
- 큐
- 선형대수
- 선택정렬
- AI
- DFS
- 캐치카페신촌점 #캐치카페 #카페대관 #대학생 #진학사 #취준생
- RESNET
- 최단 경로
- 알고리즘
- 인공지능
- 정렬
- 퀵정렬
- 계수정렬
- pytorch
- 딥러닝
- 스택
- 재귀함수
- Today
- Total
목록Mathematics (14)
hyeonzzz's Tech Blog

그람-슈미트 직교화와 QR 분해 벡터들을 서로 수직이 되도록 하여 서로에게 영향을 주지 않도록 한다 x1과 x2는 내적을 했을 때 0이 아니므로 수직이 아니다. 두 벡터가 수직이고 길이가 1이 되도록 만드려면 어떻게 해야할까? v1을 길이가 1이 되도록 만든다 v2를 u1 위에 projection 시켜 만든 벡터를 v2에서 뺀다 - 초록색 벡터(u2)만 남는다 1. v2와 u1을 내적시킨다 - 길이를 찾은 것 2. v2 - (길이) * (방향) 3. 길이를 1로 만든다 세번째 벡터가 추가로 주어졌다면? 1. 첫번째 벡터에 projection 시킨다 2. 두번째 벡터에 projection 시킨다 3. 원래 벡터에서 둘을 뺀다 4. 길이가 1이 되도록 한다 부가적인 matrix를 추가해 원래 벡터 복원하기 ..

Orthogonal Projection Ⅱ 위의 식은 (길이) x (방향성) 을 의미한다. 내적값은 스칼라 값이므로 위치를 바꿔 쓸 수 있다 초록색 둘의 계산을 outer product를 통해 먼저 하면 커다란 matrix가 된다 지난번에 배운 것처럼 outer product 의 sum을 이용하여 outer product의 sum을 원래의 matrix로 나타내보면 U : orthogonal 한 column을 갖고 있는 matrix b^을 구하도록 하는 또 다른 형태의 선형변환이다. b를 A에 정사영하는 식이 있었을 때 matrix A가 orthonomal한 column 벡터를 가지고 있는 matrix라면 A^TA는 I matrix이다. 따라서 b^은 동일하게 유도되어 진다. 배운것 정리 orthogona..

Orthogonal Projection Ⅰ orthogonal projection : 빛을 수직으로 쏘았을 때 그려지는 그림자의 모양 orthogonal n = 5 (차원), p = 3 (벡터) 라고 하면 그 중 2개의 벡터를 뽑았을 때 내적이 0이라는 것은 수직이라는 의미이다. orthonormal orthogonal의 조건은 유지한 채 길이만 1인 벡터이다. orthogonal한 3개의 벡터는 선형 독립인가? 그렇다 -> 전에 벡터에 의해 만들어진 span에 포함되지 않기 때문이다 basis가 되는 벡터들끼리 수직이어야 한다 * linearly independent한 벡터를 수직으로 만들기 - Gram-Schmidt process 한 벡터를 다른 벡터에 사영시키고 그 성분은 뺀 뒤 남은 성분을 bas..

정규방정식 x^ : 최단거리의 수선의 발을 만들어내게 하는 선형 결합의 계수 normal equation : 최단거리의 수선의 발을 만들어내기 위해 만족하는 식 위 식과 동일하지만 방정식을 푸는 문제로 바꾼다 A^TA 가 invertible할 때(역행렬이 존재할 때)와 invertible하지 않을 때 두가지로 나누어 볼 수 있다 1) invertible한 경우 x^ = ( A^TA )-1 A^T b 의 식으로 나타낼 수 있다 +) 복습 역행렬은 정사각행렬에서만 논할 수 있다. 따라서 A의 사이즈가 100 x 3이고 A^T 의 사이즈가 3 x 100 이라면 A^TA 의 사이즈는 3 x 3 이 된다. 즉, feature 갯수 만큼의 정사각행렬이다. * 다른 방식으로의 유도 b - Ax 를 최소화하기 위한 x..

Least Squares와 그 기하학적 의미 Ax 가 정확하게 b가 되지 못하는 경우는 A의 column들에 의해 span 되는 space에 b가 포함되지 않은 경우이다. b가 최대한 가까워지도록 하는 x를 찾아야 한다. A의 column이 2개라고 했을 때 두 벡터에 의해 나타내지는 span이 초록색 평면이다. 평면에서 b와 가까워질 수 있는 점을 b hat이라고 하자. b와 b hat이 가장 가까워지려면 평면의 모든 선분에 대해서 수직이 되어야 한다. 그것을 만족하는 x hat을 찾는다. basis 벡터들과 수직이면 b -b hat은 항상 수직이다. 내적으로 바꿔 0이 되면 된다. 식을 오른쪽으로 옮기면 다음과 같은 equation을 얻을 수 있다 Normal Equation : A^Tb = A^TA..

Least Squares Problem 소개 방정식의 갯수 > 미지수의 갯수 (데이터를 많이 수집한 경우) : over-determined system -> 보통 solution이 없다 벡터 3개가 큰 전체 공간(큰 dimension)에서 일부만 차지하기 때문에 벡터 b가 주어진 공간에 들어올 확률이 작다 근사적으로나마 solution을 구해보자! 내적 : 벡터들마다 element-wise 하게 곱해서 더해준다 행렬의 곱 형태로 나타내면 왼쪽 벡터 transpose 시켜 오른쪽 벡터와 matrix 곱한다. 교환법칙, 분배법칙, 먼저 내적하고 상수배, 먼저 내적하고 나중에 선형결합, 자기자신과의 내적은 0보다 크거나 같다, 내적이 0이려면 한 벡터가 0벡터여야 한다 Norm : 벡터의 길이 자기자신과의 내..

전사함수와 일대일함수 3차원 벡터를 2차원 벡터로 보내는 변환을 생각했을 때 2차원 벡터들의 모든 집합은 공역이다. 그 중에서 특정 벡터의 함숫값만 모아놓은 것은 치역이다. (공역 ⊃ 치역) 공역보다 정의역의 원소의 갯수가 많아야 한다. 치역이 가장 커질 수 있을 경우는 공역과 똑같아지는 경우이다. 전사한다 -> n차원에서 m차원으로 mapping하는 함수가 있을 때 공역에서 어떤 벡터 하나를 뽑아도 그 점은 어떤 정의역의 하나 이상에서의 함숫값이 되어야 한다. 공역에서 어떤 벡터 하나를 뽑아도 화살표를 하나 이상 맞아야 한다. 정의역이 공역보다 갯수가 많아야 하므로 작은 차원 -> 큰 차원은 불가능하다. 인코딩->디코딩은 어떻게 가능한가? 아주 일부분만을 커버한다. 평면만 mapping해도 얼굴 전체를..

선형변환 with Neural Networks 2차원에서 2차원으로 변환되는 layer라고 생각했을 때 (bias 없음) matrix A = coefficient들의 집합 기저벡터에 각각 2배, 1배로 길이를 늘려주고 줄여줘서 좌표값을 만든 것이다 여기서 선형 변환의 의미는 [1, 0], [0, 1]이 변환되고 난 벡터에 coefficient를 나중에 적용해서 만들어진 벡터가 최종 output이다. 예를 들어 (2,1)이라는 입력 벡터가 주어졌을 때 (1, 0)은 2배가 되고 (0, 1)은 1배가 된다. 애초에 (2,1)이 갖고 있는 coefficient는 2였기 때문에 기울어진 초록색선 (2,3)이 2배가 되어 (4,6)이 된다. (0,1)은 1이었기 때문에 그대로 (1,4)가 된다. 즉, 좌표값을 d..

선형변환 Domain(정의역) : 함수로 들어갈 수 있는 모든 집합 Co-domain(공역) : 함수의 출력값이 될 수 있는 모든 집합 Image(함수의 상, 아웃풋) : 함숫값 Range(치역) : 공역중에서 실제 함숫값으로 쓰여지는 집합 정의역 값 하나마다 함숫값이 하나로 대응되어야 한다 (없어도 안되고 두개여도 안된다) 정의역과 공역이 벡터 공간일때 function이 linear 하다. 선형성을 만족하는 변환이다 : 선형결합 후 함수에 집어넣은 output = 함수에 집어넣은 함숫값을 선형결합 한 output y = 3x + 2는 선형 변환일까? 아니다 y = 3x + b를 선형 변환으로 나타내는 방법 상수를 input의 한 dimension으로 포함해서 내적되는 경우 차원은 달라지지만 선형 변환이..

부분공간의 기저와 차원 subspace : span과 거의 유사 3차원 전체 집합의 subset(부분집합)으로 {[1, 2, 3], [5, 4, 2]}가 있다고 볼 수 있다. 여기에 선형결합에 닫혀있다는 조건이 추가되면 subspace라고 부른다. 두 벡터를 뽑아서 적절한 선형결합에 의해 만들어진 벡터가 집합에 포함되어있으면 subspace이다. 곱셈에 닫혀있는 집합 : 집합 안의 두개를 뽑아 곱했을 때 그 수가 집합에 속해있는 경우 ex) {2^n : n=1 ... 무한대} 결국 subspace는 항상 재료벡터들의 span으로 표현될 수 있다. basis (기저벡터) : 어떤 subspace가 주어져 있을 때 주어진 span을 fully span할 수 있는 벡터를 기저벡터라고 한다. 이 때 벡터들은 선..