¿Cuáles son algunas de las desventajas de la optimización de hiperparámetros bayesianos?

9

Soy bastante nuevo en el aprendizaje automático y las estadísticas, pero me preguntaba por qué la optimización bayesiana no se refiere con mayor frecuencia en línea cuando se aprende el aprendizaje automático para optimizar los hiperparámetros de su algoritmo. Por ejemplo, utilizando un marco como este: https://github.com/fmfn/BayesianOptimization

¿La optimización bayesiana de sus hiperparámetros tiene alguna limitación o desventaja importante sobre técnicas como la búsqueda de cuadrícula o la búsqueda aleatoria?

EtienneT
fuente
3
No hay almuerzo gratis en búsqueda y optimización . En general, a menos que la evaluación de la función de costos sea bastante costosa y la dimensionalidad del problema sea algo pequeña, BO generalmente no es la respuesta. El campo de la optimización matemática no quedó obsoleto debido al descubrimiento de procesos gaussianos.
usεr11852
3
Grandes respuestas Pero, ¿por qué los publicas en los comentarios?
Jan Kukacka
@ JanKukacka Buen punto. He movido mis comentarios a una respuesta.
Sycorax dice Reinstate Monica el

Respuestas:

11
  1. los resultados son sensibles a los parámetros del modelo sustituto, que generalmente se fijan en algún valor; esto subestima la incertidumbre; de lo contrario, debe ser completamente bayesiano y marginarse sobre las distribuciones de hiperparámetros, lo que puede ser costoso y difícil de manejar.
  2. se necesitan una docena de muestras para obtener una buena superficie sustituta en 2 o 3 dimensiones del espacio de búsqueda; La creciente dimensionalidad del espacio de búsqueda requiere aún más muestras
  3. La optimización bayesiana en sí misma depende de un optimizador para buscar en la superficie sustituta, que tiene sus propios costos: este problema es (con suerte) más barato de evaluar que el problema original, pero sigue siendo un problema de optimización no convexo con restricciones de caja (es decir, ¡difícil!)
  4. estimar el modelo BO en sí tiene costos

Para decirlo de otra manera, BO es un intento de mantener el número de evaluaciones de funciones al mínimo, y obtener el mayor rendimiento de cada evaluación. Esto es importante si realiza pruebas destructivas o simplemente realiza una simulación que requiere una cantidad obscena de tiempo para ejecutarse. Pero en todos los casos, excepto en los más caros, ¡ aplique la búsqueda aleatoria pura y llámela al día ! (O LIPO si su problema es susceptible a sus suposiciones). Puede ahorrarle muchos dolores de cabeza, como la optimización de su programa Bayesian Optimization.

Sycorax dice reinstalar a Mónica
fuente