GNU Gneural Network

Introduction

Gneural Network is the GNU package which implements a programmable neural network. The current version, 0.9.1, has the following features:



A scripting language is available which allows users to define their own neural network without having to know anything about coding.

Advanced programmers can use the methods/routines inside the code for their own purposes.

When defining the neurons of a network, it is possible to choose among various discriminant and activation functions, etc.

Different methods to train a neural network are available, such as genetic algorithms, multi-scale Monte Carlo optimizers, simulated annealing, and others.

Several training methods can run in parallel on clusters.

Neural networks can be saved once trained for later use.

The code is truly cross platform since it is entirely developed in C and does not depend on any external library.

The network can now learn tasks defined by the user. An example of script defining a simple network which fits a curve is given. We plan to deliver more advanced features very soon. In particular, we are already spending efforts to implement recurrent networks. We also plan to implement learning reinforcement techniques and apply Gneural Network for deep learning applications. We will release the data along with the trained network.

The Ethical Motivations

Nowadays, companies such as Google and IBM are doing a great service to all of us by showing what can be achieved by using Artificial Intelligence (AI). For instance, the results achieved by AlphaGo and Watson are outstanding and truly inspiring (the least one can say). But the fact that only companies and labs have access to this technology can represent a threat. First of all, we cannot know how money driven companies are going to use this novel technology. Second, this monopoly slows down technology adoption. As a matter of fact, data and trained neural networks are rarely shared, and one should always remember that in practice without the training data it is almost impossible to duplicate results (even when the source code is available).

We should ask ourselves: Do we really want that only a few can use AI? Should not Progress and Knowledge be for everyone instead?

In spite of the plenty of AI codes available and released under some permissive license, it is time for a Free AI which gives complete freedom to the users and the community. Hopefully, this could reduce the duplication of efforts one observes today.

This is why the author, Jean Michel Sellier, decided to create Gneural Network and release it under a free license like GPL.

Downloading Gneural Network

You can download Gneural Network from here.

Maintainer

Gneural Network is currently being maintained by Jean Michel Sellier who is the author of several other GNU packages (Archimedes, nano-archimedes and Dionysus). Please, feel free to contact him at jeanmichel.sellier@gmail.com.

Mailing List

Announcements about Gneural Network and most other GNU Software are made on info-gnu@gnu.org

There is also a special list used for Gneural Network only, gneuralnetwork@gnu.org. To subscribe to this mailing list, please go to the following link.

Support Gneural Network!

Please, remember that Gneural Network is a volunteer effort but you are more than welcome to contribute! There are several ways to do so, for example you can implement some code/method and/or you can financially support the development of new features in Gneural Network. In case you are interested in supporting this package, please, contact me at jeanmichel.sellier@gmail.com

Licensing

Gneural Network is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version.