Bayes’sche Optimierung

aus Wikipedia, der freien Enzyklopädie

Die Bayes’sche Optimierung ist eine sequenzielle Entwurfsstrategie für die globale Optimierung von Black-Box-Funktionen, die keine funktionalen Formen voraussetzt.[1] Sie wird in der Regel zur Optimierung von Funktionen eingesetzt, die teuer zu bewerten sind.

Geschichte

Der Begriff wird im Allgemeinen Jonas Mockus zugeschrieben und ist in seiner Arbeit aus einer Reihe von Veröffentlichungen über globale Optimierung in den 1970er und 1980er Jahren geprägt.[2][3][4]

Strategie

Bayes'sche Optimierung einer Funktion (schwarz) mit Gaußschen Prozessen (lila). Unten sind drei Erfassungsfunktionen (blau) dargestellt.[5]

Die Bayes'sche Optimierung wird typischerweise bei Problemen der Form eingesetzt, wobei eine Menge von Punkten ist, , die sich auf weniger als 20 Dimensionen (), und deren Zugehörigkeit leicht bewertet werden kann. Die Bayes'sche Optimierung ist besonders vorteilhaft für Probleme, bei denen aufgrund seiner Rechenkosten schwer zu bewerten ist. Die Zielfunktion, ist kontinuierlich und hat die Form einer unbekannten Struktur, die als "Black Box" bezeichnet wird. Bei ihrer Auswertung wird nur beobachtet und seine Ableitungen werden nicht ausgewertet.[6]

Da die Zielfunktion unbekannt ist, besteht die Bayes'sche Strategie darin, sie als Zufallsfunktion zu behandeln und ihr einen Prior zuzuweisen. Der Prior gibt die Überzeugungen über das Verhalten der Funktion wieder. Nach dem Sammeln der Funktionsbewertungen, die als Daten behandelt werden, wird der Prior aktualisiert, um die Posterior-Verteilung über die Zielfunktion zu bilden. Die Posterior-Verteilung wird wiederum verwendet, um eine Erfassungsfunktion (oft auch als Infill-Sampling-Kriterium bezeichnet) zu konstruieren, die den nächsten Abfragepunkt bestimmt.

Es gibt verschiedene Methoden, um die Prior/Posterior-Verteilung über die Zielfunktion zu definieren. Die beiden gebräuchlichsten Methoden verwenden Gauß-Prozesse in einer Methode namens Gaußprozess-Regression. Eine andere, weniger kostspielige Methode verwendet den Parzen-Tree Estimator, um zwei Verteilungen für "hohe" und "niedrige" Punkte zu konstruieren, und findet dann den Ort, der die erwartete Verbesserung maximiert.[7]

Die standardmäßige Bayes'sche Optimierung beruht darauf, dass jedes einfach zu bewerten ist. Probleme, die von dieser Annahme abweichen, werden als exotische Bayes'sche Optimierungsprobleme bezeichnet. Optimierungsprobleme können exotisch werden, wenn bekannt ist, dass es Rauschen gibt, die Auswertungen parallel durchgeführt werden, die Qualität der Auswertungen von einem Kompromiss zwischen Schwierigkeit und Genauigkeit abhängt, zufällige Umgebungsbedingungen vorhanden sind oder die Auswertung Ableitungen beinhaltet.[6]

Beispiele für Erfassungsfunktionen

Beispiele für Erfassungsfunktionen sind die Verbesserungswahrscheinlichkeit, die erwartete Verbesserung, die erwarteten Verluste nach Bayes, obere Konfidenzgrenzen (UCB), Thompson-Sampling und Mischformen davon.[8] Sie alle stellen einen Kompromiss zwischen Erkundung und Ausnutzung dar, um die Anzahl der Funktionsabfragen zu minimieren. Die Bayes'sche Optimierung eignet sich daher gut für Funktionen, deren Auswertung teuer ist.

Lösungsmethoden

Das Maximum der Erfassungsfunktion wird in der Regel durch Diskretisierung oder mit Hilfe eines Hilfsoptimierers gefunden. Erfassungsfunktionen werden in der Regel mit einem numerischen Optimierungsverfahren wie dem Newtonverfahren oder Quasi-Newton-Methoden wie dem Broyden-Fletcher-Goldfarb-Shanno-Algorithmus maximiert.

Anwendungsgebiete

