35 votos

En caret ¿cuál es la diferencia real entre cv y cv repetido?

Esto es similar a la pregunta Métodos de remuestreo de caretas Aunque realmente nunca se ha respondido a esta parte de la pregunta de forma consensuada.

la función de tren de caret ofrece cv y repeatedcv . Cuál es la diferencia en decir hacer:

MyTrainControl=trainControl(
    method = "cv",
    number=5,
    repeats=5
)

vs

MyTrainControl=trainControl(
   method = "repeatedcv",
   number=5,
   repeats=5
)

Comprendo cv rompe el conjunto en k-pliegues (parámetro number ), y luego comienza de nuevo y ejecuta los parámetros repeats número de veces.

Lo único que se me ocurre es que tal vez la regularidad cv con repeats utiliza los mismos índices exactos para los pliegues cada vez esencialmente ejecutando el cv en los mismos pliegues exactos cada vez, frente a quizás repeatedcv selecciona nuevos pliegues cada vez?

¿Puede alguien aclararlo?

0 votos

Me pregunto si hay más métodos también necesito una comprensión de nivel básico de cada uno, ¿hay algún lugar donde pueda encontrar eso? gracias.

0 votos

En la creación de pliegues múltiples, el código itera sobre múltiples veces (dadas por las repeticiones en el tren Control() sintaxis en R) para cada uno de los k pliegues cruzados (dados por el número). En el pliegue cruzado, mientras se utiliza CV, es un proceso de una sola vez en cada uno de los pliegues (establecidos mediante el uso de números en el tren control() ).

33voto

Xenph Yan Puntos 20883

Según el manual de caret, página 22 el parámetro repeats sólo se aplica cuando el method se ajusta a repeatedcv por lo que no se realiza ninguna repetición cuando el method se ajusta a cv . Así que la diferencia entre ambos métodos es, efectivamente, que repeatedcv repite y cv no lo hace.


Aparte: La repetición de una validación cruzada con exactamente la misma división dará exactamente el mismo resultado en cada repetición (suponiendo que el modelo esté entrenado de forma determinista), lo que no sólo es ineficiente, sino también peligroso cuando se trata de comparar los resultados de la validación para diferentes algoritmos de modelos de forma estadística. Así que tenga en cuenta esto si alguna vez tiene que programar una validación usted mismo.

1 votos

Enlace roto, ahora es cran.r-project.org/web/packages/caret/vignettes/caret.pdf además, ahora está en la página 4. sólo hay que buscar 'repeatedcv'

1 votos

El enlace del PDF ya no funciona. La siguiente URL parece ser el reemplazo. cran.r-project.org/web/packages/caret/vignettes/caret.html

5voto

user3571301 Puntos 11

Hay que reconocer que se trata de un MUY es un post antiguo, pero basado en los fragmentos de código proporcionados por user3466398, la diferencia es que repeatedcv hace exactamente eso: realiza repetidamente una validación cruzada de X pliegues en los datos de entrenamiento, es decir, si especifica 5 repeticiones de validación cruzada de 10 pliegues, realizará una validación cruzada de 10 pliegues en los datos de entrenamiento 5 veces, utilizando un conjunto diferente de pliegues para cada validación cruzada.

La razón para hacer esto, supongo, es permitir tener una precisión más exacta y robusta de las pruebas de validación cruzada, es decir, se puede informar de la precisión media del CV.

3voto

user55570 Puntos 251

aquí está el código real detrás de estos parámetros

https://github.com/topepo/caret/blob/a90ac016f8c8776562d53aa95204ca3624caae67/pkg/caret/R/selectByFilter.R#L55

y las funciones createFolds & createMultiFolds se encargan realmente de 'cv' y 'repeatedcv'

0 votos

Echa un vistazo a sus funciones.... github.com/tonglu/caret/blob/master/pkg/caret/R/

7 votos

¿Podría dar más contexto en su respuesta? Los enlaces son buenos, pero intentamos evitar las respuestas que no se sostienen por sí solas: los enlaces pueden desaparecer.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X