|
Evoluční návrh neuronových sítí
Kastner, Jan ; Hurta, Martin (oponent) ; Sekanina, Lukáš (vedoucí práce)
Tato práce je věnována implementaci metody pro řešení problémů v oblasti automatizovaného návrhu architektury konvolučních neuronových sítí (CNN). Optimalizace dvou základních a často protichůdných charakteristik, počtu parametrů a kvality klasifikace CNN, je prováděna pomocí vícekriteriálního optimalizačního genetického algoritmu (NSGA-II). Pro zakódování tohoto problému je využita technika kartézského genetického programování (CGP), která umožňuje reprezentaci široké škály architektur CNN a současně lze parametrizací vhodně omezit prohledávaný prostor. Experimenty byly prováděny na datasetu MNIST za účelem pochopení vlivu velikosti populace na kvalitu výsledného řešení. Z výsledků experimentů je také patrné, že kvalita nalezených architektur dokáže konkurovat již etablovaným modelům. Jedná se tedy o alternativní přístup, který v porovnání s manuálním návrhem nevyžaduje lidskou intervenci.
|
|
Strojové učení reprezentace pro genetické programování
Pomykal, Šimon ; Piňos, Michal (oponent) ; Sekanina, Lukáš (vedoucí práce)
Cílem této práce je seznámit se s metodami strojového učení, které se využívají pro automatický návrh reprezentace. Speciálně se poté práce zaměřuje na hluboké učení v oblasti genetického programování (GP). Jako případová studie je zvoleno zpracování obrazu, a to zejména metody odstranění šumu. Spojením získaných poznatků je navržena nová reprezentace, jejímž účelem je nahradit syntaktický strom v algoritmu GP. Tato metoda je získána pomocí neuronové sítě typu transformer. Na závěr je vytvořena upravená varianta GP, která pracuje s novou reprezentací. Tato varianta je v několika experimentech porovnána s GP, který používá původní reprezentaci.
|
|
Implementace a porovnání přírodou inspirovaných prohledávacích algoritmů
Malysák, Adam ; Husa, Jakub (oponent) ; Sekanina, Lukáš (vedoucí práce)
Tato práce se zabývá popisem, implementací a porovnáním genetického algoritmu, jeho varianty obohacené o lokální vyhledávací heuristiku a binární optimalizace hejnem částic (BPSO). Jsou to algoritmy inspirované přírodními jevy, konkrétně evolucí a pohybem hejna ryb či ptáků. Implementované algoritmy budou použity k řešení 3-SAT problému, který je v práci také popsán. Algoritmy jsou otestovány na benchmarkových instancích 3-SAT problému a porovnány mezi sebou a s výsledky jiných prací.
|
|
Aproximace obvodů s využitím alternativních reprezentací
Michalisko, Tomáš ; Mrázek, Vojtěch (oponent) ; Sekanina, Lukáš (vedoucí práce)
Tato diplomová práce se zabývá návrhem aproximačních obvodů s využitím alternativních reprezentací. Mezi zkoumané reprezentace patří And-inverter graf, Majority-Inverter graf a Xor-Majority graf. Pro automatizaci návrhu je použito kartézské genetické programování. Díky výpočtu aproximační chyby pomocí formálních metod je možné vytvořený systém aplikovat i na složitější obvody. V první části experimentů je vyhodnocena a optimalizována rychlost programu. Následně je hledán vhodný mutační operátor. Poté je systém otestován při aproximaci 8bitových násobiček a 16bitových sčítaček s cílem minimalizovat velikost a zpoždění. Bylo zjištěno, že sčítačky i násobičky v reprezentaci XMG dosahují lepších fitness hodnot v porovnání s evolucí na úrovni hradel. Na závěr je provedena evoluce s cílem mapování na technologii k-LUT. Zde zůstávají nejefektivnější reprezentací hradla.
|
|
Statistické ověřování modelů přibližných výpočetních systémů
Blažek, Michal ; Sekanina, Lukáš (oponent) ; Strnadel, Josef (vedoucí práce)
Tato bakalářská práce se zaměřuje na statistické ověřování modelů přibližných násobiček. Zejména se zabývá srovnáním vlastností násobiček při generování jejich vstupních hodnot podle různých pravděpodobnostních rozdělení. Součástí práce je převod modelů násobiček z knihovny EvoApproxLib do modelů v prostředí UPPAAL. Vytvořené modely jsou poté simulovány s ohledem na vybrané hodnotící metriky, jako např. pravděpodobnost chyby, průměrná absolutní chyba aj. Ze získaných výsledků lze usuzovat, že použitím vhodné aproximační násobičky pro provádění výpočtů v rámci konkrétní aplikace je možné docílit menší chyby ve výpočtech. Výsledky by proto mohly mít další uplatnění v oblasti přibližných výpočetních systémů.
|
|
Evoluční návrh nelineárních funkcí pro konvoluční neuronové sítě
Hladiš, Martin ; Mrázek, Vojtěch (oponent) ; Sekanina, Lukáš (vedoucí práce)
Cílem této diplomové práce je návrh a implementace programu pro automatizovaný návrh nelineárních aktivačních funkcí pro konvoluční neuronové sítě (CNN) s využitím evolučních algoritmů. Využití automatického návrhu poskytuje nezávislý pohled na systematické prozkoumání širokého spektra aktivačních funkcí a identifikaci těch nejlepších. Metoda zvolená v práci pro automatický návrh je formou evolučních algoritmů nazývanou jako kartézské genetické programování, které pro zakódování řešení využívá grafovou reprezentaci. Tato technika umožňuje definici sady matematických primitiv, která definuje prohledávací prostor, a tak jednoduše parametrizuje návrh. Implementovaný přístup byl otestován na několika různých architekturách a datasetech (LeNet-5 \& MNIST, ResNet-10 \& FashionMNIST, WRN-40-4 \& CIFAR-10). Experimenty dokázaly, že přístup dokáže nalézt aktivační funkce, které statisticky zlepšují přesnost CNN oproti běžně využívané funkci ReLU.
|
|
Automated compression of neural network weights
Lorinc, Marián ; Sekanina, Lukáš (oponent) ; Mrázek, Vojtěch (vedoucí práce)
Convolutional Neural Networks (CNNs) have revolutionised computer vision field since their introduction. By replacing weights with convolution filters containing trainable weights, CNNs significantly reduced memory usage. However, this reduction came at the cost of increased computational resource requirements, as convolution operations are more computation intensive. Despite this, memory usage remains more energy-intensive than computation. This thesis explores whether it is possible to avoid loading weights from memory and instead functionally calculate them, thereby saving energy. To test this hypothesis, a novel weight compression algorithm was developed using Cartesian Genetic Programming. This algorithm searches for the most optimal weight compression function, aiming to enhance energy efficiency without compromising the functionality of the neural network. Experiments conducted on the LeNet-5 and MobileNetV2 architectures demonstrated that the algorithm could effectively reduce energy consumption while maintaining high model accuracy. The results showed that certain layers could benefit from weight computation, validating the potential for energy-efficient neural network implementations.
|
|
Automated Representation Learning for Cartesian Genetic Programming Using Neural Networks
Koči, Martin ; Mrázek, Vojtěch (oponent) ; Sekanina, Lukáš (vedoucí práce)
This master's thesis addresses the integration of neural networks and Cartesian Genetic Programming (CGP). It explores the use of neural networks for automated representation creation for CGP and their application to improve the evolutionary process in CGP. The study covers basic concepts of machine learning, including various types of learning and neural network models. It also touches on evolutionary algorithms with an emphasis on their basic principles, general algorithms, and types of representations. This work also includes principles of representation learning and two fundamental architectures for their creation. It describes the subsequent use of representation learning in genetic programming. The solution design includes data acquisition and preprocessing, representation creation processes, and the utilization of the resulting representations. The thesis also implements two new approaches for creating representations for Cartesian genetic programs. It further explores their use in two new mutation operators, where one is based on direct modification of the vector representation and the other on the selection of genes for mutation based on their similarity. The last of the explored areas is predicting the suitability of candidate solutions using newly emerged representations.
|
|
Využití operátoru křížení v kartézském genetickém programování
Bromnik, Petr ; Sekanina, Lukáš (oponent) ; Hurta, Martin (vedoucí práce)
Cílem této práce je navrhnout a implementovat dvě nové metody křížení v kartézském genetickém programování (CGP) a porovnat je s existujícím přístupem. CGP je typ evolučního algoritmu využívající acyklické grafy k reprezentaci spustitelných programů. Většina CGP aplikací pracuje výhradně s operátorem mutace, ale snahy o nalezení vhodného operátoru křížení stále pokračují. V této práci jsou dvě nově navržené metody křížení porovnávány na pěti úlohách symbolické regrese oproti standardnímu přístupu 1 + lambda založenému čistě na mutaci. Výsledky experimentů ukázaly, že tyto metody naleznou řešení za podobný počet fitness evaluací jako 1 + lambda, ve dvou případech dokonce významně dříve.
|
|
Evolutionary Design of Local Image FIlters
Gall, Samuel ; Hurta, Martin (oponent) ; Sekanina, Lukáš (vedoucí práce)
This thesis focuses on the research and implementation of evolutionary design of local image filters. The aim is to create a tool capable of automatically designing suitable image operators for image filtering, specifically noise removal, using an evolutionary design method called Cartesian Genetic Programming (CGP). The tool was used for various experiments with different settings of CGP parameters such as grid size, population size, and mutation parameter. The created filters were compared with conventional noise removal filters. Evolved filters were tested on a set of test images, where their behavior was comparable to that of a median filter. Unlike the median filter, evolved filters were able to preserve more image quality.
|