23 votos

¿Qué tan malo es el ajuste de hiperparámetros fuera de la validación cruzada?

Sé que realizar el ajuste de hiperparámetros fuera de la validación cruzada puede dar lugar a estimaciones sesgadas de la validez externa, porque el conjunto de datos que se utiliza para medir el rendimiento es el mismo que se utilizó para ajustar las características.

Lo que me pregunto es lo grave que es este problema . Puedo entender cómo sería realmente malo para la selección de características, ya que esto le da un gran número de parámetros para ajustar. Pero ¿qué pasa si estás usando algo como LASSO (que sólo tiene un parámetro, la fuerza de regularización), o un bosque aleatorio sin selección de características (que puede tener algunos parámetros, pero nada tan dramático como añadir/eliminar características de ruido)?

En estos casos, ¿hasta qué punto puede ser optimista tu estimación del error de formación?

Agradecería cualquier información al respecto: estudios de casos, documentos, anécdotas, etc. Gracias.

EDITAR: Para aclarar no me refiero a estimar el rendimiento del modelo en los datos de entrenamiento (es decir, sin utilizar la validación cruzada en absoluto). Por "ajuste de hiperparámetros fuera de la validación cruzada" me refiero a utilizar la validación cruzada sólo para estimar el rendimiento de cada modelo individual, pero no incluyendo una exterior, segundo bucle de validación cruzada para corregir el sobreajuste dentro del procedimiento de ajuste de hiperparámetros (a diferencia del sobreajuste durante el procedimiento de entrenamiento). Véase, por ejemplo la respuesta aquí .

20voto

John Richardson Puntos 1197

Los efectos de este sesgo pueden ser muy grandes. Una buena prueba de ello son los concursos abiertos de aprendizaje automático que se celebran en algunas conferencias sobre el tema. Suelen constar de un conjunto de entrenamiento, un conjunto de validación y un conjunto de prueba. Los competidores no pueden ver las etiquetas del conjunto de validación ni del conjunto de prueba (obviamente). El conjunto de validación se utiliza para determinar la clasificación de los competidores en una tabla de clasificación que todo el mundo puede ver mientras se desarrolla la competición. Es muy común que los que encabezan la clasificación al final de la competición estén muy abajo en la clasificación final basada en los datos de prueba. Esto se debe a que han ajustado los hiperparámetros de sus sistemas de aprendizaje para maximizar su rendimiento en la tabla de clasificación y, al hacerlo, han sobreajustado los datos de la prueba. datos de validación ajustando su modelo. Los usuarios más experimentados prestan poca o ninguna atención a la tabla de clasificación y adoptan estimaciones de rendimiento imparciales más rigurosas para orientar su metodología.

El ejemplo de mi artículo (mencionado por Jacques) muestra que los efectos de este tipo de sesgo pueden ser del mismo tamaño que la diferencia entre los algoritmos de aprendizaje, por lo que la respuesta corta es no utilizar protocolos de evaluación del rendimiento sesgados si se está realmente interesado en averiguar qué funciona y qué no. La regla básica es "tratar la selección del modelo (por ejemplo, el ajuste de hiperparámetros) como una parte integral del procedimiento de ajuste del modelo, e incluirlo en cada pliegue de la validación cruzada utilizada para la evaluación del rendimiento".)

El hecho de que la regularización sea menos propensa al sobreajuste que la selección de características es precisamente la razón por la que LASSO, etc., son buenas formas de realizar la selección de características. Sin embargo, la magnitud del sesgo depende del número de características, del tamaño del conjunto de datos y de la naturaleza de la tarea de aprendizaje (es decir, hay un elemento que depende de un conjunto de datos concreto y que variará de una aplicación a otra). La naturaleza dependiente de los datos de esto significa que es mejor estimar el tamaño del sesgo mediante el uso de un protocolo insesgado y comparar la diferencia (informar de que el método es robusto al sobreajuste en la selección del modelo en este caso particular puede ser de interés en sí mismo).

G. C. Cawley y N. L. C. Talbot (2010), "Over-fitting in model selection and subsequent selection bias in performance evaluation", Journal of Machine Learning Research, 11, p.2079, sección 5.2).

