목차
모델 선택
학습 모델의 표현
-
모델 파라미터 : 데이터로부터 학습되는 파라미터. 모델이 결정되면 자동으로 결정됨.
-
하이퍼 파라미터 (튜닝 파라미터): 데이터로부터 학습되는것이 아니라 사용자가 직접 지정해주는 파라미터.
모델 선택
-
어떤 모델이 좋은 모델인가?
선형 회귀 or KNN 회귀 모델? -
전통적인 통계적 접근 이론적 접근을 통해 결정 모델의 기본이 되는가에 대한 확인 (선형성, 정규분포 등) 모델의 적합성에 대한 많은 수치들
-
현대 기계학습적 접근 실험적 접근을 통해 결정 훈련-테스트 세팅을 시뮬레이션 검증집합, 교차검증을 이용 이런 방식은 모두 resampling에 기반
검증 집합 (Validation set)

훈련집합과 검증집합으로 나눈 뒤, 훈련집합에서 학습시킨 모델을 검증집합으로 테스트. 하지만 모델의 최종성능은 반드시 테스트집합에서의 성능이어야 한다. 검증집합 성능은 취급불가.
교차검증 (Cross-validation)

위의 검증집합 방식과 유사, 하지만 검증, 훈련집합이 서로 바뀔 수 있음.
K-fold Cross-validation
- 전체 훈련집합을 K개 그룹으로 나눈 뒤, 하나를 검증집합, 나머지는 훈련집합으로 생각하여 진행. 이것을 검증집합을 바꿔가며 총 K 번 진행한다
- 총 K개의 검증집합 성능의 평균을 교차검증 성능으로 측정
검증집합 vs Cross-validation
- 기본적으로는 방법 상관없이 유사한 결과를 도출
- 데이터 수, 모델의 복잡도, 훈련 시간에 따라 전략적으로 선택
모델 확장
-
기본적인 모델들은 다양하게 확장 가능 일반적으로 모델의 복잡성을 줄이는 방향으로 확장
-
입력 변수 선택(Feature selection) — 변수 중 일부만 골라서 사용 — 모든 모델에 적용 가능 — 복잡성을 줄여줌
-
차원 축소(Dimension reduction) — 입력 변수 차원을 압축하여 낮춰 사용 — 연속형 입력 변수에 대해 사용가능 — 복잡성을 줄여줌
-
규제화 (Regularization) — 모델 파라미터의 범위를 제한 — 모델 파라미터가 존재하는 모수적 모델에 사용가능 — 복잡성을 줄여줌
입력 변수 선택
-
어떤 모델에서 p개 변수가 있는데 그 중 좋아보이는 k개 변수만 선택
-
Best selection — 모든 경우에 대해 조사하고 검증집합에서 가장 좋은 성능을 갖는 모델을 선택 — p에 따라 다 조사하기 굉장히 어려워서 현실에서 사용하기 불가능
-
Stepwise selection — 한 번에 모든 조합을 찾는게 아니라, 그 전 단계에서 가장 좋은 성능을 낸 모델에서 시작 — Forward, Backward 방식이 있음
차원 축소(Dimension Reduction)
-
주어진 p차원의 입력 변수 공간을 더 낮은 k차원으로 변환. — 차원의 저주(고차원 모델에선 어떤 모델도 적합하지 않음)을 피하기 위함 — 불필요한 정보 제거 — 시각화 (2, 3차원의 경우만) — 새로운 입력 변수 추출
-
변수 선택 : 주어진 변수 중 일부만 선택
-
변수 추출 : 원래 변수에서 새로운 변수 도출 — 주성분 분석 (PCA) — ICA — NMF — Autoencoder, Convolution layer 등..
규제화 (Regularization)
-
모델 파라미터 범위를 제한함으로써 모델 복잡성을 줄이는 것이 가능
-
규제화가 적용된 손실함수는 다음과 같이 표현이 가능
-
Overfitting을 방지하는 핵심 기법
-
L2 Regularization
- 규제가 강해질수록 0으로 접근. 하지만 진짜 0이 되진 않음
-
Ridge regression : 선형회귀 + L2
-
L1 Regularization
-
Lasso Regression : 선형회귀 + L1
-
Elastic Net : L1, L2의 성질을 모두 다 갖고있음
-
L0 Regularization : 0이 아닌 파라미터 갯수 (변수 선택과 동일)
-
규제화 : 파라미터 중 최댓값