350 rub
Journal Neurocomputers №6 for 2023 г.
Article in number:
Analysis of software libraries for the development of embedded neural network applications
Type of article: scientific article
DOI: https://doi.org/10.18127/j19998554-202306-01
UDC: 681.142.2
Authors:

B.V. Artemiev1, A.I. Vlasov2, J.O. Isroilov3, S. Mulatola4

1–4 Bauman Moscow State Technical University (Moscow, Russia)

1 boris@artemiev.su, 2 vlasov@iu4.bmstu.ru, 3 woot_1999@mail.ru, 4 samharm777@gmail.com

Abstract:

Problem setting. Much attention has recently been paid to the implementation of neural network technologies using hardware or software. One of the problems of successful implementation of neural network technologies is the formation of sets of special embedded libraries (frameworks) for neural network applications. Deep learning algorithm frameworks are distributed, as a rule, in the form of open source code and are used to create various applications. Such libraries are collections of routines or objects implemented in machine code and used to develop software for embedded neural network applications. They implement effective tools for developing neural network applications in various programming languages. The reasoned choice of a particular framework is an important and urgent task.

Target. Analysis of frameworks for creating neural networks of varying complexity for the development of embedded neural network applications.

Results. In this paper, a comprehensive methodology for using libraries: Deeplearning4j, FANN and TensorFlow for the implementation of neural network applications is proposed. Their general structure and main features are considered.

Practical significance. The significance of this work consists in substantiating the choice of necessary programs and algorithms implemented in the form of open source frameworks, which make it possible to reduce the development time of embedded neural network applications by using embedded IP modules of the program code.

Pages: 5-12
For citation

Artemiev B.V., Vlasov A.I., Isroilov J.O., Mulatola S. Analysis of software libraries for the development of embedded neural network applications. Neurocomputers. 2023. V. 25. № 6. Р. 5-12. DOI: https://doi.org/10.18127/j19998554-202306-01 (In Russian)

