CARET utilizará automáticamente una cuadrícula de ajuste preespecificada para construir varios modelos antes de seleccionar un modelo final y luego entrenar el modelo final en los datos de entrenamiento completos. Puedo suministrar mi propia cuadrícula de ajuste con solo una combinación de parámetros. Sin embargo, incluso en este caso, CARET "selecciona" el mejor modelo entre los parámetros de ajuste (aunque solo hay uno en este caso), y luego ajusta el modelo final a todos los datos de entrenamiento. Este es un paso adicional que me gustaría evitar.
¿Cómo puedo simplemente saltear el paso de búsqueda de modelos a través de variaciones en la cuadrícula de ajuste y forzar a CARET a construir sobre todos los datos de entrenamiento (aparte de llamar directamente a la biblioteca de modelos subyacente)?
Respuestas:
Puedes especificar
method="none"
entrainControl
. Por ejemplo:No estoy seguro de cuándo se implementó esto.
fuente
La mejor manera sería suministrar explícitamente el marco de datos tuneGrid. Por ejemplo, el bosque aleatorio tiene solo un parámetro de ajuste, 'mtry', que controla el número de características seleccionadas para cada árbol.
Para establecer mtry en un valor específico, puede elegir el valor predeterminado randomForest (? RandomForest) haga esto:
donde M es el único valor del parámetro de ajuste que desea usar.
para múltiples parámetros de ajuste, haga esto:
fuente
method="none"
es la mejor solución.No creo que sea posible (al menos no era posible desde hace unas pocas versiones). Se puede reducir el impacto en el rendimiento configurando una sola partición de remuestreo en los datos de entrenamiento (pero caret aún entrenaría un modelo dos veces)
Esto suena como una característica útil para tener, así que haría ping al autor del paquete.
fuente