작성
·
499
·
수정됨
0
선생님 안녕하세요. 두가지 질문이 있습니다.
검증데이터셋을 구성할 때, 학습데이터 내의 데이터로 검증 데이터셋을 구성하는 이유는 학습데이터셋에 대한 과적합을 확인하기 위해서 인가요?
그렇다면 다른 데이터셋으로 진행할 때도 학습데이터셋 내에서 검증 데이터셋을 구성하는 것이 맞는건가요?
학습,검증데이터셋을 나눠줄 때 사이킷런의 train_test_split 을 사용하는 이유는 단순히 데이터셋을 나누기에 적합한 함수이기 때문에 사용하는 것이죠? test data, valid data를 나누는데 함수 이름이 train_test_split이라서 헷갈리네요.
답변 1
1
안녕하십니까,
검증 데이터를 나눌 때 반드시 학습 데이터를 가지고 나눌 필요는 없습니다. 다만 별도의 검증 데이터가 준비되어 있지 않는 경우에는 일반적으로는 학습 데이터를 가지고 검증 데이터를 사용합니다.
제일 좋은 것은 학습 데이터, 검증 데이터, 테스트 데이터가 모두 따로 준비되면 좋습니다. 하지만 현실적으로는 데이터를 많이 구하지 못하는 경우가 많아서 학습 데이터가 있으면 이들중 일부를 검증 데이터로 활용하곤 합니다.
MNIST 데이터 세트는 학습과 테스트 데이터로 구성되어 있어서 검증 데이터를 위해 학습 데이터를 이용해 분리했을 뿐입니다.
네 맞습니다. train_test_split 을 사용하는 이유는 단순히 데이터셋을 나누기에 적합한 함수이기 때문에 사용하는 것입니다. 이름은 좀 헷갈릴수 있겠군요.
감사합니다.
좋은 강의와 빠르고 친절한 답변 감사합니다. 선생님 덕분에 큰 힘이 됩니다.