← 开源
patrikeh

go-deep

Artificial Neural Network

Model DevelopmentDeep Learning FrameworksGo
在 GitHub 打开
增长势头
+024 小时新增 Star0.0%
554
Star
68
Fork
+-1
本周
4
贡献者
创建于 2017-12-09 · 更新于 2026-10-12 · 今日第 17145 名
主要开发者
patrikehMelleKoningfutjikato

patrikeh/go-deep 排名第 17,145,有 554 个星标。

同类别比较

patrikeh/go-deep 排名第 17,145,此处有 8 个同类条目;HannesStark/EquiBind 排名第 17,150。

同类别比较
名称排名指标
real-stanford/umi-on-legs17,125
语言:
Python
星标数:
555
分叉数:
34
简介:
UMI on Legs: Making Manipulation Policies Mobile with Manipulation-Centric Whole-body Controllers
swuxyj/DeepHash-pytorch17,127
语言:
Python
星标数:
555
分叉数:
114
简介:
Implementation of Some Deep Hash Algorithms, Including DPSH、DSH、DHN、HashNet、DSDH、DTSH、DFH、GreedyHash、CSQ.
Mohamedelrefaie/DrivAerNet17,131
语言:
Python
星标数:
554
分叉数:
87
简介:
A Large-Scale Multimodal Car Dataset with Computational Fluid Dynamics Simulations and Deep Learning Benchmarks
OniroAI/MonoDepth-PyTorch17,132
语言:
Python
星标数:
554
分叉数:
128
简介:
Unofficial implementation of Unsupervised Monocular Depth Estimation neural network MonoDepth in PyTorch
HannesStark/EquiBind17,150
语言:
Python
星标数:
553
分叉数:
117
简介:
EquiBind: geometric deep learning for fast predictions of the 3D structure in which a small molecule binds to a protein
broadinstitute/keras-rcnn17,154
语言:
Python
星标数:
553
分叉数:
218
简介:
Keras package for region-based convolutional neural networks (RCNNs)
dome272/Wuerstchen17,157
语言:
Jupyter Notebook
星标数:
553
分叉数:
34
简介:
Official implementation of Würstchen: Efficient Pretraining of Text-to-Image Models
facebookresearch/SymbolicMathematics17,158
语言:
Python
星标数:
553
分叉数:
121
简介:
Deep Learning for Symbolic Mathematics
关键参数与规格
关键参数与规格
参数值
语言Go
类别Model Development
子类别Deep Learning Frameworks
关键词Go
星标数554
分叉数68
贡献者4
创建日期2017-12-09
更新日期2026-10-12
1 天星标数0
7 天星标数-1
排名17,145
上次排名16,931
排名变化-214
7 天星标排名17,971
上次 7 天星标排名17,917
7 天星标排名变化-54
总星标排名17,883
上次总星标排名17,855
总星标排名变化-28
国家Germany
README 摘录

go-deep Feed forward/backpropagation neural network implementation. Currently supports: Activation functions: sigmoid, hyperbolic, ReLU Solvers: SGD, SGD with momentum/nesterov, Adam Classification modes: regression, multi-class, multi-label, binary Supports batch training in parallel Bias nodes Networks are modeled as a set of neurons connected through synapses. No GPU computations - don't use this for any large scale applications. Install Usage Import the go-deep package Define some data. Create a network with two hidden layers of size 2 and

2 respectively: Train: resulting in: Finally, make some predictions: Alternatively, batch training can be performed in parallell: Examples See for a variety of toy examples of regression, multi-class classification, binary classification, etc.

常见问题

记录了多少星标和分叉?

patrikeh/go-deep 有 554 个星标和 68 个分叉。

仓库排名是多少?

patrikeh/go-deep 排名第 17,145。

记录的语言和类别是什么?

patrikeh/go-deep 有 554 个星标,语言为 Go,类别为 Model Development。

哪个仓库排名最接近?

patrikeh/go-deep 与 HannesStark/EquiBind 比较,后者排名第 17,150,有 553 个星标。

README

go-deep

Feed forward/backpropagation neural network implementation. Currently supports:

  • Activation functions: sigmoid, hyperbolic, ReLU
  • Solvers: SGD, SGD with momentum/nesterov, Adam
  • Classification modes: regression, multi-class, multi-label, binary
  • Supports batch training in parallel
  • Bias nodes

Networks are modeled as a set of neurons connected through synapses. No GPU computations - don't use this for any large scale applications.

Install

go get -u github.com/patrikeh/go-deep

Usage

Import the go-deep package

import (
	"fmt"
	deep "github.com/patrikeh/go-deep"
	"github.com/patrikeh/go-deep/training"
)

Define some data...

var data = training.Examples{
	{[]float64{2.7810836, 2.550537003}, []float64{0}},
	{[]float64{1.465489372, 2.362125076}, []float64{0}},
	{[]float64{3.396561688, 4.400293529}, []float64{0}},
	{[]float64{1.38807019, 1.850220317}, []float64{0}},
	{[]float64{7.627531214, 2.759262235}, []float64{1}},
	{[]float64{5.332441248, 2.088626775}, []float64{1}},
	{[]float64{6.922596716, 1.77106367}, []float64{1}},
	{[]float64{8.675418651, -0.242068655}, []float64{1}},
}

Create a network with two hidden layers of size 2 and 2 respectively:

n := deep.NewNeural(&deep.Config{
	/* Input dimensionality */
	Inputs: 2,
	/* Two hidden layers consisting of two neurons each, and a single output */
	Layout: []int{2, 2, 1},
	/* Activation functions: Sigmoid, Tanh, ReLU, Linear */
	Activation: deep.ActivationSigmoid,
	/* Determines output layer activation & loss function:
	ModeRegression: linear outputs with MSE loss
	ModeMultiClass: softmax output with Cross Entropy loss
	ModeMultiLabel: sigmoid output with Cross Entropy loss
	ModeBinary: sigmoid output with binary CE loss */
	Mode: deep.ModeBinary,
	/* Weight initializers: {deep.NewNormal(μ, σ), deep.NewUniform(μ, σ)} */
	Weight: deep.NewNormal(1.0, 0.0),
	/* Apply bias */
	Bias: true,
})

Train:

// params: learning rate, momentum, alpha decay, nesterov
optimizer := training.NewSGD(0.05, 0.1, 1e-6, true)
// params: optimizer, verbosity (print stats at every 50th iteration)
trainer := training.NewTrainer(optimizer, 50)

training, heldout := data.Split(0.5)
trainer.Train(n, training, heldout, 1000) // training, validation, iterations

resulting in:

Epochs        Elapsed       Error
---           ---           ---
5             12.938µs      0.36438
10            125.691µs     0.02261
15            177.194µs     0.00404
...
1000          10.703839ms   0.00000

Finally, make some predictions:

fmt.Println(data[0].Input, "=>", n.Predict(data[0].Input))
fmt.Println(data[5].Input, "=>", n.Predict(data[5].Input))

Alternatively, batch training can be performed in parallell:

optimizer := NewAdam(0.001, 0.9, 0.999, 1e-8)
// params: optimizer, verbosity (print info at every n:th iteration), batch-size, number of workers
trainer := training.NewBatchTrainer(optimizer, 1, 200, 4)

training, heldout := data.Split(0.75)
trainer.Train(n, training, heldout, 1000) // training, validation, iterations

Examples

See training/trainer_test.go for a variety of toy examples of regression, multi-class classification, binary classification, etc.

See examples/ for more realistic examples:

Dataset Topology Epochs Accuracy
wines [5 5] 10000 ~98%
mnist [50] 25 ~97%
排名相邻
同类项目