ProductPromotion
Logo

Go.Lang

made by https://0x3d.site

GitHub - Xamber/Varis: Golang Neural Network
Golang Neural Network . Contribute to Xamber/Varis development by creating an account on GitHub.
Visit Site

GitHub - Xamber/Varis: Golang Neural Network

GitHub - Xamber/Varis: Golang Neural Network

Varis

Neural Networks with GO

Build Status Go Report Card API Reference codecov MIT License Release

About Package

Some time ago I decided to learn Go language and neural networks. So it's my variation of Neural Networks library. I tried to make library for programmers (not for mathematics).

For now Varis is 0.1 version.

I would be happy if someone can find errors and give advices. Thank you. Artem.

Main features

  • All neurons and synapses are goroutines.
  • Golang channels for connecting neurons.
  • No dependencies

Installation

go get github.com/Xamber/Varis

Usage

package main

import (
	"github.com/Xamber/Varis"
)

func main() {
	net := varis.CreatePerceptron(2, 3, 1)

	dataset := varis.Dataset{
		{varis.Vector{0.0, 0.0}, varis.Vector{1.0}},
		{varis.Vector{1.0, 0.0}, varis.Vector{0.0}},
		{varis.Vector{0.0, 1.0}, varis.Vector{0.0}},
		{varis.Vector{1.0, 1.0}, varis.Vector{1.0}},
	}

	trainer := varis.PerceptronTrainer{
		Network: &net,
		Dataset: dataset,
	}

	trainer.BackPropagation(10000)
	varis.PrintCalculation = true

	net.Calculate(varis.Vector{0.0, 0.0}) // Output: [0.9816677167418877]
	net.Calculate(varis.Vector{1.0, 0.0}) // Output: [0.02076530509106318]
	net.Calculate(varis.Vector{0.0, 1.0}) // Output: [0.018253250887023762]
	net.Calculate(varis.Vector{1.0, 1.0}) // Output: [0.9847884089930481]
}

Roadmap 0.2-0.5

  • Add locks
  • Add training channels
  • Improve speed
  • Add error return to functions.
  • Create more tests and benchmarks.
  • Create server and cli realization for use Varis as a application

Alternatives

gonn | go-mind | go-perceptron-go

Articles
to learn more about the golang concepts.

Resources
which are currently available to browse on.

mail [email protected] to add your project or resources here ๐Ÿ”ฅ.

FAQ's
to know more about the topic.

mail [email protected] to add your project or resources here ๐Ÿ”ฅ.

Queries
or most google FAQ's about GoLang.

mail [email protected] to add more queries here ๐Ÿ”.

More Sites
to check out once you're finished browsing here.

0x3d
https://www.0x3d.site/
0x3d is designed for aggregating information.
NodeJS
https://nodejs.0x3d.site/
NodeJS Online Directory
Cross Platform
https://cross-platform.0x3d.site/
Cross Platform Online Directory
Open Source
https://open-source.0x3d.site/
Open Source Online Directory
Analytics
https://analytics.0x3d.site/
Analytics Online Directory
JavaScript
https://javascript.0x3d.site/
JavaScript Online Directory
GoLang
https://golang.0x3d.site/
GoLang Online Directory
Python
https://python.0x3d.site/
Python Online Directory
Swift
https://swift.0x3d.site/
Swift Online Directory
Rust
https://rust.0x3d.site/
Rust Online Directory
Scala
https://scala.0x3d.site/
Scala Online Directory
Ruby
https://ruby.0x3d.site/
Ruby Online Directory
Clojure
https://clojure.0x3d.site/
Clojure Online Directory
Elixir
https://elixir.0x3d.site/
Elixir Online Directory
Elm
https://elm.0x3d.site/
Elm Online Directory
Lua
https://lua.0x3d.site/
Lua Online Directory
C Programming
https://c-programming.0x3d.site/
C Programming Online Directory
C++ Programming
https://cpp-programming.0x3d.site/
C++ Programming Online Directory
R Programming
https://r-programming.0x3d.site/
R Programming Online Directory
Perl
https://perl.0x3d.site/
Perl Online Directory
Java
https://java.0x3d.site/
Java Online Directory
Kotlin
https://kotlin.0x3d.site/
Kotlin Online Directory
PHP
https://php.0x3d.site/
PHP Online Directory
React JS
https://react.0x3d.site/
React JS Online Directory
Angular
https://angular.0x3d.site/
Angular JS Online Directory