Is there a good way to use the Optuna hyperparameter optimization framework in MATLAB?

39 visualizaciones (últimos 30 días)
As we all know, Optuna is a well-regarded hyperparameter optimization framework that is independent of any machine learning framework and is very easy to use in Python. However, my cost object-function is in MATLAB, which typically belongs to black-box optimization, and I am unsure how to use the Optuna library.
I also know that the Statistics and Machine Learning Toolbox has techniques like random search, grid search, and Bayesian hyperparameter optimization, but they haven't performed very well. The Global Optimization Toolbox can use heuristic search algorithms such as GA and PSO, but I am limited by the high computational cost of the cost function. I also tried surrogateopt. Although the iteration speed is relatively fast, it tends to get stuck in local optima, causing subsequent iterations to nearly stop. Overall, it doesn't perform as well as the PSO algorithm! Therefore, I would like to explore the performance of the Optuna library.

Respuesta aceptada

cui,xingxing
cui,xingxing el 23 de En. de 2025
After exploration and investigation, it is regrettable that MATLAB currently cannot effectively pass the handle of the optimization objective function to the Optuna framework, especially for complex objective functions that may involve passing extra parameter data. However, for passing ordinary general data, most built-in types can be smoothly exchanged between MATLAB and Python.
I believe that in the future, MATHWORKS will enhance considerations in this area!
  2 comentarios
Andreas Goser
Andreas Goser el 23 de En. de 2025
Thank you for feeding your finding back to the community. I have looked into two MathWorks-internal databases and cannot find knowledgebase articles or enhancement requests in that space. But maybe I am searching incorrectly as I am not a domain expert.
When you write "I believe that in the future" - have you discussed your need with a MathWorks person and this person will create and enhancement request? Or did you intend to write "I hope"? Then I would recommend contactin Techncal Support so this enhancement request can be logged.
cui,xingxing
cui,xingxing el 23 de En. de 2025
Thank you for your attention to my question. This enhancement requests was not submitted to Technical Support; it was a spontaneous “expectation” on my part that led to your misunderstanding. I apologize for that. Could you help me submit this feature request? As an internal member, you may have an easier time getting support than I do.

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Surrogate Optimization en Help Center y File Exchange.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by