Joone project is a FREE Neural Network framework to create, train and test artificial neural networks. The aim is to create a powerful environment both for enthusiastic and professional users, based on the newest Java technologies.
Joone is composed by a central engine that is the fulcrum of all applications that are developed with Joone. Joone's neural networks can be built on a local machine, be trained on a distributed environment and run on whatever device.
Everyone can write new modules to implement new algorithms or new architectures starting from the simple components distributed with the core engine. The main idea is to create the basis to promote a zillion of AI applications that revolve around the core framework.
Here are some key features of "Joone":
· The Joone's framework is built with a modular architecture: the 'core engine' is separated from the visual interface and permits easily to implement any new application based on it.
· Joone is portable, being written in 100% pure Java. It can run in any environment, from big multiprocessor machines to small palmtop devices.
Neural Network's usability and transportation
· The neural networks based on Joone are usable stand-alone (separated from the framework that has created or trained them).
· The Joone's based neural networks can be transported using common protocols (like http or ftp) to run on remote machines
· The framework is expandable with more components to implement new learning algorithms or new architectures.
· With Joone it's possible to implement any kind of optimization; there are two main methods to find the best solution to a given problem (i.e. to find the best neural network): local optimization and global optimization techniques. The local optimization is obtained applying some 'internal' mechanism (the most famous is the momentum), the global optimization, instead, try to find the best solution applying some external technique to select the best performing NN among a predefined group of NNs (like genetic algorithms). Both are implemented with Joone, and many new optimization techniques can be experimented thanks to its expansibility.
Multithreading and scalability
· Joone's core engine is based on a multithreaded engine, capable to scale using all the computing resources available.
· Joone provides the professional users with a distributed environment to train many neural networks in parallel on several machines.
· Joone is freely usable. Its license is the Lesser General Public License (LGPL).
· You're encouraged to try it and use it for whatever (both commercial and academic) application.
What's New in 1.2.1 Stable Release:
· This release adds support for the Groovy scripting language.
· LogarithmicPlugin has been added, to apply a logarithmic transformation (base e) to input data. "Save as XML" has been added to the GUI Editor, in order to permit saving a neural network in XML format.
· A number of bugs have been fixed, including a problem that prevented SangerSynapse from learning when in training mode.
· The inspection panel no longer shows the biases for Layers for which this doesn't make sense.
· This release fixes the lack of the first column when the inspected values were copied in the clipboard.
What's New in 2.0.0RC1 Development Release:
· Performance was improved by 50%, thanks to heavy refactoring of the core engine, by adding the single-thread mode.
· A set of tools was added in order to hide the complexity of the API.
· A new Image I/O component has been added in order read and write directly from/to image files.
· A new SoftMax Layer has been added to build neural networks able to resolve 1 of C classification problems.
· The usability of the property panels has been improved by adopting a new file chooser panel and a visual calendar panel.
· Several bugs were fixed and the documentation has been updated with the new features.