Skip to content

levithomason/anny

Repository files navigation

CircleCI Test Coverage

Anny is an artificial neural network, yo!

npm install anny --save

Get Started

Read the documentation or try the demo.

Train a multilayer perceptron to approximate an OR logic gate:

const {
  Network,
  Layer,
  Trainer,
  DATA,
} = require('anny')

const network = new Network([new Layer(2), new Layer(1)])
const trainer = new Trainer()

trainer.train(network, DATA.ORGate)

network.activate([0, 0]) // => 0.000836743108
network.activate([0, 1]) // => 0.998253857294

Why Anny?

I wanted to understand machine learning.

What I cannot create, I do not understand. Know how to solve every problem that has been solved. — Richard Feynman

Inspirations

  1. Watching DeepMind's DQN teach itself to play Atari.
  2. Playing with WaterWorld, a DQN implementation in JavaScript (REINFORCEjs).
  3. Realizing DeepMind's work was public, and this can be done in a browser.

Libraries

Notes

My Google Doc notes from neuralnetworksanddeeplearning.com
Good Weight Initializations
Backpropagation
Efficient Backpropagation Equation references in the source code point to this doc.
Convolution Networks