Skip to content

jt0dd/Synapse

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Synapse

This is an alpha stage neural network system aiming to make machine learning accessible to developers in a more inuitive way than that seen in similar libraries - without the developer needing to know advanced neural networking mechanics, only what they want to accomplish and a few basics about neural networking fundamentals.

Performance

Synpase will soon feature GPU accelerated processing support. That, along side its multi threaded design, will make the system a powerful competitor among the options for JS based machine learning solutions.

In order to use Synapse, unlike in similar libraries where the developer requires a deep understanding of neural network mechanics and must choose their own network design, Synapse allows the developer to simply call up a new instance of Synapse, tie the inputs and outputs into a test environment of their own design, and everything else will happen under the hood without any work on their part.

The GPU accelerated, multi threaded evolutionary process that goes on behind the scenes will rapidly search for the optimal design to accomplish the task at hand - the developer will only need to understand the most basic neural networking concepts to utilize Synapse.

Usage

Needed Understandings:

  • Neural networks can only input and output information in terms of impulse strength, so the user must consider how that information can be clearly represented as decimals between 0 and 1 in order to interact with the network properly.
  • A system can't figure out how to solve a problem if it doesn't have all the necessary information to do so, so it's important to consider what information is really needed to accomplish the task.
  • The more complex the task, the longer it takes to train a network, with a task that's too hard to accomplish in one step requiring potentially infinite time to learn.
  • Therefore more complex tasks should be broken into sub tasks, each with its own instance of Synapse solving one piece of the puzzle at a time before passing their solution to the next instance. For example you probably couldn't figure out how to play Hearthstone without first being able to read the words on the cards.

And that's essentially all there is to it. Much of what's described here already works, but the GPU acceleration and easy to use developer interface are still on the list of things to do along with general polishing.

Known Issues

In the current build, the UI designed to display the real time neural activity of the system is broken after multi threading was introduced. Currently working on a solution.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 100.0%