¿Cómo se aplica la validación cruzada a la regresión logística? Quiero evaluar la precisión de un modelo de regresión logística en un conjunto de datos.

Primero, le preguntaría exactamente qué hizo cuando dice que repitió la muestra del 80% 5 veces. Si realizó un muestreo aleatorio cada vez, eso no se denomina validación cruzada. Esto se debe a que es bastante posible que las cinco muestras del 80% contengan conjuntos muy similares de puntos de datos. La forma correcta de hacer una validación cruzada 5 veces es:

  • Divida el conjunto de datos en 5 conjuntos de igual tamaño.
  • Reserve uno de los 5 juegos para la validación y use los otros 4 juegos para el entrenamiento. Ajuste su modelo y mida las métricas requeridas.
  • Repita reservando uno diferente de los 5 conjuntos para la validación y los otros 4 para el entrenamiento. Esto le dará un total de 5 corridas para ajustar su modelo y calcular las métricas.

Cuando tiene muy pocos puntos de datos, debe usar la validación cruzada “dejar-k-fuera” en lugar de la validación cruzada “k-fold”, pero son esencialmente lo mismo. Aquí hay un enlace a un artículo sobre validación cruzada del Prof. Rob Hyndman, que encontré muy útil cuando estaba aprendiendo al respecto: ¿Por qué cada estadista debería saber sobre la validación cruzada

Con respecto a qué métricas usar y cómo usarlas: recuerde que el objetivo principal de la validación cruzada es evitar el sobreajuste. Elija sus métricas en consecuencia y ajuste su modelo en función de la suma (o promedio, como usted menciona) de las métricas en las k ejecuciones. Un ejemplo es: si ejecuta la selección del modelo utilizando la selección hacia adelante basada en AIC, calcule el AIC total de cada conjunto de entrenamiento sobre todas las k ejecutadas para cada atributo del modelo restante antes de elegir el atributo para agregar al modelo.

Es más probable que esté utilizando la validación cruzada solo para verificar su modelo después de desarrollarlo. En este caso, vería la suma o la media de la métrica de rendimiento en los k conjuntos de validación. Cabe señalar que la varianza de la métrica a través de las k carreras es tan importante como la media : si hay un sobreajuste, su rendimiento será alto en algunas muestras y pobre en otras. Un buen modelo debe mostrar un rendimiento similar en todas las muestras.

El área bajo la curva ROC es una buena métrica para usar en la validación cruzada de un modelo de regresión logística, pero le recomendaría que verifique también la Concordancia (explicada muy bien en esta página: Interpretación de la estadística de concordancia de un modelo de regresión logística: relación con la varianza y odds ratio de una variable explicativa continua).

Como se trata de aprendizaje supervisado, la forma más precisa y confiable de hacer una validación cruzada es la técnica llamada validación cruzada K-fold, donde divide los datos de entrenamiento en K subconjuntos. Luego, realiza la iteración K veces sobre estos subconjuntos K, de modo que el subconjunto con el mismo índice que el número de iteración es su prueba de validación y los subconjuntos K-1 restantes son su prueba de entrenamiento.

Por lo tanto, en cada iteración entrena a su clasificador con los subconjuntos de entrenamiento K-1 y luego calcula la precisión utilizando el conjunto restante, y guarda esta precisión en una matriz unidimensional con elementos K, un elemento para cada iteración. Al final, solo calcula el promedio de estos números de precisión. En la regresión logística, puede usar diferentes puntajes para medir la precisión. Los más utilizados son 0–1 pérdida, puntaje F, puntaje Z, que elija según sus necesidades. Ahora, tiene una estimación imparcial de su error de generalización. Además, también es importante cómo elegirá el valor para K. Si tiene suficientes ejemplos de entrenamiento, es bueno tener K = 10, pero por otro lado, podría ser computacionalmente costoso hacerlo.

Recuerde, hace esta iteración solo para un valor de sus hiperparámetros en el modelo, para estimar el error de generalización para ese valor particular del hiperparámetro. Por ejemplo, si usa la regularización de Ridge, para un rango de valores para el coeficiente de regularización lambda, puede realizar el paso de validación de K-cross. Al final, traza la precisión del entrenamiento y la precisión de las pruebas en función del hiperparámetro lambda, y en función de esto puede elegir el mejor valor para lambda.

Al final, cuando tenga el mejor ajuste para los hiperparámetros, en su conjunto de datos de prueba del 20%, puede realizar cualquier medida de precisión, puede dibujar curvas ROC, Matriz de confusión, puede trazar el comercio de Precisión-Recuperación fuera y así sucesivamente.

Por lo que sé,

Si cambia su conjunto de entrenamiento y prueba antes de cada carrera, de modo que diferentes subconjuntos de datos disponibles se conviertan en un conjunto de entrenamiento y conjunto de prueba para cada carrera, mientras se mantiene la relación 80-20, esto se llama 5 veces validación cruzada.

