Estou tentando aprender vários métodos de validação cruzada, principalmente com a intenção de aplicar a técnicas de análise multivariada supervisionada. Dois que eu encontrei são as técnicas de validação cruzada K-fold e Monte Carlo. Eu li que o K-fold é uma variação de Monte Carlo, mas não tenho certeza de entender completamente o que compõe a definição de Monte Carlo. Alguém poderia explicar a distinção entre esses dois métodos?
29
Respostas:
Validação cruzada k -Foldk
Suponha que você tenha 100 pontos de dados. Para validação cruzada fold, esses 100 pontos são divididos em k 'dobras' de tamanho igual e mutuamente exclusivas. Para k = 10, você pode atribuir os pontos 1 a 10 para dobrar # 1, 11-20 para dobrar # 2 e assim por diante, terminando atribuindo os pontos 91-100 para dobrar # 10. Em seguida, selecionamos uma dobra para atuar como o conjunto de testes e usamos as dobras k - 1 restantes para formar os dados do treinamento. Na primeira execução, você pode usar os pontos 1 a 10 como o conjunto de testes e 11 a 100 como o conjunto de treinamento. A próxima execução usaria os pontos 11 a 20 como o conjunto de teste e treinaria nos pontos 1 a 10 mais 21 a 100 e assim por diante, até que cada dobra seja usada uma vez como conjunto de teste.k k k k−1
Validação Cruzada de Monte-Carlo
Monte Carlo funciona de maneira um pouco diferente. Você seleciona aleatoriamente (sem substituição) uma fração de seus dados para formar o conjunto de treinamento e depois atribui o restante dos pontos ao conjunto de teste. Esse processo é repetido várias vezes, gerando (aleatoriamente) novos treinamentos e partições de teste a cada vez. Por exemplo, suponha que você optou por usar 10% dos seus dados como dados de teste. Em seguida, seu conjunto de testes no representante nº 1 pode ser os pontos 64, 90 , 63, 42 , 65, 49, 10, 64, 96 e 48. Na próxima execução, seu conjunto de testes pode ser 90 , 60, 23, 67, 16, 78, 42 , 17, 73 e 26. Como as partições são feitas independentemente para cada execução, o mesmo ponto pode aparecer no conjunto de testes várias vezes,qual é a principal diferença entre Monte Carlo e validação cruzada .
Comparação
Cada método tem suas próprias vantagens e desvantagens. Sob validação cruzada, cada ponto é testado exatamente uma vez, o que parece justo. No entanto, a validação cruzada explora apenas algumas das maneiras possíveis de particionar seus dados. Monte Carlo permite explorar partições um pouco mais possíveis, embora seja improvável que você obtenha todas elas - existem(10050)≈1028 possible ways to 50/50 split a 100 data point set(!).
Se você estiver tentando fazer inferência (ou seja, comparar estatisticamente dois algoritmos), calcular a média dos resultados de uma execução de validação cruzada vezes fornece uma estimativa (quase) imparcial do desempenho do algoritmo, mas com alta variação (como você espera ter apenas 5 ou 10 pontos de dados). Como você pode, em princípio, executá-lo pelo tempo que desejar / puder pagar, a validação cruzada de Monte Carlo pode fornecer uma estimativa menos variável, porém mais tendenciosa.k
Algumas abordagens fundem as duas, como na validação cruzada 5x2 (veja Dietterich (1998) para a idéia, embora eu ache que houve algumas melhorias desde então) ou corrigindo o viés (por exemplo, Nadeau e Bengio, 2003 ) .
fonte
Vamos supor que é o tamanho do conjunto de dados, k é o número dos subconjuntos k- fold, n t é o tamanho do conjunto de treinamento en v é o tamanho do conjunto de validação. Portanto, N = k × n v para validação cruzada k- fold e N = n t + n v para validação cruzada Monte Carlo.N k k nt nv N=k×nv k N=nt+nv
validação cruzada k -k fold (kFCV) divide os pontos de dados em k subconjuntos mutuamente exclusivos de tamanho igual. O processo deixa de fora um dos k subconjuntos como um conjunto de validação e treina nos subconjuntos restantes. Esse processo é repetido k vezes, deixando de fora um dos k subconjuntos de cada vez. O tamanho de k pode variar de N a 2 ( k = N é chamado de validação cruzada de exclusão única). Os autores em [2] sugerem definir k = 5 ou 10 .N k k k k k N 2 k=N k=5 10
Monte Carlo validação cruzada (MCCV) simplesmente divide os pontos de dados nos dois subconjuntos n t e n v por amostragem, sem reposição, n t os pontos de dados. O modelo é treinado no subconjunto n t e validado no subconjunto n v . Existe ( NN nt nv nt nt nv conjuntos de treinamento exclusivos, mas o MCCV evita a necessidade de executar muitas iterações. Zhang [3] mostra que a execução do MCCV paraiteraçõesN2tem resultados próximos da validação cruzada em todos(N(Nnt) N2 conjuntos de treinamento exclusivos. Deve-se notar que a literatura carece de pesquisa para N. grande (Nnt)
A escolha de e n t afeta o trade-viés / variância. Quanto maior k ou n t , menor o viés e maior a variação. Conjuntos de treinamento maiores são mais semelhantes entre as iterações, portanto, se ajustam demais aos dados de treinamento. Veja [2] para mais informações sobre esta discussão. O viés e a variação do kFCV e do MCCV são diferentes, mas o viés dos dois métodos pode ser igualado escolhendo níveis apropriados de k e n t . Os valores do viés e variância para ambos os métodos são mostrados em [1] (este artigo refere-se ao MCCV como modelo de teste de aprendizado repetido).k nt k nt k nt
[1] Burman, P. (1989). Um estudo comparativo da validação cruzada ordinária, validação cruzada fold e os métodos repetidos do modelo de teste de concessão. Bometrika 76 503-514.v
[2] Hastie, T., Tibshirani, R. e Friedman, J. (2011). Os elementos do aprendizado estatístico: mineração de dados, inferência e previsão. Segunda ed. Nova York: Springer.
[3] Zhang, P. (1993). Seleção de modelo através da validação cruzada Muiltfold. Ann. Stat. 21 299-313
fonte
As outras duas respostas são ótimas, vou apenas adicionar duas imagens e um sinônimo.
Validação cruzada K-fold (kFCV):
Validação cruzada Monte Carlo (MCCV) = Validação aleatória repetida de subamostragem (RRSSV):
Referências:
As imagens são de (1) ( páginas 64 e 65 ), e o sinônimo é mencionado em (1) e (2).
(1) Remesan, Renji e Jimson Mathew. Modelagem Orientada a Dados Hidrológicos: Uma Abordagem de Estudo de Caso . Vol. 1. Springer, 2014.
(2) Dubitzky, Werner, Martin Granzow e Daniel P. Berrar, orgs. Fundamentos da mineração de dados em genômica e proteômica . Springer Science & Business Media, 2007.
fonte