[Step of ML]
(1) Training(learning) : Model(NN, DT 등)을 Training Dataset에 대해서 fitting시키는 과정
(2) Test(Inference) : Training을 통해 데이터에 가장 잘 맞는 모델을 찾은 후, 학습한 모델을 통해 Test Dataset에 대해서 성능을 측정하는 과정
[Dataset]
- 소규모 data의 경우 6:2:2, 대규모 데이터의 경우 98:1:1의 비율을 갖는다.
(1) Training Dataset : 학습에 사용
(2) Validation Dataset : 모델 선택에 사용. 여러 모델의 성능을 측정하여 최종 모델을 선택함
(3) Test Dataset : 최종 모델에 대한 성능 측정에 사용
[교차검정법 (k- fold cross validation)]
- Dataset의 크기가 충분히 크지 않은 경우 사용
- Dataset 분배에 따른 모델의 성능 변화를 최소화하기 위한 방법
[순서]
(1) Dataset을 k개의 부분집합으로 분할
(2) K개의 부분집합 중 1개를 선택해 Test set으로 사용
(3) 나머지 k-1개의 부분 집합을 Train set으로 사용
(4) 총 K개의 모델을 학습
(5) K개 모델의 평균 Test set error으로 성능을 계산
[Performance measure]
- Loss function, 손실함수
task에 따라 다른 측정 방식 사용
ex) 분류(classification) : accuracy or error rate (E)
[ML의 목적]
: 새로운 unseen data가 들어오더라도 좋은 성능을 내는 것,
즉 Generalization error를 0으로 만드는 것. (다소 이상적이기 때문에 error rate, E를 사용)
→ 따라서, Training data의error rate를 0으로 만듦과 동시에, Training data, test data의 error rate를 수렴하는 것을 목표로 한다.
(1) Training data error rate ~= 0
Optimization을 하거나, 더 복잡한 모델을 사용한다.
실패하여 >0이 되면, 이는 underfitting 되었을 경우이고 high bias라고 한다.
(2) Training data error rate ~= test data error rate
regularization을 사용하거나, 더 많은 데이터를 사용
차이가 커지게 되면, 이는 overfitting 되었을 경우이고 high variance라고 한다.
'STUDY > [AI] ML' 카테고리의 다른 글
Unsupervised Learning - Clustering 부분 발표 자료 (0) | 2021.11.21 |
---|---|
Linear Classification, Logistic Regression (0) | 2021.11.20 |
쏘카 Socar x 멋사 AI 엔지니어 육성 부트캠프 참여! [1주차, 2주차 1/2] (2) | 2021.10.22 |
댓글