Generalization
관측하지 못한 데이터가 입력으로 주어졌을 때, 모델이 정확하게 동작하는 능력을 말한다.
Cross-validation
일반적인 경우, 아래 그림과 같이 고정된 데이터 셋을 통해 모델을 검증한다.
이러한 경우, 모델이 해당 test set에 대해 과적합될 수 있다.
이러한 문제를 해결하기 위해, test set을 하나로 고정하는 것이 아닌, 모든 데이터 셋을 test set으로 활용하여 교차 검증을 진행한다.
아래는 교차 검증에서 가장 널리 사용되는 기법인 k-fold cross validation이다.
Bias & Variance
Bias(편향)
실제 값과 모델의 출력 값이 얼마나 차이가 나는지를 의미한다.
Variance(분산)
비슷한 입력 값을 넣었을 때, 출력 값이 얼마나 일관적이게 나오는지를 의미한다.
분산이 지나치게 크면, 과적합을 야기할 수 있다.
Bias and Variance Tradeoff
- 모델이 복잡해질수록, 편향은 작아지고 분산은 커지게 된다. (over-fitting)
- 모델이 단순해질수록, 편향은 커지고 분산은 작아지게 된다. (under-fitting)
Bootstrapping
기존의 데이터 셋에서 중복을 허용한 임의 추출을 통해 여러 개의 부분 집합을 만들어 낸다.
Bagging (Bootstrap Aggregating)
- Bootstrapping을 사용해서 모델의 성능을 향상시키는 방법 중 하나이다.
- Bagging의 가장 대표적인 알고리즘인 Random Forest는 의사 결정 트리를 여러 개 만들어, 각 트리의 결과를 취합해 다수결로 최종 결과를 도출한다.
- 이 때, 각 트리는 Bootstrap을 통해 만들어진 데이터의 부분 집합을 기반으로 만들어진다.
Boosting
- Weak Learner들을 결합해서 Strong Learner로 만드는 방법이다.
- 각각의 모델은 이전 모델의 오차를 보완하기 위해 학습된다.
'AI > Deep Learning' 카테고리의 다른 글
[Deep Learning] LSTM을 직접 구현해보자! (0) | 2023.03.29 |
---|---|
[Deep Learning] RNN의 구조 (2) | 2023.03.24 |
[Deep Learning] modern CNN의 특징 (0) | 2023.03.24 |
[Deep Learning] Regularization (0) | 2023.03.21 |
[Deep Learning] 최적화 기법 (0) | 2023.03.21 |