train_test_split - (1)
Data Analyst

빅데이터 관련 자료/Dacon

train_test_split - (1)

carpe08 2021. 11. 20. 15:08
320x100
320x100

모델링 과정에서 가장 먼저 알아볼 것은 바로 train_test_split() 메소드입니다.

train_test_split() 메소드는 데이터 셋을 train_set과 test_set으로 손쉽게 분리할 수 있게 도와주는 메소드입니다.

 

train / test 데이터 셋을 분리하는 이유

먼저, train/test를 분리하는 목적에 대해 정확히 이해해야 합니다. 용어를 정확히 하자면 train/test가 아니라 train/validation이 맞는 표현입니다. 머신러닝 모델에 train 데이터를 학습 시킨 후 test 데이터를 모델로 예측했을 경우 성능이 생각보다 낮게 나오는 경우가 발생합니다. 이러한 현상을 보통 Overfitting 되었다고 합니다.

 

이미지 출처 : educative.io

즉, 현재 모델이 너무 학습데이터에 의존 되어 있어 이를 조금이라도 벗어난 케이스에 대해서는 예측율이 현저히 떨어진다고 이해하면 됩니다. 그렇기 때문에 Overfitting을 방지하는 것은 전체적인 모델 성능을 따져보았을 때 중요한 프로세스 중 하나입니다.

기존 train/test로 구분되어 있었던 데이터 셋을 train,/validation으로 일정 비율로 쪼갠 뒤 학습 시에는 train 셋으로 학습 후 validation 셋으로 학습한 모델을 평가해주는 것입니다.

만약 모델이 과적합 되었다면, validation 셋으로 검증시 모델의 성능이 나빠지는 것을 확인할 수 있으며, 이런 현상이 나타났을 때는 학습을 종료 시킵니다. 쉽게 이해해서 test 데이터 셋이 본 시험이라면 validation 데이터 셋은 퀴즈라고 이해하면 좋을 것 같습니다.

 

320x100
320x100