Code Monkey home page Code Monkey logo

go-neural's Introduction

go-neural

Forked from github.com/NOX73/go-neural

Install

  go get github.com/sivamgr/go-neural
  go get github.com/sivamgr/go-neural/persist
  go get github.com/sivamgr/go-neural/learn

Neural Network

Create new network:

  import "github.com/sivamgr/go-neural"

  //...

  // Network has 9 enters and 3 layers 
  // ( 9 neurons, 9 neurons and 4 neurons).
  // Last layer is network output.
  n := neural.NewNetwork(9, []int{9,9,4})
  // Randomize sypaseses weights
  n.RandomizeSynapses()
  
  result := n.Calculate([]float64{0,1,0,1,1,1,0,1,0})
  

Persist network

Save to file:

  import "github.com/sivamgr/go-neural/persist"

  persist.ToFile("/path/to/file.json", network)

Load from file:

  import "github.com/sivamgr/go-neural/persist"

  network := persist.FromFile("/path/to/file.json")

Learning

  import "github.com/sivamgr/go-neural/learn"

  var input, idealOutput []float64
  // Learning speed [0..1]
  var speed float64

  learn.Learn(network, in, idealOut, speed)

You can get estimate of learning quality:

  e := learn.Evaluation(network, in, idealOut)

Engine

For concurrent learn, calculate & dump neural network.

	network := neural.NewNetwork(2, []int{2, 2})
	engine := New(network)
	engine.Start()

	engine.Learn([]float64{1, 2}, []float64{3, 3}, 0.1)

	out := engine.Calculate([]float64{1, 2})

Live example

Dirty live example: [https://github.com/sivamgr/go-neural-play]

go-neural's People

Contributors

nox73 avatar sivamgr avatar r0fls avatar mrclegal avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.