English

A parallel Fortran framework for neural networks and deep learning

Machine Learning 2019-03-26 v2 Machine Learning

Abstract

This paper describes neural-fortran, a parallel Fortran framework for neural networks and deep learning. It features a simple interface to construct feed-forward neural networks of arbitrary structure and size, several activation functions, and stochastic gradient descent as the default optimization algorithm. Neural-fortran also leverages the Fortran 2018 standard collective subroutines to achieve data-based parallelism on shared- or distributed-memory machines. First, I describe the implementation of neural networks with Fortran derived types, whole-array arithmetic, and collective sum and broadcast operations to achieve parallelism. Second, I demonstrate the use of neural-fortran in an example of recognizing hand-written digits from images. Finally, I evaluate the computational performance in both serial and parallel modes. Ease of use and computational performance are similar to an existing popular machine learning framework, making neural-fortran a viable candidate for further development and use in production.

Keywords

Cite

@article{arxiv.1902.06714,
  title  = {A parallel Fortran framework for neural networks and deep learning},
  author = {Milan Curcic},
  journal= {arXiv preprint arXiv:1902.06714},
  year   = {2019}
}

Comments

Submitted to ACM SIGPLAN Fortran Forum. Reviewed by Arjen Markus and Izaak Beekman

R2 v1 2026-06-23T07:44:01.904Z