Der Ansatz wurde zur Lösung einer Vielzahl von Problemen angewandt,[9] darunter Rangordnungslernen,[10] Computergrafik und visuelles Design,[11][12][13] Robotik,[14][15][16][17] Sensornetzwerke,[18][19] automatische Algorithmenkonfiguration,[20][21] automatische Toolboxen für maschinelles Lernen,[22][23][24] Reinforcement Learning, Planung, visuelle Aufmerksamkeit, Architekturkonfiguration beim Deep Learning, statische Programmanalyse, experimentelle Teilchenphysik,[25][26] Chemie, Materialdesign[27][28][29] und Arzneimittelentwicklung.[6][30][31]

Weblinks

  • GPyOpt, Python open-source library for Bayesian Optimization based on GPy.
  • Bayesopt, an efficient implementation in C/C++ with support for Python, Matlab and Octave.
  • Spearmint, a Python implementation focused on parallel and cluster computing.
  • SMAC, a Java implementation of random-forest-based Bayesian optimization for general algorithm configuration.
  • ParBayesianOptimization, A high performance, parallel implementation of Bayesian optimization with Gaussian processes in R.
  • pybo, a Python implementation of modular Bayesian optimization.
  • Bayesopt.m, a Matlab implementation of Bayesian optimization with or without constraints.
  • MOE MOE is a Python/C++/CUDA implementation of Bayesian Global Optimization using Gaussian Processes.
  • SigOpt SigOpt offers Bayesian Global Optimization as a SaaS service focused on enterprise use cases.
  • Mind Foundry OPTaaS offers Bayesian Global Optimization via web-services with flexible parameter constraints.
  • bayeso, a Python implementation of Bayesian optimization.
  • BoTorch, a modular and modern PyTorch-based open-source library for Bayesian optimization research with support for GPyTorch.
  • GPflowOpt, a TensorFlow-based open-source package for Bayesian optimization.
  • trieste, an open-source Bayesian Optimization toolbox built on TensorFlow and GPflow.

