Definição estendida
Validação cruzada (cross-validation, CV) é uma técnica de avaliação de modelos preditivos que particiona o dataset em subconjuntos (folds) e treina o modelo vezes, alternando a cada vez qual fold serve de validação. A estimativa final de erro é a média sobre os folds:
A formalização canônica é Stone (1974, Journal of the Royal Statistical Society), que provou propriedades teóricas da técnica para seleção de modelo. Kohavi (1995) ofereceu a comparação empírica seminal entre -fold CV e bootstrap para estimação de erro, estabelecendo como convenção padrão por equilibrar viés e variância. Variantes incluem leave-one-out CV (, robusto mas computacionalmente caro), stratified -fold (preserva proporção de classes em cada fold para problemas desbalanceados), e nested CV (CV externo para avaliação + CV interno para tuning, evitando otimismo na estimativa). Repeated -fold roda múltiplas vezes com seeds diferentes para reduzir variância da estimativa.
Quando se aplica
Validação cruzada é apropriada em datasets pequenos a médios (centenas a dezenas de milhares de exemplos) onde uma divisão treino/teste fixa seria instável demais. É padrão em pesquisa acadêmica de ML aplicado, em comparações de modelos candidatos, e em tuning de hiperparâmetros via GridSearchCV ou RandomizedSearchCV. Stratified -fold é exigido em classificação com classes desbalanceadas. Nested CV é a abordagem rigorosa quando o objetivo é simultaneamente selecionar modelo e estimar performance — evita o viés otimista de tunar e avaliar no mesmo conjunto. Em concursos de ML (Kaggle), CV bem-projetada é diferencial entre soluções competitivas e sub-ótimas.
Quando NÃO se aplica
Não se aplica em séries temporais — divisão aleatória vaza informação do futuro para o passado; alternativas adequadas são time series split, blocked CV, ou rolling-origin. Não se aplica em dados altamente agrupados sem agrupamento explícito por sujeito (group -fold é a alternativa). Em datasets enormes onde o custo computacional de treinos é proibitivo, divisão fixa treino/validação/teste é mais prática. Não substitui validação externa em domínio diferente — CV mede generalização dentro do mesmo dataset, não para populações ou contextos distintos.
Aplicações por área
— Saúde e biomédicas: CV estratificado é padrão em ML clínico; nested CV em estudos rigorosos de seleção de biomarcadores. — NLP e visão computacional: CV usado em fase de prototipagem; comparações finais em datasets grandes (GLUE, ImageNet) usam splits fixos. — Bioinformática: CV cuidadoso é essencial em problemas com poucas amostras e muitas features (genômica, proteômica). — Finanças e econometria: CV adaptado para séries temporais (time series split) substitui CV aleatório.
Armadilhas comuns
A primeira armadilha é fazer tuning de hiperparâmetros e estimação de erro no mesmo CV — produz estimativa otimista por explorar o conjunto de validação repetidamente. Nested CV é a correção. A segunda é ignorar agrupamento natural dos dados: CV aleatório com múltiplas observações por sujeito gera vazamento; group -fold resolve. A terceira é aplicar CV padrão em séries temporais — viola a ordem cronológica essencial. A quarta é confiar em CV com pequeno em dataset pequeno: em produz folds de tamanho 10 com alta variância. Aumentar ou usar leave-one-out em datasets pequenos é mais seguro. A quinta é usar CV para estimar performance em produção — CV mede generalização para amostras da mesma distribuição; mudanças de distribuição em produção não são capturadas, e validação externa é necessária.