Synaptic - Advanced Neural Nets In JavaScript
Written by Mike James   
Thursday, 23 October 2014

This is a project you need to know about if you have an interest in AI or teaching AI. Put simply it is JavaScript library that lets you implement and work with neural networks. What's special is that this one lets you do much more than a simple introduction.

Synaptic is the work of a single programmer Juan Cazala, a computer engineering student in Argentina. In his spare time it seems he likes having fun with JavaScript and has created an open source framework that makes building, training and testing neural networks very easy.

You can run Synaptic in a browser or using Node.js and, while it isn't up to working with the huge networks that the likes of Google are playing with, it is fast enough for real work. It is another aspect of the ever-improving performance of modern JavaScript.

 

Synaptic implements a general "architecture free" algorithm that can be used to create a wider range of network types than usually encountered. It comes with some predefined networks - multilayer perceptrons, multilayer long-short term memory networks, liquid state machines, and so on. The key difference is that Synaptic allows you to create second order and recurrent networks, which are not as commonly encountered as simple feed forward networks and are traditionally regarded as harder to work with.

 synapticexample

There are also some nice examples, but be warned, if you try them out you might see an error page due to the author's account being over its CPU limit. This is a low budget production that could benefit from some sponsorship.

Once you get beyond the demos then you will have to learn how to create layers of neurons. To train the model all you have to do is provide an input and a target output. You can work with layers or complete networks of layers and even models using multiple networks and more.

synaptic1

 

It is difficult to give an idea of how sophisticated this all is and the best way to appreciate it is to take a look at the GitHub page. 

This is a project that is worth supporting as well as using. As the author says at the end of the Read.me: 

"Anybody in the world is welcome to contribute in the development of the project."

 

Banner


Help Curiosity Avoid Sand On Mars
21/06/2020

NASA wants help to add a new on-board capability to its Mars Rover - that of visually distinguishing between different types of terrain. AI4Mars is a Zooniverse project to label images captured by Spi [ ... ]



Apple Blocks 15 W3C Standards In Safari
08/07/2020

When is a web browser not standards-based? When it's made by Apple. Is it right for a browser maker to decide which standards to implement? Apple is firmly of the opinion that it can pick and choose.

 [ ... ]


More News

 

graphics

 



 

Comments




or email your comment to: comments@i-programmer.info

Last Updated ( Thursday, 23 October 2014 )