Artificial Intelligence is the science of combining technological and theoretical concepts from multiple disciplines aimed at creating similar behavior in machines that found in humans.
The present work investigates methods of improving the field of pattern classification by applying evolutionary algorithms to train deep neural network architectures. A significant advantage of evolutionary algorithms over backpropagation is that the neuroevolutionary algorithms allow for training parts of the deep neural network. The framework developed for the present work can be adapted to the required memory and processing resources of the target hardware platform in different application scenarios.
A specific type of deep learning neural networks that imitate the classical convolution operation from the image processing field is called “Convolutional Neural Networks” (CNN). Recently, there have been significant research efforts to apply evolutionary computation (EC) techniques to evolve topologies or kernel weights of CNNs.
Although the convolutional neural networks are capable of eliminating the feature design stage, their complexity increases proportionally to the size of the input. Evolutionary computation methodologies have been applied to three main attributes of neural networks: network connection weights, network architecture (network topology, transfer function), and learning algorithms. The present work can be employed as a generic approach to reduce the overall size of a deep learning neural network.