Giter Club home page Giter Club logo

anynet's Introduction

anynet GoDoc

anynet is a neural network framework based on anydiff and anyvec.

Supported features

anynet ships with a ton of built-in features:

  • Feed-forward neural networks
    • Fully-connected layers
    • Convolution
    • Dropout
    • Max/Mean pooling
    • Batch normalization
    • Residual connections
    • Image scaling
    • Image padding
  • Recurrent neural networks
    • LSTM
    • Bidirectional RNNs
    • npRNN and IRNN (vanilla RNNs with ReLU activations)
  • Training setups
    • Vector-to-vector (standard feed-forward)
    • Sequence-to-sequence (standard RNN)
    • Sequence-to-vector
    • Connectionist Temporal Classification
  • Miscellaneous
    • Gumbel Softmax

Plenty of stuff is missing from the above list. Luckily, it's easy to write new APIs on top of anynet. Here is a non-exhaustive list of packages that work with anynet:

TODO

Here are some minor things I'd like to get done at some point. None of these are very urgent, as anynet is already complete for the most part.

  • anyrnn
    • Tests comparing LSTM outputs to another implementation
    • GRU (gated recurrent units)
  • anysgd
    • Gradient clipping
    • Marshalling for RMSProp
    • Marshalling for Momentum

anynet's People

Contributors

unixpickle avatar

Stargazers

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

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

anynet's Issues

Initialize anynet.Net with Params?

Can I initialize a network with parameters? Or should I go through each layer and init the parameters from there? I am having trouble recognizing if there is this capability. Essentially, I am trying to accomplish something like this:

parameters := net.Parameters()
params := make([]anyvec.Vector, len(parameters))
for i, param := range parameters {
	params[i] = param.Output()
}

// And possible the reverse?
for i, param := range parameters {
	param[i].Set(someVector)
}

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.