Neural network inference on embedded devices has to meet accuracy and latency requirements under tight resource constraints.
The design of suitable network architectures is a challenging and time-consuming task. Therefore, automatic discovery and optimization of neural networks is considered important for continuing the trend of moving classification tasks from cloud to edge computing. In this project an evolutionary method to optimize a convolutional neural network (CNN) architecture for classification tasks has been developed. The method runs efficiently on a single GPUworkstation and provides simple means to direct the tradeoff between complexity and accuracy of the evolved network. Using this method, we achieved a 11x reduction in the number of multiply-accumulate (MAC) operations of the winning network for the German Traffic Sign Recognition Benchmark (GTSRB) without accuracy reduction. An ensemble of four of our evolved networks competes the winning ensemble with a 0.1% lower accuracy but 70x reduction in MACs and 14x reduction in parameters. In a second stage of this project, the method has been extended to perform hardware-aware CNN architecture search for an inference accelerator method based on binary approximation of CNN weights.
Data Generation • Open-source data set Machine Learning Frameworks • Tensorflow • Keras Neural Network Architecture • CNN Inference Target Platform • GPU • FPGA • MCU
F. M. Johner and J. Wassner, "Efficient Evolutionary Architecture Search for CNN Optimization on GTSRB," 2019 18th IEEE International Conference On Machine Learning And Applications (ICMLA), 2019, pp. 56-61, doi: 10.1109/ICMLA.2019.00018