Answers.Body: <p>There are two possible forms of overfitting. First related to the training only (fitting weights) and second related to  architecture (fitting hyperparameters) and these two must be checked in two different stages. When you check performance of the given model you have two do this on unseen data, so you fit weights on training data and check it on validation (unseen to the weights fitting process) set and next you fit hyperparameters on validation set and check it on test (unseen to the hyperparameters fitting process) set.</p>
  
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2020-12-19T09:10:27.363Z
Answers.Text: Thanks. Upvoted. I see. Training data is for tuning weights. Validation data is for tuning hyperparameters. Did I understand correctly?
Answers.UserDisplayName: user781486
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2020-12-19T14:01:16.907Z
Answers.Text: and test set is to test it all. Simplified, but yes.
Answers.UserDisplayName: GKozinski
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2020-12-19T07:50:03.603Z
Answers.LastActivityDate: 2020-12-19T07:50:03.603Z
Answers.UserDisplayName: GKozinski
Answers.Body: <p>Usually we are splinting the training dataset because we want to fine tune, find the best hyper-parameters, for our model. If we combine the validation and training dataset given a network complex enough we could achieve perfect performance for the given task. But having very good performance on the training dataset does not mean our model is useful. It might be the case that our model is very good on the training dataset, but it fails to generalize, so when given samples outside of the training dataset the performance will significantly drop (this is called over-fitting). By splitting the dataset, we are testing how well our model is performing on new/unseen data.</p>
  
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2020-12-18T12:30:48.323Z
Answers.LastActivityDate: 2020-12-18T12:30:48.323Z
Answers.UserDisplayName: razvanc92
Body: <p>Sorry if I sound confused. I read that data to be fed to a machine are divided into training, validation and test data. Both training and validation data are used for developing the model. Test data is used only for testing the model and no tuning of the model is done using test data.</p>
  <p>Why is there a need to separate out training and validation data since both sets of data are for developing/tuning the model? Why not keep things simple and combine both data sets into a single one?</p>
  
Tags: <machine-learning><datasets>
Title: Why can't we combine both training and validation data, given that both types of data are used for developing the model?
UserDisplayName: user781486
ThreadText: # Why can't we combine both training and validation data, given that both types of data are used for developing the model?
  
  (Asked by: username_0 on 2020-12-18)
  
  Sorry if I sound confused. I read that data to be fed to a machine are divided into training, validation and test data. Both training and validation data are used for developing the model. Test data is used only for testing the model and no tuning of the model is done using test data.
  
  Why is there a need to separate out training and validation data since both sets of data are for developing/tuning the model? Why not keep things simple and combine both data sets into a single one?
  
  **Tags:** machine-learning, datasets
  
  ---
  
  ## 2 answers
  
  ### Answer by username_1 on 2020-12-19. Score: 1
  
  There are two possible forms of overfitting. First related to the training only (fitting weights) and second related to architecture (fitting hyperparameters) and these two must be checked in two different stages. When you check performance of the given model you have two do this on unseen data, so you fit weights on training data and check it on validation (unseen to the weights fitting process) set and next you fit hyperparameters on validation set and check it on test (unseen to the hyperparameters fitting process) set.
  
  > **Comments:**
  > **username_0**: Thanks. Upvoted. I see. Training data is for tuning weights. Validation data is for tuning hyperparameters. Did I understand correctly?  
  > **username_1**: and test set is to test it all. Simplified, but yes.  
  
  ---
  
  ### Answer by username_2 on 2020-12-18. Score: 1
  
  Usually we are splinting the training dataset because we want to fine tune, find the best hyper-parameters, for our model. If we combine the validation and training dataset given a network complex enough we could achieve perfect performance for the given task. But having very good performance on the training dataset does not mean our model is useful. It might be the case that our model is very good on the training dataset, but it fails to generalize, so when given samples outside of the training dataset the performance will significantly drop (this is called over-fitting). By splitting the dataset, we are testing how well our model is performing on new/unseen data.
  
  
  ---
  
  