Einzelnachweise

  1. Jonas Mockus (2012). Bayesian approach to global optimization: theory and applications. Kluwer Academic.
  2. Jonas Mockus: On Bayesian Methods for Seeking the Extremum. Optimization Techniques 1974: 400-404 doi:10.1007/3-540-07165-2_55
  3. Jonas Mockus: On Bayesian Methods for Seeking the Extremum and their Application. IFIP Congress 1977: 195-200
  4. J. Mockus, Bayesian Approach to Global Optimization. Kluwer Academic Publishers, Dordrecht, 1989
  5. Samuel Wilson: Parallelizable Bayesian Optimization (Paketbeschreibung auf GitHub). 22. November 2019, abgerufen am 14. Juni 2022.
  6. a b c Peter I. Frazier: A Tutorial on Bayesian Optimization. 8. Juli 2018, doi:10.48550/arXiv.1807.02811.
  7. J. S. Bergstra, R. Bardenet, Y. Bengio, B. Kégl: Algorithms for Hyper-Parameter Optimization. Advances in Neural Information Processing Systems: 2546–2554 (2011)
  8. Matthew W. Hoffman, Eric Brochu, Nando de Freitas: Portfolio Allocation for Bayesian Optimization. Uncertainty in Artificial Intelligence: 327–336 (2011)
  9. Eric Brochu, Vlad M. Cora, Nando de Freitas: A Tutorial on Bayesian Optimization of Expensive Cost Functions, with Application to Active User Modeling and Hierarchical Reinforcement Learning. CoRR abs/1012.2599 (2010)
  10. Eric Brochu, Nando de Freitas, Abhijeet Ghosh: Active Preference Learning with Discrete Choice Data. Advances in Neural Information Processing Systems: 409-416 (2007)
  11. Eric Brochu, Tyson Brochu, Nando de Freitas: A Bayesian Interactive Optimization Approach to Procedural Animation Design. Symposium on Computer Animation 2010: 103–112
  12. Yuki Koyama, Issei Sato, Daisuke Sakamoto, Takeo Igarashi: Sequential Line Search for Efficient Visual Design Optimization by Crowds. ACM Transactions on Graphics, Volume 36, Issue 4, pp.48:1–48:11 (2017). doi:10.1145/3072959.3073598
  13. Yuki Koyama, Issei Sato, Masataka Goto: Sequential Gallery for Interactive Visual Design Optimization. ACM Transactions on Graphics, Volume 39, Issue 4, pp.88:1–88:12 (2020). doi:10.1145/3386569.3392444, arXiv:2005.04107.
  14. Daniel J. Lizotte, Tao Wang, Michael H. Bowling, Dale Schuurmans: Automatic Gait Optimization with Gaussian Process Regression. International Joint Conference on Artificial Intelligence: 944–949 (2007)
  15. Ruben Martinez-Cantin, Nando de Freitas, Eric Brochu, Jose Castellanos and Arnaud Doucet. A Bayesian exploration-exploitation approach for optimal online sensing and planning with a visually guided mobile robot. Autonomous Robots. Volume 27, Issue 2, pp 93–103 (2009) doi:10.1007/s10514-009-9130-2.
  16. Scott Kuindersma, Roderic Grupen, and Andrew Barto. Variable Risk Control via Stochastic Optimization. International Journal of Robotics Research, volume 32, number 7, pp 806–825 (2013)
  17. Roberto Calandra, André Seyfarth, Jan Peters, and Marc P. Deisenroth: Bayesian optimization for learning gaits under uncertainty. Ann. Math. Artif. Intell. Volume 76, Issue 1, pp 5-23 (2016) DOI:10.1007/s10472-015-9463-9
  18. Niranjan Srinivas, Andreas Krause, Sham M. Kakade, Matthias W. Seeger: Information-Theoretic Regret Bounds for Gaussian Process Optimization in the Bandit Setting. IEEE Transactions on Information Theory 58(5):3250–3265 (2012)
  19. Roman Garnett, Michael A. Osborne, Stephen J. Roberts: Bayesian optimization for sensor set selection. ACM/IEEE International Conference on Information Processing in Sensor Networks: 209–219 (2010)
  20. Frank Hutter, Holger Hoos, and Kevin Leyton-Brown (2011). Sequential model-based optimization for general algorithm configuration, Learning and Intelligent Optimization
  21. J. Snoek, H. Larochelle, R. P. Adams Practical Bayesian Optimization of Machine Learning Algorithms. Advances in Neural Information Processing Systems: 2951-2959 (2012)
  22. J. Bergstra, D. Yamins, D. D. Cox (2013). Hyperopt: A Python Library for Optimizing the Hyperparameters of Machine Learning Algorithms. Proc. SciPy 2013.
  23. Chris Thornton, Frank Hutter, Holger H. Hoos, Kevin Leyton-Brown: Auto-WEKA: combined selection and hyperparameter optimization of classification algorithms. KDD 2013: 847–855
  24. Jasper Snoek, Hugo Larochelle and Ryan Prescott Adams. Practical Bayesian Optimization of Machine Learning Algorithms. Advances in Neural Information Processing Systems, 2012
  25. Philip Ilten, Mike Williams, Yunjie Yang. Event generator tuning using Bayesian optimization. 2017 JINST 12 P04028. DOI: 10.1088/1748-0221/12/04/P04028
  26. Evaristo Cisbani et al. AI-optimized detector design for the future Electron-Ion Collider: the dual-radiator RICH case 2020 JINST 15 P05009. DOI: 10.1088/1748-0221/15/05/P05009
  27. Tsuyoshi Ueno, Trevor David Rhone, Zhufeng Hou, Teruyasu Mizoguchi, Koji Tsuda: COMBO: An efficient Bayesian optimization library for materials science. In: Materials Discovery. Band 4, Juni 2016, S. 18–21, doi:10.1016/j.md.2016.04.001 (elsevier.com [abgerufen am 12. Juni 2022]).
  28. Hud Wahab, Vivek Jain, Alexander Scott Tyrrell, Michael Alan Seas, Lars Kotthoff: Machine-learning-assisted fabrication: Bayesian optimization of laser-induced graphene patterning using in-situ Raman analysis. In: Carbon. Band 167, Oktober 2020, S. 609–619, doi:10.1016/j.carbon.2020.05.087 (elsevier.com [abgerufen am 12. Juni 2022]).
  29. Yuki K. Wakabayashi, Takuma Otsuka, Yoshiharu Krockenberger, Hiroshi Sawada, Yoshitaka Taniyasu: Machine-learning-assisted thin-film growth: Bayesian optimization in molecular beam epitaxy of SrRuO 3 thin films. In: APL Materials. Band 7, Nr. 10, 1. Oktober 2019, ISSN 2166-532X, S. 101114, doi:10.1063/1.5123019.
  30. Gomez-Bombarelli et al.: Automatic Chemical Design using a Data-Driven Continuous Representation of Molecules. ACS Central Science, Volume 4, Issue 2, 268-276 (2018). doi:10.1021/acscentsci.7b00572
  31. Griffiths et al. Constrained Bayesian Optimization for Automatic Chemical Design using Variational Autoencoders Chemical Science: 11, 577-586 (2020)