Git Product home page Git Product logo

gortex's People

Contributors

vseledkin avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

gortex's Issues

some problems about your Sum Product Network

i am sorry for contacting you here about your another project,but i send an email to your alibaba address but no response ,i am wondering whether you still use that email so i finad another way contact you .
about your spn project ,i am running it ,its likelihood is about 42 in 11th iteration but return to 439 in 12th iteration ,i don't know whether it is right .and i found maybe there is a bug in your SPN.initUnitRegion(), where you records r.counts[],i think it should be r.counts[step] = len(values[lowerIndex : upperIndex]),if i am worng ,please let me know .thank you .

Building generic NN corpus using gortex as the building blocks

Hi there,
First of all thank you for building this project for Go.
Im trying to use it as base of my project for RNN/LSTM networks and struggle to get things going.

Here is a toy structure that I think should work but I have few questions:

  1. Can encoder step perform all training samples at once?
  2. Can MSE calculate all costs at once ?
  3. It seems that running backprop doesnt update DW as they are initially set to 0 and matrix functions such as Tanh/Add/Mul will user CopyAs to create new matrix and return it with 0 DW.
    From the example below the cost doenst change between epochs.

import (
	"fmt"
	g "github.com/vseledkin/gortex"
)

func main() {
	optimizer := g.NewOptimizer(g.OpOp{Method: g.SGD, LearningRate: 0.01, Momentum: 0.0, Clip: 4, Debug: false})

	var encoder *g.RNN

	encoder = g.MakeRNN(10, 10, 10)

	Who := g.RandMat(10, 1)

	// define model parameters
	encoderModel := encoder.GetParameters("Encoder")

	training := g.Mat(10, 1)
	training.W = []float32{1, 2, 3, 4, 5, 6, 7, 8, 9, 10}

	yLabels := g.Mat(10, 1)
	yLabels.W = []float32{2, 3, 4, 5, 6, 7, 8, 9, 10, 11}

	var epoch int
	grapth := g.Graph{NeedsBackprop: true}
	var output *g.Matrix

	for epoch < 100 {
		//can encoder step perform all training samples at once?
		Who, output = encoder.Step(&grapth, training, Who)
		//can MSE calculate all costs at once ?
		cost := grapth.MSE(yLabels, output)
		
		grapth.Backward()

		optimizer.Step(encoderModel)

		fmt.Printf("Epoch %v cost : %v\n", epoch, cost)
		
		epoch++
	}
}

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.