Evolutionary optimization of machine learning workflows
Optimalizace metod strojového učení na základě evolučních algoritmů
bachelor thesis (DEFENDED)

View/ Open
Permanent link
http://hdl.handle.net/20.500.11956/108354Identifiers
Study Information System: 208475
Collections
- Kvalifikační práce [11325]
Author
Advisor
Referee
Pilát, Martin
Faculty / Institute
Faculty of Mathematics and Physics
Discipline
General Computer Science
Department
Department of Theoretical Computer Science and Mathematical Logic
Date of defense
27. 6. 2019
Publisher
Univerzita Karlova, Matematicko-fyzikální fakultaLanguage
English
Grade
Excellent
Keywords (Czech)
Strojové učení, Evoluční algoritmy, Meta-učení, WorkflowsKeywords (English)
Machine learning, Evolutionary computing, Meta-learning, WorkflowsPráce se zabývá automatickým strojovým učením (AutoML), které má za cíl automati- zovat proces výběru vhodného modelu strojového učení pro daný problém. Vyvinuli jsme systém, který pro zadanou úlohu učení s učitelem reprezentovanou množinou dat najde vhodné schéma řešení (pipeline) - kombinaci metod strojového učení, ansámblů a metod předzpracování. Jako prohledávací algoritmus jsme navrhli speciální variantu develop- mentálního genetického programování, která umožňuje reprezentovat orientované acyk- lické grafy schémat řešení pomocí stromů. Systém je implementován v programovacím jazyce Python a využívá knihovnu scikit-learn. Úspěšnost našeho řešení byla ověřena na 72 datových množinách benchmarku OpenML-CC18, na kterém jsme dosáhli dobrých výsledků. 1
This work deals with automated machine learning (AutoML), which is a field that aims to automatize the process of model selection for a given machine learning problem. We have developed a system that, for a given supervised learning task represented by a dataset, finds a suitable pipeline - combination of machine learning, ensembles and preprocessing methods. For the search we designed a special instance of the developmental genetic programming which enables us to encode directed acyclic graph pipelines into a tree representation. The system is implemented in the Python programming language and operates on top of the scikit-learn library. The performance of our solution was tested on 72 datasets of the OpenML-CC18 benchmark with very good results. 1