¿Ventajas de la optimización de enjambre de partículas sobre la optimización bayesiana para el ajuste de hiperparámetros?

18

Existe una importante investigación contemporánea sobre la optimización bayesiana (1) para ajustar los hiperparámetros ML. La motivación principal aquí es que se requiere un número mínimo de puntos de datos para tomar decisiones informadas sobre qué puntos vale la pena intentar (las llamadas a funciones objetivas son caras, por lo que hacer menos es mejor) porque entrenar un modelo requiere mucho tiempo, algunos modestamente Los grandes problemas de SVM en los que he trabajado pueden tardar entre minutos y horas en completarse.

Por otro lado, Optunity es una implementación de enjambre de partículas para abordar la misma tarea. No estoy abrumadoramente familiarizado con PSO, pero parece que debe ser menos eficiente en el sentido de que requiere un mayor número de puntos de prueba y, por lo tanto, evaluaciones de funciones objetivas, para evaluar la superficie del hiperparámetro.

¿Me estoy perdiendo un detalle clave que hace que PSO prefiera a BO en el contexto de aprendizaje automático? ¿O la elección entre los dos siempre es inherentemente contextual para la tarea de ajuste de hiperparámetros?


(1) Shahriari et al, "Sacando al ser humano del círculo: una revisión de la optimización bayesiana".

Sycorax dice reinstalar a Mónica
fuente
No necesita gradiente. Funciona con discontinuidad. moderadamente eficiente maneja varias dimensiones. maneja bien el ruido. Tiene robustez incorporada del estimador.
EngrStudent - Restablece a Monica
@EngrStudent Puede decir todas esas cosas sobre BO, excepto que BO parece ser más eficiente porque requiere una menor cantidad de evaluación de funciones, al menos en mi opinión. No estoy preguntando sobre PSO en general, estoy preguntando sobre sus méritos en relación con BO.
Sycorax dice Reinstate Monica
1
No está lo suficientemente bien educado sobre el tema para hacer de esta una respuesta definitiva, pero creo que la optimización bayesiana debería sufrir el mismo destino que los optimizadores más eficientes con problemas altamente multimodales (ver: 95% de los problemas de aprendizaje automático): se pone a cero en el mínimo local más cercano sin "inspeccionar" el espacio global. Creo que Particle Swarm tendría más suerte encontrando mínimos no locales.
Cliff AB
2
Disculpas por mi llegada tardía a la fiesta, ¡no estoy seguro de cómo pude pasar por alto una pregunta sobre Optunity durante tanto tiempo! :-)
Marc Claesen
1
@MarcClaesen Debo admitir que esperaba que encontraras el tiempo para responder en algún momento. Tarde o no, creo que todos estamos contentos de que hayas llegado.
Sycorax dice Reinstate Monica

Respuestas:

25

Como desarrollador principal de Optunity, agregaré mis dos centavos.

Hemos realizado extensos puntos de referencia comparando Optunity con los solucionadores bayesianos más populares (por ejemplo, hyperopt, SMAC, bayesopt) en problemas del mundo real, y los resultados indican que PSO no es menos eficiente en muchos casos prácticos. En nuestro punto de referencia, que consiste en ajustar los clasificadores SVM en varios conjuntos de datos, Optunity es en realidad más eficiente que Hyperropt y SMAC, pero un poco menos eficiente que BayesOpt. Me encantaría compartir los resultados aquí, pero voy a esperar hasta que Optunity finalmente se publique en JMLR (en revisión desde hace más de un año, así que no contenga la respiración ...).

Como usted indica, el aumento de la eficiencia es un punto de venta de uso común para la optimización bayesiana, pero en la práctica solo se mantiene si las suposiciones de los modelos sustitutos subyacentes se mantienen, lo que está lejos de ser trivial. En nuestros experimentos, el solucionador de PSO muy simple de Optunity a menudo es competitivo con los complejos enfoques bayesianos en términos de número de evaluaciones de funciones. Los solucionadores bayesianos funcionan muy bien cuando cuentan con buenos antecedentes, pero con un previo poco informativo, prácticamente no hay beneficio estructural sobre los métodos metaheurísticos como PSO en términos de eficiencia.

