본문 바로가기

linearalgebra9

# 11. PCA (Principal Component Analysis) 이론 PCA는 고차원의 데이터의 분포를 유지한채(최대한 중요한 정보를 유지한채) 차원을 낮추기 위한 알고리즘이다. 고차원에서 저차원으로 변환하는 과정에는 초평면 혹은 벡터에 정사영 혹은 투영(projection) 과정이 수행된다. 우선, 고차원 데이터에 대한 데이터의 분포를 파악하는 것이 중요하다. 분포는 데이터가 어느정도 넓게 퍼져있는가를 의미한다. 만약 위와 같은 2차원 파란색 데이터가 존재한다고 가정할 때, 1~3번 선중 어느 선이 가장 데이터를 잘 표현한다고 할 수 있을까? 직관적으로 보았을 때, 데이터가 가장 넓게 분포한 방향으로 기울어진 2번 선을 선택할 수 있을 것이다. 2번 선(벡터)에 대해 사영시키면 빨간점으로 이루어진 데이터들을 볼 수 있다. 이 점들은 하나의 선(1차원)으로 표현되며 .. 2022. 3. 7.
# 9. 고유값 분해 (Eigen-value Decomposition) - 2 저번 포스트에서는 고유값과 고유벡터에 대해서 알아보았다. 이번 포스트에서는 실제로 행렬 A에 대해 고유값 분해를 하는 과정에 대해 알아보겠다. 우선, $n \times n$ 행렬 A에 대해 고유값과 그에 대응하는 고유벡터들을 구해야한다. 그리고 고유벡터들($v_i$)을 모아둔 행렬 $V$를 다음과 같이 정의할 수 있다. 두 번째 식에 각각의 열벡터(고유벡터)에 해당하는 고유값을 곱해보자. 그 결과 행렬 A와 V로 위와 같이 표현할 수 있다. 마지막으로 고유값들을 대각성분에 모아둔 행렬을 보자. 네 번째 식을 통해 AV 행렬을 인수분해가 가능하다. 다섯번째 식에서 각 열벡터(행렬 V의 고유벡터)들이 선형독립이라면 아래와 같이 행렬 A를 표현할 수 있다. 사실 아직 행렬 A를 분해하는 의미를 설명하지 않았다.. 2021. 11. 23.
# 9. 고유값 분해 (Eigen-value Decomposition) - 1 고유값 분해를 다루기 이전에 고유값과 고유벡터의 개념에 대해서 먼저 다루려고 한다. 먼저 이 포스트를 보기 이전에 선형변환에 대한 개념을 숙지하고 보는 것을 추천한다. 우리는 선형변환을 하나의 함수로써 생각했다. 예를 들어 임의의 벡터 x를 행렬 A의 선형변환 연산을 취했을 경우, 또 다른 벡터가 나오는 것처럼.. 보통은 선형변환을 통해 크기와 방향 모두 바뀐다. 하지만, 우리가 이번에 다룰 선형변환은 크기만 바뀌는 경우에 대해서만이다. 그렇다면, 고유값과 고유벡터는 어떤 의미를 지닐까? 고유값은 방향이 변하지 않은 벡터에 대해 어느정도 크기가 바뀌었는가의 의미이고, 고유벡터는 해당 고유값에 대응하는 벡터 x를 의미한다. 수학적으로는 다음과 같이 정의할 수 있다. 위 식을 이항하면 다음과 같이 표현할 수.. 2021. 11. 23.
# 8. QR 분해 (QR Decomposition) - 1 QR 분해의 내용은 두 포스팅에 걸쳐서 진행하겠습니다. QR 분해는 정방 행렬($A_{m \times m}$)을 분해하는 방법 중 하나로 투영(projection)을 기반으로 하는 알고리즘인 그람 슈미트 과정(Gram-Schmidt Process)로 진행한다. 고로 투영을 이해하기 위해 기본적으로 벡터의 정의부터 파악하려고 한다. 벡터를 물리적으로 정의하면 방향과 스칼라의 조합이다. 벡터 v의 방향은 화살표의 방향, 크기(스칼라 형태)는 화살표의 길이를 의미한다. 벡터의 수학적인 정의는 수들의 집합이며 각 수들은 각 축에 대한 좌표값이다. 예를 들어, 벡터 v = (1, 2, 3) 이리면 원점으로부터 x축으로는 1, y축으로는 2, z축으로는 3의 지점을 향하는 화살표이다. 수들의 갯수가 늘어날수록 차원.. 2021. 10. 5.
# 7. 선형 변환 (Linear Transform) 이론 함수는 정의역(Domain)과 공역(Codomain)간의 1대 1 mapping 관계를 의미한다. 함수는 크게 선형함수와 비선형함수로 분류할 수 있다. 선형함수는 말그대로 기하학적으로 Linear한 형태의 함수를 의미한다. 선형함수에 해당하기 위한 조건은 다음과 같이 2가지가 있다. 이제 함수에 대해 간단하게 짚었으니, 변환(transformation)에 대해 알아볼 차례이다. 변환은 입출력이 벡터인 함수를 의미한다. 특히, 입력 벡터와 출력 벡터의 차원이 동일한 경우 ($n$-벡터와 $m$-벡터에 대해 $n=m$인 경우) 변환이라 칭하지 않고 연산자(operator)라고 한다. 선형시스템에서 행렬 A는 ($m \times n$ 행렬) $n$-벡터를 입력으로 받아 $m$-벡터를 출력으로 하는 변환(.. 2021. 9. 23.
# 6. 좌표계 변환 (Change of Basis) 이론 이번 포스팅에서는 직교 좌표계 변환에 대해 알아볼 것이다. 흔히 우리가 학생때 서로 수직인 X, Y 축을 통해 좌표를 표현하는 것은 직교 좌표계 (orthogonal coordinate system)이라고 한다. 그 밖에도 다른 좌표계에 대한 설명이 궁금하면 해당 링크를 참고하면 된다. 우선 앞에서 다루었던 선형 시스템의 공식을 되짚어보면 Ax = b 의 형태를 지닌다. 우리는 해당 선형시스템으로부터 A를 좌표계로, x를 해당 좌표계에 속한 특정 좌표값으로 해석하고 변환하는 것이 이번 포스팅의 목표이다. 좌표계 변환을 배우기 이전에 벡터에 대해 간단하게 짚고 넘어가자. 벡터의 물리적 표현과 수학적 표현에 대해서 알아볼 것이다. 물리적 표현 벡터는 방향과 크기(스칼라)를 동시에 지닌 개념으로 물리적으.. 2021. 9. 23.