Jump to content

Fast Artificial Neural Network

From Wikipedia, the free encyclopedia
This is an old revision of this page, as edited by DaanLeiva (talk | contribs) at 01:17, 24 March 2017 (Language Bindings). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.


FANN (Fast Artificial Neural Network) is cross-platform open source programming library for developing multilayer feedforward Artificial Neural Networks.

Research

The original FANN report written by Steffen Nissen has been cited 337 times per google scholar. The library has been used for research in image recognition, machine learning, biology, genetics, aerospace engineering, environmental sciences and artificial intelligence.
Some notable publications that have cited FANN

  • Supervised pattern classification based on optimum-path forest
  • Efficient supervised optimum-path forest classification for large datasets
  • A Multilevel Mixture-of-Experts Framework for Pedestrian Classification
  • A stochastic model updating technique for complex aerospace structures
  • Prediction of Local Structural Stabilities of Proteins from Their Amino Acid Sequences

Characteristics

FAN supports cross-platform execution of single and multilayer networks. It includes functions that simplify the creating, training and testing of neural networks. It has bindings for over 20 programming languages.
In the FANN website multiple graphical inter-phases are available for use with the library.
Training for FANN is carried out through backpropagation. The internal training function are optimized to decrease the training time.
Trained Artificial Neural Networks can be stores as .net files to quickly saved and load ANNs for future use or future training. This allows the user to partition the training in multiple steps which can be useful when dealing with large training datasets or sizable neural networks.
FANN supports fixed point and floating point arithmetic.

History

FANN was originally written by Steffen Nissen. It’s original implementation is described in Nissen’s 2003 report “Implementation of a Fast Artificial Neural Network Library (FANN)”. This report was submitted to the computer science department at the university of Copengahen (DIKU). In his original report Nissen describes that one of his primary motivations in writing FANN was developing a neural network library that was friendly to both, fixed point, and floating point arithmetic. Nissen wanted to develop an autonomous agent that can learn from experience. His goal was to use this autonomous agent to create a virtual player in Quake III Arena that can learn from game play.
Since its original 1.0.0 version, the library’s functionality has been expanded by the creator and its many contributors to include more practical constructors, different activation functions, simpler access to parameters and bindings to multiple programming languages. It has been downloaded 450,000 times since it’s move to Source Forge in 2003 and 29,000 time in 2016 alone.

Language Bindings

While FANN was originally written in C, these language bindings have been created by FANN contributors:

References