In the past decade, a new way in neural networks research called Network architectures search has demonstrated noticeable results in the design of architectures for image segmentation and classification. Despite the considerable success...
moreIn the past decade, a new way in neural networks research called Network architectures search has demonstrated noticeable results in the design of architectures for image segmentation and classification. Despite the considerable success of the architecture search in image segmentation and classification, it is still an unresolved and urgent problem. Moreover, the neural architecture search is also a highly computationally expensive task. This work proposes a new approach based on a genetic algorithm to search for the optimal convolutional neural network architecture. We integrated a genetic algorithm with standard stochastic gradient descent that implements weight distribution across all architecture solutions. This approach utilises a genetic algorithm to design a sub-graph of a convolution cell, which maximises the accuracy on the validation set. We show the performance of our approach on the CIFAR-10 and CIFAR-100 datasets with a final accuracy of 93.21% and 78.89%, respectively. The main scientific contribution of our work is the combination of genetic algorithm with weight distribution in the architecture search tasks that achieve similar to state-of-the-art results on a single GPU. Keywords: convolutional neural networks, genetic algorithms, weight distribution, ablation study. П.М. РАДЮК Хмельницький національний університет ЗАСТОСУВАННЯ ГЕНЕТИЧНОГО АЛГОРИТМУ ДЛЯ ПОШУКУ ОПТИМАЛЬНОЇ АРХІТЕКТУРИ ЗГОРТКОВОЇ НЕЙРОННОЇ МЕРЕЖІ З РОЗПОДІЛЕННЯМ ВАГ За останнє десятиліття новий спосіб дослідження нейронних мереж під назвою «Пошук мережевих архітектур» продемонстрував позитивні результати в розробці архітектур для сегментації та класифікації зображень. Незважаючи на значний успіх пошуку архітектур в задачах сегментації та класифікації зображень, він все ще є невирішеною і актуальною проблемою. Більше того, пошук архітектур нейронних мереж є також дуже витратим з точки зору обчислювальних ресурсів. У цій роботі пропонується новий підхід на основі генетичного алгоритму для пошуку оптимальної архітектури згорткової нейронної мережі. Ми інтегрували генетичний алгоритм зі стандартним стохастичним градієнтом, що реалізує розподіл ваг у всіх архітектурних рішеннях. Цей підхід використовує генетичний алгоритм для проектування частини графу в якості згорткового шару, що забезпечує максимальну точність на валідаційному наборі даних. У цій роботі ми демонструємо ефективність нашого підходу на наборах даних CIFAR-10 та CIFAR-100 з кінцевою точністю 93,21 % та 78,89 % відповідно. Основним науковим внеском нашої роботи є поєднання генетичного алгоритму з розподілом ваг в задачах пошуку архітектури, що досягає точності класифікацїі зображення з використанням одного графічного процесора близької до найсучасніших результатів. Ключові слова: згорткові нейронні мережі, генетичні алгоритми, розподілення ваг, абляція дослідження. Introduction In recent decades, artificial neural networks have produced outstanding results in computer vision with a wide variety of applied tasks such as object detection, image segmentation and classification and others. The design of neural network architectures for a specific task or dataset usually requires specific approaches and a large number of computational resources [1, 2]. Recently, a new way in neural networks research called Network Architectures Search (NAS) has demonstrated noticeable results in the design of architectures for image segmentation and classification. NAS approaches use a recurrent neural network (RNN) controller to generate a candidate network architecture, called child model, which is then trained to converge. After the training, researches measure the performance of the trained network architecture on the desired task or dataset. RNN controller receives the performance measurement as a signal to explore for a better architecture. After that, this process repeats over many computationally expensive iterations. Analysis of recent research Despite the considerable success of NAS in classification tasks, it is still highly computationally expensive. Recently, many studies have used the idea of parameter sharing [3] across all child models to reduce the need for training each child model from scratch, thereby eliminating most computational costs. Weight distribution, the analogue of parameter sharing for convolutional cells, has shown prominent result utilising reinforcement-based and gradient-based methods. The first method is an effective search for neural architecture using parameter sharing (ENAS) [4] based on reinforcement training with the RNN controller to create the candidate architecture. The second method is called a differentiable architecture search with various modifications (DARTS) [5], where each compound has a gradient-updating probability function. However, none of the publications has yet combined GAs with parameter sharing or its analogies to NAS. Genetic algorithm (GA) is a search method based on natural selection and genetics [6]. GAs consist of four fundamental concepts: selection, cross-over, mutation, and replacement. Population, another essential component of GA, is utilised to generate new candidate solutions. A new generation is created in each iteration, using a three-step process of selection, cross-over and mutation. The next generation is then inserted into the population through the replacement phase. The algorithm starts with a random set that is evaluated at the beginning of training.