728x90
반응형
Supervised Learning Approach
- Task: 집합 X에 속한 x가 주어졌을 때, 집합 Y에 속한 y를 예측하는 것
- Classification vs Regression
- Classification: 예측 결과가 discrete label이다.
- Regression: 예측 결과가 continuous label이다.
Classification: Traning vs Test
1) 트레이닝 데이터로부터 학습을 한다. - training 단계
2) label을 모르는 (새로운) 데이터의 label을 예측한다. - test 단계
Classification
- Learning: 트레이닝 데이터로부터 classifier를 추출한다.
- Prediction: 학습한 classifier를 이용하여 새로운 데이터의 label을 예측한다.
- training data: 이미 알고 있는 label들을 활용하여 classifier를 학습할 때 사용한다.
- test data: label을 예측하거나 classifier를 평가할 때 사용한다.
Model selection
첫 번째와 두 번째 모델은 세 번째 모델과 달리 몇몇 데이터 객체들이 decision boundary와 거의 붙어 있다.
→ 값이 조금만 달라져도 잘못 분류하게 된다.
전자는 decision boundary가 불안정하여 노이즈에 민감하게 반응한다.
후자는 decision boundary가 이차식의 형태를 하고 있다. 즉 parameter가 일차식일 때보다 많아지고, 그 결과 모델 복잡도가 올라간다. 이것은 샘플이 더 많아야 모델이 안정화된다는 문제점을 가진다.
Over-fitting for traning data
학습 시 트레이닝 데이터에 딱 맞게 decision boundary를 설정할 경우 Overfitting(과적합) 발생 → 새로운 데이터에 대한 예측력이 떨어진다.
(주로 모델의 parameter수가 많거나 트레이닝 데이터가 부족할 경우 발생한다.)
Train / Test split
- classifier의 성능은 테스트 세트에 의해 평가된다.
- 이때, 트레이닝 세트(트레이닝 데이터)와 테스트 세트(테스트 데이터)는 분리되어야 한다.
- 만약 테스트 세트가 트레이닝 세트와 동일하다면?
→ 과적합 발생. 즉, 테스트 세트와 트레이닝 세트가 동일하다면 조금만 다른 패턴의 데이터가 나오면 모델의 성능이 확 내려가는 문제가 발생한다. - 주로 전체 dataset를 Train / Validation / Test set 으로 분리한다.
728x90
반응형
'Machine Learning' 카테고리의 다른 글
Data / Data Quality / Exploratory Data Analysis (0) | 2023.01.11 |
---|---|
머신러닝을 위한 파이썬 - numpy (0) | 2023.01.06 |
머신러닝을 위한 파이썬 - class / exception / with (0) | 2023.01.06 |
머신러닝을 위한 파이썬 - 함수 및 람다(lambda) (0) | 2023.01.06 |
머신러닝을 위한 파이썬 - if / for / while (0) | 2023.01.06 |