O conjunto de testes e o conjunto de validação cruzada têm finalidades diferentes. Se você abandonar um deles, perde os benefícios:
Você não pode usar o conjunto de validação cruzada para medir o desempenho do seu modelo com precisão, porque você ajustará deliberadamente seus resultados para obter a melhor métrica possível, talvez centenas de variações de seus parâmetros. Portanto, é provável que o resultado da validação cruzada seja otimista demais.
Pelo mesmo motivo, você não pode descartar o conjunto de validação cruzada e usar o conjunto de teste para selecionar hiper parâmetros, pois é garantido que você estará superestimando o quão bom é o seu modelo. No mundo ideal, você usa o conjunto de testes apenas uma vez ou de maneira "neutra" para comparar diferentes experimentos.
Se você cruzar a validação, encontrar o melhor modelo e adicionar os dados de teste para treinar, é possível (e em algumas situações talvez muito provável) que seu modelo seja aprimorado. No entanto, você não tem como ter certeza de que isso realmente aconteceu e, mesmo que tenha acontecido, você não tem uma estimativa imparcial do que é o novo desempenho.
Ao assistir a muitas competições do Kaggle, minha experiência é que o ajuste ao teste pelo uso excessivo é algo real e afeta essas competições de maneira ampla. Muitas vezes, há um grupo de concorrentes que escalaram a tabela de classificação pública e selecionaram seu melhor modelo em teste (a tabela de classificação pública é efetivamente um conjunto de testes), embora não sejam tão detalhados na validação cruzada. . . esses concorrentes caem na tabela de classificação quando um novo conjunto de testes é introduzido no final.
Uma abordagem razoável é reutilizar (treinar + cv) os dados para treinar novamente usando os hiperparâmetros encontrados antes do teste. Dessa forma, você treina mais dados e ainda obtém uma medida independente de desempenho no final.
Se você deseja obter mais da validação cruzada, a abordagem usual é a validação cruzada k-fold . Um truque comum nas competições do Kaggle é usar a validação cruzada k-fold e, em vez de combinar novamente os dados em um conjunto de treinamento maior (train + cv), para agrupar ou empilhar os resultados da cv em um metamodelo.
Por fim, sempre verifique se suas divisões para validação e teste são robustas contra uma possível correlação dentro do seu conjunto de dados.