Qual é a diferença entre bootstrapping e validação cruzada?

21

Eu costumava aplicar a validação cruzada K-fold para uma avaliação robusta dos meus modelos de aprendizado de máquina. Mas estou ciente da existência do método de inicialização para esse fim também. No entanto, não vejo a principal diferença entre eles em termos de estimativa de desempenho.

Até onde eu vejo, o bootstrapping também está produzindo um certo número de subconjuntos aleatórios de treinamento + teste (embora de uma maneira diferente). Então, qual é o ponto, a vantagem de usar esse método no CV? A única coisa que pude descobrir é que, no caso de um bootstrap, poder-se-ia produzir artificialmente um número praticamente arbitrário de tais subconjuntos, enquanto no CV o número de instâncias é um tipo de limite para isso. Mas esse aspecto parece ser um incômodo muito pequeno.

Fredrik
fonte

Respostas:

17

A validação cruzada e a inicialização são métodos de reamostragem .

  • reinicializações de autoinicialização com substituição (e geralmente produz novos conjuntos de dados "substitutos" com o mesmo número de casos que o conjunto de dados original). Devido ao desenho com substituição, um conjunto de dados de inicialização pode conter várias instâncias dos mesmos casos originais e omitir completamente outros casos originais.
  • knx=nkk=n

  • Como o nome validação cruzada sugere, seu principal objetivo é medir (generalização) o desempenho de um modelo. Por outro lado, o bootstrapping é usado principalmente para estabelecer funções de distribuição empírica para um amplo espectro de estatísticas (amplo, variando, digamos, entre a variação da média e a variação dos modelos nos modelos de ensacamento ensacado).

  • O análogo do procedimento único de inicialização é chamado jackknifing (e na verdade é mais antigo que a inicialização).

  • O analógico de autoinicialização para cruzar as estimativas de validação do erro de generalização é chamado de estimativa fora de autoinicialização (porque os casos de teste são aqueles que foram deixados de fora do conjunto de treinamento com nova amostra de autoinicialização).

[validação cruzada vs. validação out-of-bootstrap] No entanto, não consigo ver a principal diferença entre eles em termos de estimativa de desempenho.

k

Existem várias tentativas para reduzir o viés de oob (.632-bootstrap, .632 + -bootstrap), mas se eles realmente melhorarão a situação depende da situação em questão.

Literatura:


A única coisa que pude descobrir é que, no caso de um bootstrap, poder-se-ia produzir artificialmente um número praticamente arbitrário de tais subconjuntos, enquanto no CV o número de instâncias é um tipo de limite para isso.

nk

  • Combinações CV sem substituição (para k <n que são muito mais do que as possibilidades normalmente avaliadas) vs. k(nk)k
  • combinações bootstrap / oob com substituição (que são novamente muito mais do que, digamos, 100 ou 1000 modelos substitutos que normalmente são avaliados)(2n1n)
cbeleites descontentes com o SX
fonte
3

Bootstrapping é qualquer teste ou métrica que se baseia em amostragem aleatória com substituição. É um método que ajuda em muitas situações, como validação do desempenho preditivo de um modelo, métodos de ensemble, estimativa de viés e variação do parâmetro de um modelo, etc. executando amostragem com substituição do conjunto de dados original e assumindo ao mesmo tempo que os pontos de dados que não foram escolhidos são o conjunto de dados de teste. Podemos repetir esse procedimento várias vezes e calcular a pontuação média como estimativa do desempenho do nosso modelo. Além disso, o Bootstrapping está relacionado aos métodos de treinamento do conjunto, porque podemos construir um modelo usando cada conjunto de dados de bootstrap e agrupar esses modelos em um conjunto usando a votação majoritária (para classificação) ou calculando a média (para previsões numéricas) para todos os esses modelos como resultado final.

A validação cruzada é um procedimento para validar o desempenho de um modelo e é feito dividindo os dados de treinamento em k partes. Assumimos que as partes k-1 são o conjunto de treinamento e a outra parte é o nosso conjunto de testes. Podemos repetir que k vezes diferentemente, mantendo sempre uma parte diferente dos dados. Finalmente, tomamos a média das pontuações k como nossa estimativa de desempenho. A validação cruzada pode sofrer viés ou variação. Aumentando o número de divisões, a variação também aumentará e o viés diminuirá. Por outro lado, se diminuirmos o número de divisões, o viés aumentará e a variação diminuirá.

Em resumo, a validação cruzada divide o conjunto de dados disponível para criar vários conjuntos de dados, e o método Bootstrapping usa o conjunto de dados original para criar vários conjuntos de dados após a nova amostragem com substituição. A inicialização não é tão forte quanto a validação cruzada quando é usada para validação de modelo. Bootstrapping é mais sobre a construção de modelos de conjuntos ou apenas a estimativa de parâmetros.

Christos Karatsalos
fonte
2

A validação cruzada é uma técnica que visa ver quão bem seu modelo se generaliza em dados que não foram treinados. Não afeta os resultados do seu algoritmo, apenas os avalia .

Bootstrapping é um método Ensemble que agrega as saídas de vários modelos, como Árvores de Decisão, para produzir uma saída média . Tecnicamente falando, reduz a variação de um algoritmo de classificação baseado em um único modelo, uma vez que calcula a média da saída sobre as saídas de várias variantes da mesma estrutura de modelo (com parâmetros diferentes). Portanto, altera o desempenho do algoritmo de classificação, não o avalia .

Em outras palavras : a validação cruzada avalia quão bem um algoritmo se generaliza, enquanto o bootstrapping realmente ajuda o algoritmo a generalizar melhor.

Na verdade, você pode usar a validação cruzada em um modelo de inicialização para ver quão bem generaliza.

pcko1
fonte
3
Isso é ensacamento, não bootstrapping, certo?
elemolotiv
0
  • Validação cruzada: forneça estimativas do erro de teste.
  • Bootstrap: fornece o erro padrão das estimativas.
Hangyu Tian
fonte