Un gran punto de venta para PSO es el hecho de que es vergonzosamente paralelo. La optimización bayesiana a menudo es difícil de paralelizar, debido a su naturaleza inherentemente secuencial (la implementación de hyperopt es la única excepción real). Dadas las oportunidades de distribución, que se está convirtiendo en la norma, Optunity rápidamente toma la delantera en el tiempo de reloj de pared para obtener buenas soluciones.

Otra diferencia clave entre Optunity y la mayoría de las otras bibliotecas dedicadas de optimización de hiperparámetros es el público objetivo: Optunity tiene la interfaz más simple y está dirigida a expertos en aprendizaje no automático, mientras que la mayoría de las otras bibliotecas requieren cierta comprensión de la optimización bayesiana para usar de manera efectiva (es decir, son dirigido a especialistas).

La razón por la que creamos la biblioteca es que, a pesar del hecho de que existen métodos dedicados de optimización de hiperparámetros, carecen de adopción en la práctica. La mayoría de la gente todavía no está sintonizando en absoluto, haciéndolo manualmente o mediante enfoques ingenuos como la cuadrícula o la búsqueda aleatoria. En nuestra opinión, una razón clave para esto es el hecho de que las bibliotecas existentes antes de desarrollar Optunity eran demasiado difíciles de usar en términos de instalación, documentación, API y, a menudo, se limitaban a un solo entorno.

Marc Claesen
fuente
44
Tan informada una respuesta como pudimos obtener! Tengo curiosidad: usted dice que el solucionador de PSO es competitivo con los enfoques de optimización bayesiana. ¿ Eso quiere decir que PSO ejecutado en paralelo se encuentra más rápido que Bayseian Optimization ejecutado secuencialmente ? No trato de ser malo, pero es una distinción importante para mí entender.
Cliff AB
2
No, ambos se ejecutan secuencialmente. En nuestros experimentos (ajuste de SVM), la eficiencia de PSO y la optimización bayesiana es competitiva en términos de número de evaluaciones de funciones. No comparamos la eficiencia en términos de tiempo de reloj de pared en configuraciones distribuidas, ya que sería un poco barato, ya que muchos métodos de optimización bayesianos simplemente no pueden hacer eso.
Marc Claesen
Eso es interesante. ¿Alguna idea de por qué? ¿Superficie de hiperparámetro inestable?
Cliff AB
3
Creo que hay varias razones. Por un lado, las superficies de hiperparámetros tienen muchos óptimos locales (por ejemplo, debido a efectos de muestra finita, pliegues de validación cruzada, aleatoriedad inherente en algunos enfoques de aprendizaje). En segundo lugar, la optimización bayesiana se basa en la construcción de funciones objetivas sustitutas precisas, lo que no es una tarea fácil hasta que la función objetivo se haya muestreado muchas veces. La optimización bayesiana tarda un tiempo antes de que la convergencia se acelere (un detalle a menudo omitido). Para entonces, los métodos metaheurísticos como PSO también han alcanzado su fase de búsqueda local. PSO es muy bueno en la búsqueda local.
Marc Claesen
44
+1 para una excelente respuesta. He construido mi propio software BO, que debo admitir que es principalmente un proyecto de vanidad en este punto, así que entiendo cómo funciona el procedimiento BO con cierto detalle; Me alegra poder empezar a arañar la superficie de lo que está sucediendo en el mundo de ajuste de hiperparámetros. Su comentario sobre los enfoques ingenuos realmente me llega a casa, ya que uno de mis programas de ajuste ingenuos más antiguos ha estado ajustando un modelo durante una semana sin fin a la vista ... Gracias por su contribución, y estoy seguro de que tendré más preguntas una vez que digiero esto.
Sycorax dice Reinstate Monica
0

La respuesta depende del problema y no se puede dar sin un contexto adicional. Por lo general, la respuesta sería la siguiente. La optimización bayesiana es más adecuada para problemas de baja dimensión con un presupuesto computacional de hasta 10x-100x el número de variables. PSO puede ser bastante eficiente para presupuestos mucho más grandes, pero no es lo último en su nicho.

IndieSolver
fuente
Los comentarios no son para discusión extendida; Esta conversación se ha movido al chat .
gung - Restablecer Monica