References
  1. Ilyin I.V., Gudkov K.V. Analysis of software tools for deep learning of artificial neural networks. Modern information technologies. 2018. № 27. P. 22–28. (In Russian)
  2. Prudius A.A., Karpunin A.A., Vlasov A.I. Analysis of machine learning methods to improve efficiency of BIG DATA processing in Industry 4.0. Journal of Physics: Conference Series. 2019. V. 1333. № 3. P. 032065. DOI 10.1088/1742-6596/1333/3/032065.
  3. Vyugin V.V. Mathematical foundations of the theory of machine learning and forecasting. Moscow: MCNMO 2013. 387 p. (In Russian)
  4. Patterson J., Gibson A. Deep learning from the point of view of practice. M.: DMK-Press. 2018. 418 p. (In Russian)
  5. Fast Artificial Network Library (FANN). [Electronic resource] – Access mode: http://leenissen.dk/fann/wp/, date of reference 17.09.2023.
  6. Tutorials covering basic DL4J features. [Electronic resource] – Access mode: https://deeplearning4j.konduit.ai/multiproject/tuto-rials/quickstart, date of reference 17.09.2023.
  7. Bastien F., Lamblin P., Pascanu R., Bergstra J., Goodfellow I., Bergeron A., Bouchard N., Warde-Farley D., Bengio Y. Theano: new features and speed improvements. arXiv preprint arXiv:1211.5590. 2012.
  8. Collobert R., Kavukcuoglu K., Farabet C. Torch7: A matlab-like environment for machine learning. BigLearn, Neural Information Processing Systems. 2011.
  9. Abadi M., Agarwal A., Barham P., Brevdo E., Chen Z., Citro C., Ghemawat S. TensorFlow: Large-Scale Machine Learning on Heterogeneous Distributed Systems. arXiv preprint arXiv:1603.04467. 2016.
  10. Jia Y., Shelhamer E., Donahue J, Karayev S., Long J., Girshick R., Darrell T. Caffe: Convolutional architecture for fast feature embedding. Proceedings of the ACM International Conference on Multimedia. 2014. P. 675–678. DOI 10.1145/2647868.2654889.
  11. Marblestone A.H., Zamft B.M., Maguire Y.G., Shapiro M.G., Cybulski T.R., Glaser J.I., Amodei D., Stranges P.B., Kalhor R., Dalrymple D.A. et al. Physical principles for scalable neural recording. Frontiers in Computational Neuroscience. 2013. V. 7. P. 137. DOI 10.3389/fncom.2013.00137.
  12. Osipov P. PyBrain we work with neural networks in Python. [Electronic resource] – Access mode: https://habrahabr.ru/post/148407/, date of reference 17.09.2023. (In Russian)
  13. A Neural Network in 11 lines of Python (Part 1). [Electronic resource] – Access mode: http://iamtrask.github.io/2015/07/12/basic-python-network/, date of reference 17.09.2023.
  14. Kovalev V.A., Kalinovsky A.A., Kovalev S.L. Comparative analysis of deep learning frameworks. Big Data and Advanced Analytics. 2016. №. 2. P. 218–228. (In Russian)
  15. Ganaeva E.A., Barabanov V.F., Grebennikova N.I., Boldyrev D.S. Software implementation of the neural network constructor. Bulletin of the Voronezh State Technical University. 2017. V. 13. №. 6. P. 25–31. (In Russian)
  16. Popkov S.I. Software implementation of interlanguage interaction based on dynamic libraries. Neurocomputers: development, application. 2018. № 3. P. 39–49. (In Russian)
  17. Kochetov M.E., Bazhenov R.I. Using the BRAINS library to develop a neural network in the JAVASCRIPT programming language. International Journal of Information Technology and Energy Efficiency. 2019. V. 4. №. 4(14). P. 15–28. (In Russian)
  18. Guseva A.I., Malykhina G.F. Library of programs for object recognition based on aerial photography data. Collection of reports of the student. scientific. conf. Institute of Information Technology and Management "Informatics and Cybernetics". 2015. P. 177–179. (In Russian)
  19. Panfilova K.V., Vorotnev D.V., Golovanov R.V., Umnyashkin S.V., Sharonov I.O. Methods of developing a library for importing the structure of neural networks in the NNEF format for the OPENVX standard. Radio electronics issues. 2018. № 8. P. 112–119. (In Russian)
  20. Saversky V.O. Functionality of the CORE ML framework. StudNet. 2020. V. 3. № 7. P. 619–627. (In Russian)
  21. Denisenko A.A. Solving the binary classification problem using convolutional neural networks using TENSORFLOW framework. Materials of the V International Scientific Conference "Topical issues of technical sciences". 2019. P. 1–4. (In Russian)
  22. Zotov A.V., Filippenko V.A. Possibilities of open source machine learning frameworks for data analysis. Enigma. 2019. V. 1. № 11-1. P. 679–687. (In Russian)
  23. Bunyakina E.V., Galchenko M.I. Application of the h2o framework in time series processing. High-tech technologies in space research of the Earth. 2020. V. 12. № 4. P. 56–64. (In Russian)
  24. Stepanyan I.V. Methodology and tools for designing binary neural networks. Programming. 2020. № 1. P. 54–62. (In Russian)
  25. Creating a simple neural network. [Electronic resource] – Access mode: https://habr.com/ru/company/nix/blog/423647/, date of reference 17.09.2023. (In Russian)
  26. Where to start studying computer vision? [Electronic resource] – Access mode: https://qna.habr.com/q/339327, date of reference 17.09.2023. (In Russian)
  27. FANN Neural Network: How to install and configure it on Linux and Windows? [Electronic resource] – Access mode: https://codernet.ru/articles/drugoe/nejronnaya_set_fann_kak_ustanovit_i_nastroit_ee_na_linux_i_windows/, date of reference 17.09.2023. (In Russian)
  28. A complete Python Tensorflow Tutorial. [Electronic resource] – Access mode: https://www.c-sharpcorner.com/article/a-complete-python-tensorflow-tutorial/, date of reference 17.09.2023. (In Russian)
  29. A brief guide to Tensorflow. [Electronic resource] – Access mode: https://pythonist.ru/kratkoe-rukovodstvo-po-tensorflow/, date of reference 17.09.2023. (In Russian)
  30. General concepts of Deeplearning4j. [Electronic resource] – Access mode: https://deeplearning4j.konduit.ai/v/en-1.0.0-beta7/getting-started/core-concepts, date of reference 17.09.2023. (In Russian)
  31. C++ Manual [Electronic resource] – Access mode: https://cplusplus.com/doc/, date of reference 17.09.2023. (In Russian)
  32. Java. [Electronic resource] – Access mode: https://ru.wikipedia.org/wiki/Java, date of reference 17.09.2023.
  33. Python Manual. [Electronic resource] – Access mode: https://www.python.org, date of reference 17.09.2023. (In Russian)
  34. Andriyanov N.A., Volnenko A.A., Dementiev V.E. Monitoring of the condition of metal products based on computer vision systems. Neurocomputers. 2023. V. 25. № 5. Р. 50–57. DOI 10.18127/j19998554-202305-07. (In Russian)
  35. Five examples of successful use of AI in production. [Electronic resource] – Access mode: https://habr.com/ru/articles/727358/, date of reference 17.09.2023. (In Russian)
Date of receipt: 20.09.2023
Approved after review: 27.10.2023
Accepted for publication: 26.11.2023