반응형

머신러닝&딥러닝/기초정리 15

Auto Encoder란? - Manifold와 차원 축소

이번 글에서는 Auto Encoder를 공부하면서 익힌 내용들을 정리한다. Auto Encoder는 Encoder와 Decoder의 구조로 되어있는데 PCA와 같은 차원 축소가 그 목적이었다. 그러므로 사실 핵심은 Encoder에서 Latent variable을 생성하는 것에 있다. Latent Variable은 Input으로 넣은 Data의 차원을 축소시켜서 만든 벡터인데 언뜻 생각했을 때 정보가 많이 손실돼서 안 좋은 거 아닌가?라고 생각할 수 있다. 이를 이해하기 위해 차원의 저주를 먼저 알 필요가 있다. 차원의 저주는 Data의 개수는 별로 없는데 이를 설명하려고 하는 변수의 차원은 클 때 일어난다. 예를 들어 데이터가 5개밖에 없는데 이를 설명하려는 길이 10인 벡터를 갖는 Parameter 개..

Mean Squared Error VS Cross Entropy Error

DNN에서 Loss Function을 사용할 때 아래의 2가지 가정에 적합해야 한다. 1) Train data에서의 Loss 총합은 개별 데이터 Loss의 합과 같아야 한다. $$L(\theta_{k}, D) = \sum_{i}L(\theta_{k} ,D_{i})$$ 2) DNN 출력 값으로 Loss를 계산한다. (중간 단계에서의 값으로는 계산하지 않음.) $$\bigtriangledown L(\theta_{k},D) = \sum_{i}\bigtriangledown L(\theta_{k}, D_{i})$$ Mean Squared Error(MSE)와 Cross Entropy Error(CEE)를 Loss Function으로 많이 사용하는 이유는 위의 두 조건을 만족하는 대표적 함수이기 때문이다. 이번 글..

경사하강법 이해(2) - Learning Rate란?

이번에는 경사하강법을 이용해 최적화를 할 때 Learning Rate(학습률)을 사용하는 이유를 알아 볼 것이다. 경사하강법은 이전 글에서 작성한 것처럼 Loss값을 줄이는 과정으로 파라미터를 업데이트하는 과정인데 이를 수식으로 작성하면 다음처럼 표현할 수 있다. $L(\theta+\Delta \theta) < L(\theta)$ 위의 조건의 만족되면 Loss가 계속 줄어가는 것이니 학습이 잘 되는 것이다. $L(\theta+\Delta \theta)$ 를 Taylor 정리를 사용하면 다음과 같이 나타낼 수 있다. $$L(\theta+\Delta \theta) = L(\theta) + \bigtriangledown L * \Delta \theta + \frac{1} {2}\bigtriangledown^{..

Convolution Neural Network 원리와 구조 이해

Convolution의 핵심은 kernel을 사용하여 각 요소별 가중치를 줘서 특징을 추출한다는 것이다!! 컨볼루션에 관해서는 간단한 예시들로 이해를 하는 것이 좋다. Convolution은 한국어로 합성곱으로 번역된다. 말 그대로 '곱해서 더한다'라고 직관적으로 생각하면 된다. 이때 사용하는 것이 커널인데 Kernel은 [ 1, 2, 0, 1]과 같은 배열의 형태가 될 수 있다. 예를 들어 1차원의 data가 [1,4,6,7,4]이고 kernel이 [1,1,1] 일 때, [ (1+4+6)/3 , (4+6+7)/3 , (6+7+4)/3 ] = [11/3, 17/3, 17/3]의 결과가 나올 것이다. 이처럼 data에 커널을 통과시키면 데이터 크기가 작아지며 특징을 추출하게 된다. 이런 기법을 어디 사용할..

경사하강법 이해(1)

인공지능 모델의 전체적인 과정을 보면 다음과 같다. 데이터 입력 => 파라미터(weight, bias)를 통한 output 도출 => loss값 생성(label값과 prediction값의 차이 이용) => loss를 줄기 위해 기울기를 이용한 최적화(경사 하강법 적용, parameter 갱신) * loss를 구하고 경사하강법을 적용하는 것이 모델 학습의 핵심이다. 파라미터 weight과 bias를 이용하여 x를 input으로 주었을 때, H(x)=Wx+b의 output을 내게 된다. 이때 H(x) 값과 Label값을 비교하여 Loss를 생성한다. 대표적인 Loss 함수 Mean Squared Error를 이용한다고 했을 때, 식이 다음과 같다. MSE = Mean((H(x)-Label)^2)/2 = Me..

반응형