남는건 기록뿐

딥러닝 키워드 간단 정리(1) 본문

Deep Learnig

딥러닝 키워드 간단 정리(1)

루크안 2020. 1. 21. 22:17
반응형

1. 데이터를 학습 세트와 평가 세트로 분할하는 이유

-- 머신러닝 모델을 학습시킨 후에는 모델이 새로운 데이터를 입력했을 때도 범용적으로 잘 작동하는 지 평가할 기준이 필요하다. 이를 위해 평가(test data)가 필요하다. 일반적으로 머신러닝에선 정확한 평가를 위해 데이터를 학습 데이터(train data), 평가 데이터(test data)로 나누거나, 더 나아가서는 학습 데이터(train data), 검증 데이터(validation data), 평가 데이터(test data)로 분리한다.

 

학습 데이터(train data): 모델을 학습시키는데 필요함

검증 데이터(validation data): 학습한 모델이 적합한지 검증함

평가 데이터(test data); 최종적으로 선택한 모델의 성능을 평가함

 

2. 경사하강법(Gradient Descent)

--  Gradient Descent는 각 parameter의 optimal한 theta값을 찾을 때 사용하는데, 임의의 위치 (x)에서 시작하여 그 지점의 기울기를 구하고(미분), 해당 미분한 값과 학습률에 따라 다음 위치로 이동하며 점진적으로 optimal한 값을 찾는다(기울기가 0인 부분). 다만, 해당 parameterdml local optimum과 global optimum이 다를 경우 최적화된 값을 찾지 못할 수도 있다.

 

3. 학습률(Learning Rate)

-- Learning rate은 model을 경사하강법으로 학습할 때, Gradient의 반대방향으로 얼마나 많이 변화시킬지를 결정시키는 요소이다. Learning rate이 클 경우 빠르게 최적화될 수 있지만, 너무 클 경우 최소점을 찾지 못할 수도 있다. 반대로, 너무 작으면 학습에 소요되는 시간이 커질 수 있다.

 

4. 학습률(Learning rate) 최적화

-- 학습률 최적화(Learing rate optimization)는 최선의 학습 결과를 찾기까지 적절한 학습률(learning rate)을 찾는 과정이다. Learing rate scheduling, Adaptive learning rate, Learning rate decay 등의 기법들을 사용해서 시간에 따라 학습률을 바꿔주기도 한다. 그리고 최종적으로 AutoML을 통해서 가장 좋은 학습률을 찾을 수 있다.

 

5. 확률적 경사하강법(SGD)

-- 미니배치(mini-batch)를 사용해서 학습했을 때 학습의 속도가 빨라진다. 미니배치 방법의 극단적인 형태는 미니배치가 달랑 한개로 이루어졌을 때이다. 이는 확률경사하강(Stochastic Gradient Descent(SGD, 혹은 Online Gradient Descent)라고 불린다. 

-- 미니배치의 크기도 하이퍼파라미터(hyperparameter)이지만, 이것을 교차검증하는 일은 흔치 않다. 이건 대체로 컴퓨터 메모리 크기의 한계에 따라 결정되거나 몇몇 특정값(ex, 32, 64 or 128 같은 값)을 이용한다. 2의 제곱수를 이용하는 이유는 많은 벡터 계산이 2의 제곱수가 입력될 때 더 빠르기 때문이다.

 

6. 선형 회귀(Linear Regression)

-- 선형 회귀는 영향을 주는 독립변수(independent variable)와 영향을 받는 종속변수(dependent variable) 사이의 선형적인 상관관계를 정의하는 대표적인 방법이다. 수식으로 나타내면, y = Wx + b로 나타낼 수 있다. 여기서 독립변수 x곱해지는 값 W를 머신러닝에서는 가중치(weight), 별도로 더해지는 값 b편향(bias)라 한다.

 

7. 회귀 문제와 분류 문제는 어떻게 다른가?

-- 회귀: Numeric variable예측하는 모델, 보편적으로 사용하는 Loss Function은 Mean Squared Error.

    분류: Categorical variable예측하는 모델, 보편적으로 사용하는 Loss Function은 Cross Entropy.

 

*일반적으로 분류 문제가 좀 더 학습이 잘되는 경향이 있다.

 

8. 과적합(Overfitting)

--  생성된 모델이 학습 데이터와 지나치게 일치하여 새 데이터를 올바르게 예측하지 못하는 경우. 즉, 모델이 학습한 데이터의 특성에 과적합하게 되면 학습하는 동안 손실이 적지만 새 데이터를 잘 예측하지 못한다. 현재 샘플에 적합한 모델이 새 데이터를 잘 예측할 것이라고 신뢰할 수 없다. 

 

* 필요 이상으로 복잡한 모델을 만들면 과적합이 발생한다.

 

9. 일반화(Generalization)

-- 모델에서 학습에 사용된 데이터가 아닌 이전에 접하진 못한 새로운 데이터에 대해 올바른 예측을 수행하는 능력을 의미. 머신러닝의 목표는 숨겨진 실제 확률분포에서 새 데이터를 잘 예측하는 것이다. 하지만, 모델에서는 모든 데이터를 볼 수 없으며 학습 데이터 세트에서만 샘플을 추출할 수 있다. 즉, 현재 예에 적합한 모델에서 처음 보는 예도 효과적으로 예측할 것이라고 신뢰할 수 없다.

 

* 머신러닝에 Occam의 면도날 법칙을 적용하면, ML 모델이 덜 복잡할수록 샘플의 특성 때문이 아니어도 좋은 경험적 결과를 얻을 가능성이 높다.

반응형

'Deep Learnig' 카테고리의 다른 글

Auto Encoder  (0) 2020.06.15
딥러닝 키워드 간단 정리(2)  (0) 2020.01.22
Comments