7voto

cbeleites Puntos 12461
  • El sesgo del que hablas sigue estando relacionado principalmente con el sobreajuste.

  • Puede mantener el riesgo bajo evaluando sólo muy pocos modelos para fijar el hiperparámetro de regularización, además de optar por una complejidad baja dentro de la elección plausible.

  • Como señala @MarcClaesen, tienes la curva de aprendizaje trabajando a tu favor, lo que mitigará un poco el sesgo. Pero la curva de aprendizaje solo suele ser pronunciada en muy pocos casos, y entonces el sobreajuste es un problema mucho mayor.

Al final, yo esperaría que el sesgo dependiera mucho de

  • los datos (es difícil sobreajustar un problema univariante...) y
  • su la experiencia y el comportamiento de los modelos: Creo que es posible que decidas una complejidad más o menos adecuada para tu modelo si tienes suficiente experiencia tanto con el tipo de modelo como con la aplicación y si te comportas extremadamente bien y no cedes a la tentación de modelos más complejos. Pero, por supuesto, no te conocemos y, por tanto, no podemos juzgar lo conservadora que es tu modelización.
    Además, admitir que tu elegante modelo estadístico es altamente subjetivo y no te quedan casos para hacer una validación no es típicamente lo que quieres. (Ni siquiera en situaciones en las que se espera que el resultado global sea mejor).

No utilizo LASSO (como variable selección no tiene mucho sentido para mis datos por razones físicas), pero PCA o PLS suelen funcionar bien. Una cresta sería una alternativa cercana a LASSO y más apropiada para el tipo de datos. Con estos datos he visto un orden de magnitud más de clasificaciones erróneas en la "validación abreviada" frente a una validación cruzada independiente (externa) adecuada. En estas situaciones extremas, sin embargo, mi experiencia dice que la validación abreviada parecía sospechosamente buena, por ejemplo, 2% de clasificaciones erróneas => 20% con la validación cruzada adecuada.

Sin embargo, no puedo darle cifras reales que se apliquen directamente a su pregunta:

  • Hasta ahora, me preocupaban más otros tipos de "atajos" que ocurren en mi campo y conducen a fugas de datos, por ejemplo, la validación cruzada de espectros en lugar de pacientes (¡un sesgo enorme! Puedo mostrarte una clasificación errónea del 10% -> 70% = adivinar entre 3 clases), o no incluir el PCA en la validación cruzada (2 - 5% -> 20 - 30%).
  • En situaciones en las que tengo que decidir si la única validación cruzada que puedo permitirme debería gastarse en la optimización del modelo o en la validación, siempre me decido por la validación y fijo el parámetro de complejidad por experiencia. PCA y PLS funcionan bien como técnicas de regularización en ese sentido porque el parámetro de complejidad (# componentes) está directamente relacionado con las propiedades físico-químicas del problema (por ejemplo, puedo tener una buena estimación de cuántos grupos de sustancias químicamente diferentes espero que importen). Además, por razones físico-químicas, sé que los componentes deben parecerse en cierto modo a los espectros y, si tienen ruido, estoy sobreajustando. Pero la experiencia también puede estar optimizando la complejidad del modelo en un viejo conjunto de datos de un experimento anterior que es lo suficientemente similar en general como para justificar la transferencia de hiperparámetros y luego simplemente utilice el parámetro de regularización para los nuevos datos.
    De este modo, no puedo afirmar que tengo el modelo óptimo, pero sí una estimación razonable del rendimiento que puedo obtener.
    Y con el número de pacientes que tengo, de todos modos es imposible hacer comparaciones de modelos estadísticamente significativas (recuerde que mi número total de pacientes está por debajo del tamaño de muestra recomendado para estimar una proporción única [según la regla empírica que @FrankHarrell da aquí]).

¿Por qué no haces algunas simulaciones lo más parecidas posible a tus datos y nos cuentas qué pasa?


Sobre mis datos: Trabajo con datos espectroscópicos. Los conjuntos de datos suelen ser amplios: algunas decenas de casos independientes (pacientes; aunque normalmente muchas mediciones por caso. Ca. 10³ variantes en los datos brutos, que puedo reducir a 250, por ejemplo, aplicando el conocimiento del dominio para recortar las zonas no informativas de mis espectros y reducir la resolución espectral.

6voto

BillyJean Puntos 118

Si usted es sólo seleccionar el hiperparámetro para el LASSO, no es necesario un CV anidado. La selección del hiperparámetro se realiza en una interacción CV simple/plana.

Dado que tiene ya decidido para utilizar LASSO y dado que ya ha decidido qué características mantener y dar al algoritmo (el LASSO probablemente eliminará algunas de las características, pero esa es la optimización LASSO, no su decisión) lo único que queda es elegir la opción $\lambda$ hiperparámetro, y que hará con un CV plano/sencillo:

1) dividir los datos en conjuntos de entrenamiento y aprendizaje $L_i$ y conjuntos de pruebas $T_i$ y eligió el $\lambda^*$ que minimice el error medio para todos los $T_i$ cuando se entrena con el $L_i$ .

2) $\lambda^*$ es su elección de hiperparámetro. HECHO.

