Design of MobileNet algorithm to optimize image classification in Convolutional Neural Network ( CNN ) and implementation on FPGA
Subject Areas : journal of Artificial Intelligence in Electrical EngineeringAKBAR PAYANDAN 1 , Seyed Hossein HosseiniNazhad 2
1 - Faculty of Engineering, Ahar Branch, Islamic Azad University, Ahar, Iran,
2 - Faculty of Engineering, Ahar Branch, Islamic Azad University, Ahar, Iran,
Keywords: Image classification, Artificial Intelligence, deep learning, Convolution Neural Network, Deep Learning Algorithm,
Abstract :
Deep learning has developed rapidly in recent years and has been applied in many areas that are major areas of artificial intelligence. The combination of deep learning and embedded systems has created good dimensions in the technical field. In this paper, a deep learning neural network algorithm can be designed that can be implemented on FPGA hardware. The PyTorch and CUDA were used as assistant methods. Convolution neural network (CNN) was also used for image classification. Three good CNN models such as ResNet, ResNeXt and MobileNet were reviewed in this article. Using these models in the design, an algorithm was eventually designed with the MobileNet model. Models were selected from different aspects such as floating operation point (FLOP), number of parameters and classification accuracy. In fact, the MobileNet-based algorithm was selected with a top-1 error of 5.5% in software with a 6-class data set. In addition, hardware simulation in MobileNet-based algorithms was presented. The parameters were converted from floating numbers to 8-bit integers. The output numbers of each layer were cut into integer fixed bits to fit the hardware constraint. A method based on working with numbers was designed to simulate number changes in hardware. The results of simulation show that, the top-1 error increased to 12.3%, which is acceptable.