본문 바로가기

기초지식

Train dataset과 Test dataset (train test split)

train test split 

  • 모델 훈련에 사용되지 않는 데이터를 예측하는데 사용될 때 기계학습 알고리즘의 성능을 추정하는데 사용하기 위해 필요한 기능이다.
    • Train dataset: 기계 학습 모델로 정답을 맞추는 데 사용된다.
    • Test dataset: 적합한 머신러닝 모델을 평가하는 데 사용된다.
  • 모델을 훈련하는 데 사용되지 않은 새로운 데이터에 대한 기계 학습 모델의 성능을 추정하기 위한 목표가 있다.
  • 데이터가 충분히 클 경우 적합한 방법이다.
    • 데이터가 충분하지 않은 경우에는? k-fold cross validation 방식이 적합할 수 있다.

 

** 분류 모델에서는, train_test_split에서 'stratify' 파라미터를 설정해주면 클래스의 비율이 균형적으로 split된다. 

 

 

k-fold cross validation(교차검증)

 

  • k개의 fold를 만들어 진행하는 교차검증
  • 총 데이터 갯수가 적은 데이터셋에 대해 정확도를 향상시킬 수 있음
    • 이는 기존에 training/validation/test 세 개의 집단으로 분류하는 경우보다는, training/test로만 분류할 때 학습 데이터셋이 더 많기 때문이다.

 

 

 

https://machinelearningmastery.com/train-test-split-for-evaluating-machine-learning-algorithms/

 

https://yeko90.tistory.com/entry/what-is-stratify-in-traintestsplit

 

[sklearn] 'stratify' 의 역할(train_test_split)

[ic]train_test_split[/ic]에서 [ic]stratify[/ic]가 뭐 하는 녀석인지 헷갈리는가? 그렇다면 잘 들어왔다. 이번 포스팅에서는 [ic]stratify[/ic]를 미적용했을 때 어떤 문제가 발생하는지 알아보고, [ic]stratify[/ic]

yeko90.tistory.com

 

https://nonmeyet.tistory.com/entry/KFold-Cross-Validation%EA%B5%90%EC%B0%A8%EA%B2%80%EC%A6%9D-%EC%A0%95%EC%9D%98-%EB%B0%8F-%EC%84%A4%EB%AA%85

 

K-Fold Cross Validation(교차검증) 정의 및 설명

정의- K개의 fold를 만들어서 진행하는 교차검증 사용 이유- 총 데이터 갯수가 적은 데이터 셋에 대하여 정확도를 향상시킬수 있음- 이는 기존에 Training / Validation / Test 세 개의 집단으로 분류하는

nonmeyet.tistory.com

 

'기초지식' 카테고리의 다른 글

XGBoost  (0) 2024.05.09
Hyperparameter Optimization  (0) 2024.05.09
Random Forest  (0) 2024.05.08
Data Scaling  (0) 2024.05.08
One-Hot Encoding vs Label Encoding, Multicollinearity  (0) 2024.05.08