Hiperparaméter optimalizálás
A hiperparaméter- optimalizálás egy gépi tanulási feladat az optimális hiperparaméterek készletének kiválasztására egy tanulási algoritmushoz.
Az azonos típusú gépi tanulási modellek eltérő feltételezéseket, súlyokat vagy tanulási arányokat igényelhetnek a különböző típusú adatokhoz. Ezeket a paramétereket hiperparamétereknek nevezzük, és úgy kell hangolni, hogy a modell optimálisan tudja megoldani a tanulási problémát. Ehhez találunk egy hiperparaméter tuple -t, amely megadja azt az optimális modellt, amely az adott független adaton optimalizálja az adott veszteségfüggvényt [1] . A célfüggvény egy sor hiperparamétert vesz fel, és visszaadja a kapcsolódó veszteséget [1] . A keresztellenőrzést gyakran használják ennek az általánosító képességnek a kiértékelésére [2] .
Megközelítések
Rács keresés
A hiperparaméter-optimalizálás hagyományos módszere a rácskeresés ( vagy paramétervariáció ), amely egyszerűen kimerítő keresést végez a tanító algoritmus hiperparaméterterének manuálisan megadott részhalmazában. A rácskeresést valamilyen teljesítménymértéknek kell kísérnie, amelyet általában keresztellenőrzéssel mérnek a tanító halmazon [3] , vagy az algoritmusnak egy jól bevált tesztkészleten való futtatásával [4] .
Mivel a gépi tanulási algoritmusok paramétertere egyes paraméterekhez tartalmazhat valós vagy korlátlan értékű tereket, a rácskeresés alkalmazása előtt szükség lehet a határ manuális beállítására és diszkretizálására.
Például egy tipikus soft-gap support vector machine (SVM) osztályozó , amely egy kernel radiális bázisfüggvénnyel van felszerelve, legalább két hiperparaméterrel rendelkezik, amelyeket be kell hangolni a nem elérhető adatokon való jó teljesítmény érdekében – a C regularizációs állandót és a kernel hiperparamétert. γ. Mindkét paraméter folytonos, így a rácskereséshez az "elfogadható" értékek véges halmazát választjuk, mondjuk
A rácskeresés ezután lefuttatja az SVM-et minden párra ( C , γ) a két halmaz derékszögű szorzatában , és teszteli a teljesítményt a kiválasztott paraméterek mellett a létrehozott tesztkészleten (vagy belső keresztellenőrzéssel a tanító halmazon, ebben az esetben több SVM párban fut). Végül a rácskereső algoritmus az ellenőrzési eljárás során elért legmagasabb eredményt adja.
A rácsos keresés szenved a dimenzionalitás átkától , de gyakran könnyen párhuzamosítható , mivel általában azok a hiperparametrikus mennyiségek, amelyekkel az algoritmus dolgozik, függetlenek egymástól [2] .
Véletlenszerű keresés
A véletlenszerű keresés az összes kombináció kimerítő keresését felváltja azok véletlenszerű kiválasztásával. Ez könnyen alkalmazható a fenti diszkrét beállításokra, de a módszer általánosítható folytonos és vegyes terekre is. A véletlenszerű keresés felülmúlhatja a rácsos keresést, különösen akkor, ha csak kis számú hiperparaméter befolyásolja a gépi tanulási algoritmus teljesítményét [2] . Ebben az esetben azt mondják, hogy az optimalizálási probléma alacsony belső dimenzióval rendelkezik [5] . A véletlenszerű keresések is könnyen párhuzamosíthatók , és emellett lehetővé teszik az előzetes adatok felhasználását a véletlenszerű paraméterek mintavételi eloszlásának megadásával.
Bayesi optimalizálás
A Bayes-optimalizálás egy globális optimalizálási módszer egy ismeretlen, zajos függvény (fekete doboz) számára. A hiperparaméteres optimalizálásra alkalmazott Bayes-féle optimalizálás a leképezési függvény sztochasztikus modelljét építi fel a hiperparaméter értékekből a tesztkészleten alkalmazott célfüggvényig. Az aktuális modellen alapuló perspektivikus hiperparaméter-konfiguráció iteratív alkalmazásával, majd annak frissítésével a Bayes-optimalizálás a lehető legtöbb információt igyekszik összegyűjteni az adott függvényről, és különösen az optimum helyéről. A módszer megpróbálja egyensúlyba hozni a tesztelést (olyan hiperparaméterek, amelyeknél a változás legkevésbé megbízhatóan ismert) és a felhasználást (olyan hiperparaméterek, amelyek várhatóan a legközelebb állnak az optimálishoz). A gyakorlatban a Bayes-féle optimalizálás [6] [7] [8] [9] jobb eredményeket mutatott kevesebb számítás mellett a rácsos kereséshez és a véletlenszerű kereséshez képest, mivel lehetőség van a kísérletek minőségének megítélésére még azok végrehajtása előtt.
Gradiens alapú optimalizálás
Adott tanulási algoritmusok esetén kiszámítható a hiperparaméterek gradiense, és optimalizálható a gradiens süllyedés segítségével. E technikák első alkalmazása a neurális hálózatokra összpontosított [10] . Ezeket a módszereket aztán más modellekre is kiterjesztették, mint például a támogató vektorgépekre [11] vagy a logisztikus regresszióra [12] .
A hiperparaméteres gradiensek használatának másik megközelítése az iteratív optimalizáló algoritmus lépéseinek megkülönböztetése automatikus differenciálással [13] [14] .
Evolúciós optimalizálás
Az evolúciós optimalizálás az ismeretlen függvények zajjal történő globális optimalizálásának módszere. A hiperparaméter-optimalizálás során az evolúciós optimalizálás evolúciós algoritmusokat használ az adott algoritmus hiperparamétereinek megkeresésére [7] . Az evolúciós hiperparaméter-optimalizálás az evolúció biológiai koncepciója által ihletett folyamatot követi :
- Véletlenszerű megoldások kezdeti populációját hozzuk létre (azaz egy véletlenszerűen generált hiperparaméter-sort, általában 100+)
- Értékelje ki a hiperparaméterek sorait, és származtassa a fittségi függvényüket (például egy gépi tanulási algoritmus 10 -szeres pontosságú keresztellenőrzésével ezekkel a hiperparaméterekkel)
- Rangsorolja a hiperparaméter sorokat relatív alkalmasságuk szerint
- Cserélje ki a rosszabb teljesítményű hiperparaméter sorokat új hiperparaméter sorokra, amelyeket keresztezése és en] mutációja képez.
- Ismételje a 2-4 lépéseket, amíg az algoritmus kielégítő teljesítményt nem kap, vagy amíg a teljesítmény nem javul.
Az evolúciós optimalizálás a statisztikai gépi tanulási algoritmusok hiperparamétereinek optimalizálására [7] , az automatikus gépi tanulásra [15] [16] , a mély neurális hálózatok architektúrájának megtalálására [17] [18] , valamint a mély neurálisban súlyozásra szolgál. hálózatok [19] .
Egyéb
A radiális bázisfüggvény (RBF) [20] és a spektrális módszer [21] módszerei is fejlesztés alatt állnak .
Nyílt forráskódú szoftver
Rács keresés
Véletlenszerű keresés
Bayesi optimalizálás
Gradiens alapú
Evolúciós módszerek
Egyéb
Kereskedelmi szolgáltatások
Lásd még
Jegyzetek
- ↑ 1 2 Claesen, Marc & Bart De Moor (2015), Hyperparameter Search in Machine Learning, arΧiv : 1502.02127 [cs.LG].
- ↑ 1 2 3 Bergstra, Bengio, 2012 , p. 281–305.
- ↑ Chin-Wei Hsu, Chih-Chung Chang és Chih-Jen Lin (2010). Gyakorlati útmutató a vektorok osztályozásának támogatásához Archiválva : 2013. június 25. a Wayback Machine -nél . Műszaki jelentés, Tajvani Nemzeti Egyetem .
- ↑ Chicco, 2017 , p. 1–17.
- ↑ Ziyu, Frank, Masrour, David, de Feitas, 2016 .
- ↑ Hutter, Hoos, Leyton-Brown, 2011 .
- ↑ 1 2 3 Bergstra, Bardenet, Bengio, Kegl, 2011 .
- ↑ Snoek, Larocelle, Adams, 2012 .
- ↑ Thornton, Hutter, Hoos, Leyton-Brown, 2013 .
- ↑ Larsen, Hansen, Svarer, Ohlsson, 1996 .
- ↑ Chapelle, Vapnik, Bousquet, Mukherjee, 2002 , p. 131–159.
- ↑ Chuong, Foo, Ng, 2008 .
- ↑ Domke, 2012 .
- ↑ 1 2 Maclaurin, Douglas; Duvenaud, David & Adams, Ryan P. (2015), Gradient-based Hyperparameter Optimization through Reversible Learning, arΧiv : 1502.03492 [stat.ML].
- ↑ 1 2 Olson, Urbanowicz, Andrews, Lavender, Kidd, Moore, 2016 , p. 123–137.
- ↑ 1 2 Olson, Bartley, Urbanowicz, Moore, 2016 , p. 485–492.
- ↑ Miikkulainen R, Liang J, Meyerson E, Rawal A, Fink D, Francon O, Raju B, Shahrzad H, Navruzyan A, Duffy N, Hodjat B (2017), Evolving Deep Neural Networks, arΧiv : 1703.00548 [cs.NE] .
- ↑ Jaderberg M, Dalibard V, Osindero S, Czarnecki WM, Donahue J, Razavi A, Vinyals O, Green T, Dunning I, Simonyan K, Fernando C, Kavukcuoglu K (2017), Population Based Training of Neural Networks, arΧiv : 0918416 . [cs.LG].
- ↑ Such FP, Madhavan V, Conti E, Lehman J, Stanley KO, Clune J (2017), Deep Neuroevolution: Genetic Algorithms Are a Competitive Alternative for Training Deep Neural Networks for Reforcement Learning, arΧiv : 1712.06567 [cs.NE].
- ↑ 1 2 Diaz, Gonzalo; Fokoue, Achille; Nannicini, Giacomo & Samulowitz, Horst (2017), Egy hatékony algoritmus neurális hálózatok hiperparaméteres optimalizálásához, arΧiv : 1705.08520 [cs.AI].
- ↑ 1 2 Hazan, Elad; Klivans, Adam & Yuan, Yang (2017), Hyperparameter Optimization: A Spectral Approach, arΧiv : 1706.00764 [cs.LG].
- ↑ Martinez-Cantin, 2014 , p. 3915−3919.
- ↑ Kotthoff, Thornton, Hoos, Hutter, Leyton-Brown, 2017 , p. 1–5.
- ↑ Feurer, Klein, Eggensperger, Springenberg, Blum, Hutter, 2015 , p. 2962–2970.
- ↑ Baptista, Ricardo & Poloczek, Matthias (2018), Bayesian Optimization of Combinatorial Structures, arΧiv : 1806.08838 [stat.ML].
- ↑ Hutter, Hoos, Leyton-Brown, 2011 , p. 507-523.
- ↑ Nyikityin, Vychuzhanin, Sarafanov, Polonskaia, Revin, Barabanova, Maximov, Kaljuzhnaya, Boukhanovsky, 2022 , p. 109–125.
- ↑ Gorissen, Crombecq, Couckuyt, Demeester, Dhaene, 2010 , p. 2051–2055
Irodalom
- James Bergstra, Yoshua Bengio. Véletlenszerű keresés hiperparaméter-optimalizáláshoz // J. Machine Learning Research. - 2012. - T. 13 .
- Chicco D. Tíz gyorstipp a gépi tanuláshoz a számítógépes biológiában // BioData Mining. - 2017. - december ( 10. köt. ). — P. 1–17. - doi : 10.1186/s13040-017-0155-3 . — PMID 29234465 .
- Wang Ziyu, Hutter Frank, Zoghi Masrour, Matheson David, Nando de Feitas. Bayesi optimalizálás milliárd dimenzióban véletlenszerű beágyazásokkal // Journal of Artificial Intelligence Research. - 2016. - Kt. 55 . - doi : 10.1613/jair.4806 . Archiválva az eredetiből 2018. április 23-án.
- James Bergstra, Remi Bardenet, Yoshua Bengio, Balázs Kegl. Algoritmusok hiperparaméter-optimalizáláshoz // A neurális információfeldolgozó rendszerek fejlődése. – 2011.
- Jasper Snoek, Hugo Larocelle, Ryan Adams. Gépi tanulási algoritmusok gyakorlati bayesi optimalizálása // A neurális információfeldolgozó rendszerek fejlődése. - 2012. - . - arXiv : 1206.2944 .
- Chris Thornton, Frank Hutter, Holger Hoos, Kevin Leyton-Brown. Auto-WEKA: Osztályozási algoritmusok kombinált kiválasztása és hiperparaméter-optimalizálása // Knowledge Discovery and Data Mining. - 2013. - . - arXiv : 1208.3719 .
- Jan Larsen, Lars Kai Hansen, Claus Svarer, M Ohlsson. Neurális hálózatok tervezése és szabályozása: a validációs halmaz optimális használata // Proceedings of the 1996 IEEE Signal Processing Society Workshop. – 1996.
- Olivier Chapelle, Vladimir Vapnik, Olivier Bousquet, Sayan Mukherjee. Több paraméter kiválasztása támogató vektorgépekhez // Machine Learning. - 2002. - 20. évf. 46. - doi : 10.1023/a:1012450327387 .
- Chuong B., Chuan-Sheng Foo, Andrew Y Ng. Hatékony több hiperparaméteres tanulás log-lineáris modellekhez // Advances in Neural Information Processing Systems 20. - 2008.
- Justin Domke. Általános módszerek az optimalizálás alapú modellezéshez // AISTATS. - 2012. - T. 22 .
- Ruben Martinez Cantin. BayesOpt: A Bayes-féle optimalizálási könyvtár nemlineáris optimalizáláshoz, kísérleti tervezéshez és banditásokhoz // Journal of Machine Learning Research. - 2014. - T. 15 . — S. 3915−3919 . - . - arXiv : 1405.7430 .
- Kotthoff L., Thornton C., Hoos HH, Hutter F., Leyton-Brown K. Auto-WEKA 2.0: Automatic model selection and hyperparameter optimization in WEKA // Journal of Machine Learning Research. — 2017.
- Feurer M., Klein A., Eggensperger K., Springenberg J., Blum M., Hutter F. Efficient and Robust Automated Machine Learning // Advances in Neural Information Processing Systems 28 (NIPS 2015). — 2015.
- Hutter F., Hoos HH, Leyton-Brown K. Szekvenciális modellalapú optimalizálás az általános algoritmusok konfigurálásához // A tanulás és az intelligens optimalizálás (LION 5) konferencia anyaga . – Róma, Olaszország: Springer-Verlag, 2011.
- Olson RS, Urbanowicz RJ, Andrews PC, Lavender NA, Kidd L., Moore JH Orvosbiológiai adattudomány automatizálása fa-alapú csővezeték-optimalizálással // Proceedings of EvoStar 2016 . - 2016. - T. 9597. - (Számítástechnikai előadásjegyzetek). — ISBN 978-3-319-31203-3 . - doi : 10.1007/978-3-319-31204-0_9 .
- Olson RS, Bartley N., Urbanowicz RJ, Moore JH Fa-based Pipeline Optimization Tool for Automating Data Science . - 2016. - C. Proceedings of EvoBIO 2016 . — ISBN 9781450342063 . - doi : 10.1145/2908812.2908918 . - arXiv : 1603.06212 .
- Dirk Gorissen, Karel Crombecq, Ivo Couckuyt, Piet Demeester, Tom Dhaene. A helyettesítő modellezési és adaptív mintavételi eszköztár számítógépes tervezéshez // J. Machine Learning Research. - 2010. - T. 11 . — S. 2051–2055 .
- Nikolay O. Nikitin, Pavel Vychuzhanin, Mihail Sarafanov, Iana S. Polonskaia, Ilia Revin, Irina V. Barabanova, Gleb Maximov, Anna V. Kaljuzsnaja, Alekszandr Buhanovszkij. Automatizált evolúciós megközelítés kompozit gépi tanulási folyamatok tervezéséhez // Future Generation Computer Systems. - 2022. - T. 127 . - S. 109-125 .