In k-fold crossvalidation, data is divided in k folds, then k-1 folds are taken for training and 1 fold is taken for validation.
This process is repeated k times, taking a different fold for validation each time, so we end with k different models and k different results (although the results should be very similar if everything is OK)
This is very useful to have an idea of the average performance of a classifier. Some validation folds may contain outliers which will give extreme results, but repeating for different validation sets solves this problem.
Now my question:
At the end I want a final model which is the one that I'll use to get the final results on the testing set, and the one that I'll end up using in production. Since in k-fold crossval I trained k different models, which one to I use as my "final" model?
- The one with better results?
- Do I train again a model this time using both train and validation sets as training?
How can I go from a crossvalidation to a final model?