Bamboo is coming

데이터 세트 분리 Data set split 본문

인공지능 개념

데이터 세트 분리 Data set split

twenty 2023. 8. 4. 09:58

train - 학습용

validation - 하이퍼파라미터 조정 및 모델 선택

test - 모델 평가, 다양한 행렬을 사용해 모델을 평가한다. (혼동행렬 등)

 

Data set split 방법

Cross validation(교차검증)

데이터를 여러 번 반복해서 나누고 여러 모델을 학습하여 성능을 평가하는 방법

데이터를 여러 번 나눈 것의 평균적인 성능을 계산하면, 한 번 나누어서 학습하는 것에 비해 일반화된 성능을 얻을 수 있다.

 

K-fold cross validation

가장 널리 사용되는 교차 검증 방법의 하나로, 데이터를 k개로 분할한 뒤, k-1개를 학습용 데이터 세트로, 1개를 평가용 데이터 세트로 사용하는데, 이 방법을 k번 반복하여 k개의 성능 지표를 얻어내는 방법이다. 

k=5인 경우를 예로 들어 분할 방법을 알아보자. 먼저 k=5로 설정하는 경우, 데이터를 폴드(fold)라고 하는 거의 비슷한 크기의 부분 집합 다섯 개로 나눈다. 그다음 일련의 모델들을 만든다. 첫 번째 모델은 첫 번째 폴드를 평가용 데이터셋으로 사용하고, 두 번째부터 다섯 번째까지의 폴드(4개의 폴드)를 학습용 데이터셋으로 사용한다. 그다음 모델을 두 번째 폴드를 평가용, 1, 3, 4, 5 폴드를 학습용 데이터셋으로 사용한다. 이후도 마찬가지로 수행하여 총 5개의 정확도 값을 얻게 된다.

 

 

 

 

Stratified k-fold(계층적 k-fold)

 

 

 

https://076923.github.io/posts/Python-pytorch-11/

 

Python Pytorch 강좌 : 제 11강 - 데이터 세트 분리(Data Set Split)

데이터 세트 분리(Data Set Split)

076923.github.io

https://yngie-c.github.io/machine%20learning/2020/05/01/val_eval/

 

모델 검증과 평가 (Validation & Evaluation) · Data Science

가지고 있는 데이터셋을 학습 데이터와 테스트 데이터로 왜 나누어야 하는 지를 설명했을 때 나왔던 수험생을 다시 데려와 봅시다. 이전 게시물에서는 수능처럼 학생을 최종적으로 평가하기 위

yngie-c.github.io

https://for-my-wealthy-life.tistory.com/19

 

validation set이란? test set과의 차이점과 사용 방법

여태까지 공부를 할 때는 train set과 test set 두개로만 데이터를 나누었다. 다만 이렇게 train, test 두개로만 분리하는 것은 기초적인 수준이고, 보통 현업에서 모델을 만들 때는 train, test, validation set

for-my-wealthy-life.tistory.com

https://wkddmswh99.tistory.com/10

 

[머신러닝&딥러닝] Train / Validation / Test 의 차이

머신러닝에서 '어떤 모델을 학습시킨다'라는 말은 '적절한 파라미터를 찾는다'로 해석할 수 있습니다. 학습 목표는 보통 Cost function을 최소화시키는 것입니다. 이번 챕터에서 나오는 신경망 학습

wkddmswh99.tistory.com

https://scikit-learn.org/stable/modules/cross_validation.html

http://www.incodom.kr/k-%EA%B2%B9_%EA%B5%90%EC%B0%A8_%EA%B2%80%EC%A6%9D

 

 

 

 

 

 

Comments