# A parallel Fortran framework for neural networks and deep learning

**Authors:** Milan Curcic

arXiv: 1902.06714 · 2019-03-26

## TL;DR

Neural-fortran is a parallel Fortran framework enabling neural network construction and training with data parallelism, achieving competitive performance and ease of use compared to existing frameworks.

## Contribution

This work introduces neural-fortran, a novel Fortran-based framework for neural networks that leverages Fortran 2018 features for parallelism, offering a new tool for scientific computing.

## Key findings

- Achieves data parallelism using Fortran 2018 collective subroutines.
- Performs comparably to popular machine learning frameworks in speed and usability.
- Successfully recognizes handwritten digits with the framework.

## 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.

## Full text

_Full body text omitted from this summary view._ Fetch the complete paper as Markdown: https://tomesphere.com/paper/1902.06714/full.md

## Figures

5 figures with captions in the complete paper: https://tomesphere.com/paper/1902.06714/full.md

## References

27 references — full list in the complete paper: https://tomesphere.com/paper/1902.06714/full.md

---
Source: https://tomesphere.com/paper/1902.06714