PCA(Principal Component Analysis)는 데이터를 더 적은 차원으로 압축하면서도, 원래 데이터의 중요한 정보를 최대한 유지하려는 차원 축소 기법이다. 핵심은 단순히 컬럼 개수를 줄이는 것이 아니라, 데이터가 가장 많이 퍼져 있는 방향을 새로운 축으로 다시 표현하는 것이다.PCA를 왜 사용하는가머신러닝에서는 feature 수가 많아질수록 문제가 생길 수 있다.계산량 증가feature 간 중복 정보 증가시각화 어려움overfitting 가능성 증가예를 들어 키와 몸무게처럼 거의 비슷하게 움직이는 feature 두 개가 있다면, 두 feature를 모두 사용하는 대신 “사람의 체격” 같은 하나의 축으로 줄여서 표현할 수도 있다.PCA는 이런 식으로:원래 feature 공간→ 정보 손실을 ..
딥러닝 수학에서 Gradient, Jacobian, Hessian이 헷갈리는 이유는 미분 공식이 어려워서라기보다 입력과 출력의 형태가 달라지기 때문이다.입력이 스칼라인지 벡터인지, 출력이 스칼라인지 벡터인지에 따라 미분 결과는 숫자, 벡터, 행렬로 달라진다.먼저 함수 형태를 구분해야 한다미분 결과를 이해하려면 함수가 어떤 형태인지 먼저 봐야 한다.함수 형태 의미 미분 결과f: \mathbb{R} \rightarrow \mathbb{R}스칼라 입력 → 스칼라 출력스칼라f: \mathbb{R}^n \rightarrow \mathbb{R}벡터 입력 → 스칼라 출력Gradientf: \mathbb{R}^n \rightarrow \mathbb{R}^m벡터 입력 → 벡터 출력Jacobianf: \mathbb{R}^..
고유값(Eigenvalue)과 고유벡터(Eigenvector)는 행렬이 공간을 어떻게 변형시키는지 보여주는 핵심 개념이다.특히 중요한 점은, 어떤 벡터들은 행렬 변환을 거쳐도 방향이 유지된다는 것이다. 이때 얼마나 늘어나거나 줄어드는지를 나타내는 값이 고유값이고, 그 방향을 유지하는 벡터가 고유벡터다.고유벡터란일반적으로 행렬을 벡터에 곱하면 방향과 크기가 모두 바뀐다.하지만 특정 벡터는:방향은 유지되고길이만 변한다이런 특수한 경우가 존재한다.이 벡터를 고유벡터(Eigenvector)라고 한다.자료에서도 “행렬을 곱해도 방향이 유지되는 벡터”를 고유벡터라고 설명한다.고유값이란고유벡터가 얼마나 늘어나거나 줄어드는지를 나타내는 값이 고유값(Eigenvalue)이다.수식으로는 이렇게 표현한다.Ax = \lamb..
32일차는 딥러닝으로 넘어가면서, 기존 머신러닝과 무엇이 달라지는지 큰 흐름을 잡은 날이었다. 앞에서는 Y = f(X)에서 좋은 함수를 찾는다는 관점으로 머신러닝을 봤다면, 이번에는 그 함수 f를 인공신경망 구조로 만들고, 입력과 출력의 형태를 훨씬 자유롭게 설계할 수 있다는 점을 봤다.특히 전통적인 머신러닝은 대부분 데이터를 2D matrix 형태로 맞춰야 했지만, 딥러닝은 이미지, 영상, 음성, 텍스트처럼 더 복잡한 입력과 출력을 다룰 수 있다는 점이 크게 달랐다. 물론 자유도가 커진 만큼 파라미터도 많아지고, 학습 시간과 비용도 커진다는 점도 같이 봤다.1. AI, Machine Learning, Deep Learning의 관계먼저 AI, ML, DL의 관계를 다시 정리했다. AI는 가장 큰 범주이..
선형대수에서 행렬은 단순한 숫자 배열이 아니다.행렬은 벡터를 다른 벡터로 바꾸는 변환(transform) 으로 볼 수 있다. 이 관점이 중요한 이유는 딥러닝, 컴퓨터 그래픽스, 추천 시스템처럼 벡터를 계속 변환하는 모델들이 결국 행렬 연산 위에서 동작하기 때문이다.선형 변환이란선형 변환(linear transformation)은 벡터 공간에서 다른 벡터 공간으로 보내는 함수다.다만 모든 함수가 선형 변환은 아니다.선형 변환은 아래 두 조건을 만족해야 한다.1. 덧셈 보존2. 상수배 보존즉:T(x + y) = T(x) + T(y)T(ax) = aT(x)이 성질이 유지되어야 한다.자료에서도 선형 변환은 “벡터 공간 사이의 함수 중 덧셈과 상수배가 보존되는 변환”이라고 설명된다.왜 “선형”이라는 말을 쓰는가예..
벡터를 다룰 때 가장 많이 사용하는 개념이 Norm과 Inner Product(내적)이다.Norm은 벡터의 크기를 계산하는 방법이고, Inner Product는 두 벡터가 얼마나 같은 방향을 바라보는지를 계산하는 연산이다. 머신러닝에서는 거리 계산, 유사도 계산, 추천 시스템, word embedding 같은 거의 모든 벡터 기반 모델에서 계속 등장한다.Norm이란Norm은 벡터의 크기(length)를 정의하는 방식이다.가장 익숙한 것은 유클리드 거리 기반의 L2 Norm이다.||x||₂ = √(x₁² + x₂² + ... + xₙ²)예를 들어:x = (3, 4)라면:||x||₂ = √(3² + 4²) = 5즉, 우리가 중학교·고등학교에서 배운 피타고라스 거리와 같은 개념이다.자료에서도 L2 norm은 ..