(Éste no es el único método para seleccionar hiperparámetros, pero es el más común; también existe el procedimiento de la "mediana", discutido y criticado por G. C. Cawley y N. L. C. Talbot (2010), "Over-fitting in model selection and subsequent selection bias in performance evaluation", Journal of Machine Learning Research, 11 , p.2079 sección 5.2.)

Lo que entiendo que estás preguntando es: ¿qué tan malo es utilizar el error que calculé en el paso 1 anterior (el error mínimo que me permite seleccionar $\lambda^*$ ) como estimación del error de generalización del clasificado con ese $\lambda^*$ para datos futuros? ¡¡¡Aquí se habla de estimación no de selección de hiperparámetros!!!

Conozco dos resultados experimentales en la medición del sesgo de esta estimación (en comparación con un verdadero error de generalización para conjuntos de datos sintéticos)

ambos de libre acceso.

Necesita un CV if anidado:

a) desea elegir entre un LASSO y otros algoritmos, especialmente si también tienen hiperparámetros

b) si desea informar de una estimación insesgada del error/precisión de generalización esperado de su clasificador final (LASSO con $\lambda^*$ ).

De hecho, el CV anidado se utiliza para calcular una estimación insesgada del error de generalización de un clasificador (con la mejor elección de hiperparámetros, pero no se sabe cuáles son los valores de los hiperparámetros). Esto es lo que le permite decidir entre el LASSO y digamos un SVM-RBF - el que tiene el mejor error de generalización debe ser elegido. Y este error de generalización es el que se utiliza para informar b) (lo cual es sorprendente, en b) ya se conoce el valor de la mejor hiperparámetro - $\lambda ^*$ - pero el procedimiento CV anidado no hace uso de esa información).

Por último, el CV anidado no es la única forma de calcular una estimación insesgada razonable del error de generalizaciónn esperado. Ha habido al menos otras tres propuestas

2voto

Marc Claesen Puntos 9818

Cualquier algoritmo de aprendizaje complejo, como SVM, redes neuronales, bosques aleatorios, ... puede alcanzar una precisión de entrenamiento del 100% si se les permite (por ejemplo, a través de una regularización débil/sin regularización), con un rendimiento de generalización absolutamente horrible como resultado.

Por ejemplo, utilicemos una SVM con núcleo RBF $\kappa(\mathbf{x}_i,\mathbf{x}_j) = \exp(-\gamma\|\mathbf{x}_i-\mathbf{x}_j\|^2)$ . Para $\gamma=\infty$ (o algún número ridículamente alto), la matriz del núcleo se convierte en la matriz unitaria. El resultado es un modelo con $100\%$ precisión del conjunto de entrenamiento y predicciones constantes del conjunto de prueba (por ejemplo, todas positivas o todas negativas, dependiendo del término de sesgo).

En resumen, es fácil acabar con un clasificador perfecto en el conjunto de entrenamiento que no ha aprendido absolutamente nada útil en un conjunto de prueba independiente. Así de malo es.

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