데이터란 사람이나 물건 등에 대한 사실을 나타내는 값. 인공지능에서 기본 재료이자 중요한 요소이다.
이 데이터들을 분할해야 하는 이유는 데이터셋을 분할하지 않고 학습한다면 해당 데이터셋에 대하여만 성능이 좋은 모델을 만들어지게 되고, 성능을 점검 할 수 없을 뿐만 아니라 실제로 적용해도 좋은 성능을 기대하지 못하게 된다. 그러므로 데이터셋을 분할하는 것이 굉장히 중요하다.
데이터셋을 어떻게 분할하면 좋을까?
가장 기본적인 분할법은 training set 80% / test set 20% 으로 나누는 것이다.
하지만 이렇게 나누게 된다면 모델의 성능 검정을 한번 밖에 할 수 없고 overfitting이 발생할 가능성이 높아지게 된다. 그렇기에 training set을 한번 더 분할하여 training set 60%/ validation set 20% / test set 20% 비율로 나누어 사용한다.
Training set은 온전히 모델의 학습을 위해 사용된다. 모델을 학습시키고, parameter feature 수정을 통해 성능을 높이는 작업 등
모델의 학습에 직접적으로 관여하지 않지만 test set을 거치기 전에 최종적으로 모델을 fine tuning을 하는데 사용된다. epoch를 몇 번 돌릴지 learning rate의 설정에 따라 모델 성능이 바뀔 수 있다.
최종적으로 모델 성능을 평가하기 위한 데이터셋이기 때문에 학습에 관여 X.
우선 무엇이 되고자 하는가를 자신에게 말하라 그리고 해야 할일을 하라 -에픽토테스