본문 바로가기

🤖AI/딥러닝

[딥러닝] train/dev/test sets

딥러닝 모델을 학습할 때 data를 train data, developement data, test data로 나눈다.

train sets

딥러닝 모델의 가중치 값을 조절하는데 사용되는 data

dev sets

모델 학습을 할 때 dev data의 error값도 같이 측정해보면 train data의 error값처럼 감소했다가 증가하는 경우가 발생할 수 있다. 이를 overfitting이 발생했다고 한다.

train data에만 과적합한 문제라면 overfitting이 발생할 수 있으므로 train data와 독립적인 development data를 train할 때 같이 사용한다.

test sets

train, dev data와 완전히 독립적인 test data를 이용해서 와전히 독립적으로 학습된 모델의 성능을 평가한다.

data set을 나누는 방법

data의 수가 100~10,000사이라면 보통 다음과 같은 비율로 data를 나눈다.

training/test = 70/30%

training/dev/test = 60/20/20%

 

빅데이터인 경우(data의 수 >=1,000,000)에는 다음과 같은 비율로 data를 나눈다.

training/dev/test = 99/1/1%

 

training data로는 big data를 사용해야 한다.

dev data와 test data는 같은 비율의 data를 가져야 한다.