Designing Convolutional Neural Network Architectures Using Cartesian Genetic Programming

Masanori Suganuma, Shinichi Shirakawa, Tomoharu Nagao

Research output: Chapter in Book/Report/Conference proceedingChapterpeer-review

7 Citations (Scopus)


Convolutional neural networks (CNNs), among the deep learning models, are making remarkable progress in a variety of computer vision tasks, such as image recognition, restoration, and generation. The network architecture in CNNs should be manually designed in advance. Researchers and practitioners have developed various neural network structures to improve performance. Despite the fact that the network architecture considerably affects the performance, the selection and design of architectures are tedious and require trial-and-error because the best architecture depends on the target task and amount of data. Evolutionary algorithms have been successfully applied to automate the design process of CNN architectures. This chapter aims to explain how evolutionary algorithms can support the automatic design of CNN architectures. We introduce a method based on Cartesian genetic programming (CGP) for the design of CNN architectures. CGP is a form of genetic programming and searches the network-structured program. We represent the CNN architecture via a combination of pre-defined modules and search for the high-performing architecture based on CGP. The method attempts to find better architectures by repeating the architecture generation, training, and evaluation. The effectiveness of the CGP-based CNN architecture search is demonstrated through two types of computer vision tasks: image classification and image restoration. The experimental result for image classification shows that the method can find a well-performing CNN architecture. For the experiment on image restoration tasks, we show that the method can find a simple yet high-performing architecture of a convolutional autoencoder that is a type of CNN.

Original languageEnglish
Title of host publicationNatural Computing Series
Number of pages24
Publication statusPublished - 2020

Publication series

NameNatural Computing Series
ISSN (Print)1619-7127


Dive into the research topics of 'Designing Convolutional Neural Network Architectures Using Cartesian Genetic Programming'. Together they form a unique fingerprint.

Cite this