Case Study on the Use of Winograd-Based Convolution for CNN Inference in FPGA

  • Artur H. C. Pereira UnB
  • Marcus V. Lamar UnB

Resumo


Este trabalho explora a implementação de Redes Neurais Convolucionais (CNNs) em FPGAs. Dois circuitos são investigados: um baseado no algoritmo de convolução espacial 2-D e outro baseado no algoritmo de Winograd para convolução. O algoritmo de Winograd simplifica o processo de convolução por meio de transformações lineares que reduzam o número de multiplicações necessárias. No entanto, há um aumento na complexidade do circuito devido à lógica adicional para realizar as transformações. As duas implementações são comparadas em um estudo de caso de uma arquitetura simples para resolver o problema de classificação de dígitos manuscritos no conjunto de dados MNIST.

Referências

Simple MNIST convnet. https://keras.io/examples/vision/mnist_convnet/. Acessado em: 26/07/2023.

Lavin, A. and Gray, S. (2016). Fast algorithms for convolutional neural networks. In Proceedings of the IEEE conference on computer vision and pattern recognition, pages 4013–4021.

Liang, Y., Lu, L., Xiao, Q., and Yan, S. (2019). Evaluating fast algorithms for convolutional neural networks on FPGAs. IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems, 39(4):857–870.

Wang, D., Xu, K., and Jiang, D. (2017). Pipecnn: An OpenCL-based open-source FPGA accelerator for convolution neural networks. In 2017 International Conference on Field Programmable Technology (ICFPT), pages 279–282.

Winograd, S. (1987). Arithmetic complexity of computations. CBMS-NSF regional conference series in applied mathematics 33. Society for Industrial and Applied Mathematics.

Wu, R., Guo, X., Du, J., and Li, J. (2021). Accelerating neural network inference on FPGA-based platforms—a survey. Electronics, 10(9):1025.
Publicado
17/10/2023
PEREIRA, Artur H. C.; LAMAR, Marcus V.. Case Study on the Use of Winograd-Based Convolution for CNN Inference in FPGA. In: WORKSHOP DE INICIAÇÃO CIENTÍFICA - SIMPÓSIO EM SISTEMAS COMPUTACIONAIS DE ALTO DESEMPENHO (SSCAD), 24. , 2023, Porto Alegre/RS. Anais [...]. Porto Alegre: Sociedade Brasileira de Computação, 2023 . p. 33-40. DOI: https://doi.org/10.5753/wscad_estendido.2023.235889.