development of flow for neural network diagrams

luis 88cd0e7f8c Initial 7 tahun lalu
x 88cd0e7f8c Initial 7 tahun lalu
README.md 88cd0e7f8c Initial 7 tahun lalu
benchmark_test.go 88cd0e7f8c Initial 7 tahun lalu
errors.go 88cd0e7f8c Initial 7 tahun lalu
flow.go 88cd0e7f8c Initial 7 tahun lalu
flow_test.go 88cd0e7f8c Initial 7 tahun lalu
operation.go 88cd0e7f8c Initial 7 tahun lalu
registry.go 88cd0e7f8c Initial 7 tahun lalu

README.md

Extensible Flow Engine

Features

  • Develop new Operators
  • Serialize graph of operations
  • Distribute operations to serveral workers/servers
  • HTTP Graphical UI Editor
  • Serve http or grpc API
  • Chain flow operators -- No needed since we can build operations, might be possible to build entires/methods from operators
  • System containing more than one flow
  • Define stages of the system

Special operators

f := flow.New(f);
v := f.Variable([]float32{1,2,3}) // Init value

New version

Simplified flow even more maintaining a func

flowt2

Flow will create an array of operators with references as inputs the builder will create the Graph

We should not allow user to directly pass Operation to the flow.Op method, since the serialization will be hard then

define future inputs for operation groups

g.Run([]O{op1,op2},1,2,3)

Serialize

Grab all operators in a list create a reference lookup table

System

system combine several flows

Idea:

Develop and combine operators to create a function,

Components

using ECS (entity component system) to extend each Operator, so if we have UI we store UI information in UI component

Describe components via code or serialization

Each node has components create multiple channels to each node

CNN - combines convolution matrixes with images then sends to a regular neural network

a Node could have input and properties?

Backfetch:

perpare linkages as AddSource(node) every time we call, it will call the results

// Prototype
n := flow.AddNode(&node)
n.AddSource(&otherNode)