4 partes de los datos – va para entrenamiento
1 parte de los datos – va para probar

Recuerde, esto nuevamente es parte de toda la información que tiene. La precisión informada de esto es la precisión de la validación cruzada. Utiliza el modelo que dio el mejor rendimiento en CV en los datos de prueba reales.

Por ejemplo,
Suponga que tiene 120 muestras. Tome las primeras 100 muestras como conjunto de entrenamiento y validación cruzada, mientras que las últimas 20 serán el conjunto de prueba.

Para la primera ejecución, las primeras 80 muestras irían a entrenamiento y las últimas 20 a prueba
Segunda carrera, 21-100 va para entrenamiento mientras 1-20 va para pruebas
tercera carrera 1-20 ans 41-100 va para entrenamiento mientras que 21-40 va para prueba
Cuarta carrera 1-40 y 61-100 para entrenamiento mientras que el resto para pruebas
Última carrera, 1-60 y 81-100 para entrenamiento, mientras que el resto para pruebas.

Calcule la precisión de las cinco ejecuciones e informe la precisión promedio.

Puntos para garantizar:
1. La proporción del número de muestras de entrenamiento y prueba debe ser la misma para todas las carreras.
2. El conjunto de entrenamiento y prueba para la próxima carrera debe ser diferente de lo que teníamos en la carrera anterior.
3. Además, ninguna muestra del conjunto de entrenamiento debe ir al conjunto de prueba
4. Los conjuntos de entrenamiento y prueba pueden contener muestras aleatorias, es decir, en lugar de 1-80 de forma continua para el entrenamiento, podemos considerar 8 muestras aleatorias de cada 10 muestras, pero los primeros 3 puntos deben asegurarse al hacerlo.

Puede usar la validación cruzada en su conjunto de datos, por ejemplo en Python:

predicho = cross_validation.cross_val_predict (logreg, X_train, t_train, cv = 10)
print (“la precisión de la validación cruzada es”, metrics.accuracy_score (t_train, predicho) * 100)

donde logreg es un objeto de LogisticRegression de scikit-learn: aprendizaje automático en Python.

X_train y t_train son 2 conjuntos de subconjuntos de datos de entrenamiento. precision_score es una estimación de precisión para la clasificación de etiquetas múltiples.

También le sugiero que busque la validación cruzada de K-Fold, combina los pasos de mezcla aleatoria de datos y validación cruzada eligiendo K “pliegues” dentro del mismo conjunto de datos, es decir, si su relación de tren a prueba es 80:20, entonces usted Puede ir por 5 pliegues.

¿Eso se llama validación cruzada?

¡No! Recuerde: el conjunto de pruebas es sagrado. Una vez que prueba su modelo en el conjunto de prueba, no puede regresar y ajustarlo. La validación cruzada se realiza en el conjunto de entrenamiento, para que pueda cambiar los parámetros de su modelo después sin el riesgo de sobreajustarlo; vea, por ejemplo, cómo se explica aquí k-fold CV.

More Interesting

¿Cuáles son algunos métodos de aprendizaje automático supervisados ​​y no supervisados ​​para trabajar con conjuntos de datos que tienen características muy grandes y un bajo número de muestras?

¿Cómo explicaría la desigualdad de Hoeffding y, como consecuencia natural, la dimensión Vapnik Chervonenkis a un niño de diez años?

Cómo calcular el factor de escala 1 / z en la clasificación de Naive Bayes

¿Cómo se puede usar el aprendizaje profundo para la detección de eventos anormales en los videos?

¿Cuáles son algunos ejemplos del mundo real de cómo y / o dónde se utilizan los algoritmos?

¿Cómo es trabajar en el equipo de Machine learning / Data Mining?

¿Cuál es el flujo de trabajo típico para usar el aprendizaje profundo para resolver un problema?

¿Es cierto que la cantidad de datos es, con mucho, la ventaja competitiva más importante para las empresas de aprendizaje automático (por ejemplo, en automóviles autónomos)?

¿Cuáles fueron las principales conclusiones del tutorial de Richard Sutton sobre el aprendizaje por refuerzo en NIPS 2015?

¿Cómo puedo entrenar a un clasificador de imágenes para detectar mi propia cara de un conjunto de datos de 16,000 imágenes?

¿Es posible hacer una selección de características para las tareas de regresión por XGBoost?

¿Cuál es la diferencia entre ajuste de curva y regresión?

¿Debo aprender R o Spark para computación de alto rendimiento?

¿Es posible o hay algún documento sobre el ajuste de hiperparámetros usando aprendizaje de refuerzo o regresión?

¿Cuál es la diferencia entre la retropropagación y la retropropagación a través del tiempo?