본문 바로가기

취업준비/인공지능

[AI Tech] 1주차 4-2차시 머신러닝 기본 개념 소개 (2)

4-2. 머신러닝 기본 개념 소개 (2)

2. Validation Strategy

2-1. What is Validation strategy

Test Dataset

- 가장 중요한 데이터 셋

- 정량적인 비교가 진행되어야 한다.

- 테스트 데이터셋은 전체를 대표할 수 있는 것이 좋은 것이다.

Validation Dataset

- 주요 목적: 모델의 성능을 파악하기 위한 데이터 셋

- Validation은 Test와 최대한 유사한 것이 중요하다.

- 다만, Test 데이터셋의 정보를 알 수 없을 경우(미래의 값일 경우)가 많다.

- 전체 데이터셋과 유사한 데이터셋을 만드는 것이다.

Train Dataset

- 머신러닝 모델이 보고 학습하는 데이터셋

- 확보한 데이터셋에 따라 노이즈가 포함되었나 되지 않았나의 차이가 생긴다.

 

2-2. Hold-out Validation

- 하나의 Train Dataset과 Validation Dataset을 사용한다.

- Class 분류를 적절히 하지 않을 경우 Imbalanced 한 데이터가 몰릴 수 있기 때문에 주의해야 한다.

Random sampling

- 랜덤 하게 Train과 Validation을 나누는 방법

- 전체 데이터셋을 대표하지 않을 수 있기 때문에 좋은 방법은 아니다.

- Train과 Validation이 크다면 문제가 안될 수도 있다.

Stratified split

- 전체 데이터에 Train Dataset과 Validation Dataset의 비율을 유지하면서 뽑는 방법도 있다.

- 보통 8:2로 설정한다.

 

2-3. Cross Validation

- 여러 개의 Train과 Test 데이터셋을 만드는 방법이다.

- 각 쌍에 적합한 방법들을 적용한 후 점수를 매개 판단하는 방법이다.

Stratified K-Fold

- Fold별로 동일한 비율을 맞추도록 설계한 것이다.

- 비율을 유지시켜야 모델의 성능이 좋기 때문에 이 방법을 쓰는 것이 좋다.

- 보통 8:2로 설정한다.

Group K-Fold

- 같은 그룹이 동일한 Fold에 들어가지 않도록 설정하는 방법이다.

- 그룹이 항상 Fold의 개수보다 커야 한다.

Time series split

- 시간 순서대로 데이터셋을 설정하는 방법이다.

- 미래 데이터로 과거 데이터를 판단하지 않도록 하기 위해 사용하는 방법이다.

 

3. Reproducibility

3-1. Fix seed

머신러닝의 랜덤성 때문에 우리가 풀고자 하는 문제가 계속 바뀐다면, 모델의 성능을 측정하는 데 어려움이 생긴다.

→ 랜덤성을 제거하기 위해 시드(seed)를 고정한다.

 

 

4. Machine learning Workflow

 

 

 

 

 

© NAVER Connect Foundation. All Rights Reserved