Giter Site home page Giter Site logo

dingke / neon Goto Github PK

View Code? Open in Web Editor NEW

This project forked from nervanasystems/neon

0.0 2.0 0.0 6.64 MB

Python based Deep Learning Framework by Nervana™

Home Page: http://neon.nervanasys.com/

License: Apache License 2.0

Makefile 0.51% Python 63.09% Cuda 0.69% C 0.30% CSS 32.32% C++ 3.08%

neon's Introduction

neon

neon is Nervana's Python based Deep Learning framework and achieves the fastest performance on many common deep neural networks such as AlexNet, VGG and GoogLeNet. We have designed it with the following functionality in mind:

  • Support for commonly used models and examples: convnets, MLPs, RNNs, LSTMs, autoencoders. You can find many pre-trained implementations of these in our model zoo
  • Tight integration with nervanagpu kernels for fp16 and fp32 (benchmarks) on Maxwell GPUs
    • 3s/macrobatch (3072 images) on AlexNet on Titan X (Full run on 1 GPU ~ 32 hrs)
    • Fast image captioning model (~200x faster than CPU based NeuralTalk)
  • Basic automatic differentiation support
  • Framework for visualization
  • Swappable hardware backends: write code once and then deploy on CPUs, GPUs, or Nervana hardware

New features in latest release.

We use neon internally at Nervana to solve our customers' problems across many domains. We are hiring across several roles. Apply here!

Getting started

Basic information to get started is below. Please consult the full documentation for more information.

Installation

Quick Install

On a Mac OSX or Linux machine, enter the following to download and install neon, and use it to train your first multi-layer perceptron or convolutional neural networks below.

git clone https://github.com/NervanaSystems/neon.git
cd neon
make
. .venv/bin/activate
neon examples/mnist_mlp.yaml
# alternatively, use a script:
python examples/mnist_mlp.py

Code organization

backends    --- implementation of different hardware backends
layers      --- layer code
models      --- model code
optimizers  --- learning rules
transforms  --- activation & cost functions

Documentation

The complete documentation for neon is available here. Some useful starting points are:

Support

For any bugs or feature requests please:

  1. Search the open and closed issues list to see if we're already working on what you have uncovered.
  2. Check that your issue/request hasn't already been addressed in our Frequently Asked Questions (FAQ) or neon-users Google group.
  3. File a new issue or submit a new pull request if you have some code you'd like to contribute

For other questions and discussions please:

  1. Post a message to the neon-users Google group

Machine learning OPerations (MOP) Layer

The MOP is an abstraction layer for Nervana's system software and hardware which includes the Nervana Engine, a custom distributed processor for deep learning.

The MOP consists of linear algebra and other operations required by deep learning. Some MOP operations are currently exposed in neon, while others, such as distributed primitives, will be exposed in later versions as well as in other forthcoming Nervana libraries.

Defining models in a MOP-compliant manner guarantees they will run on all provided backends. It also provides a way for existing Deep Learning frameworks such as theano, torch, and caffe to interface with the Nervana Engine.

License

We are releasing neon under an open source Apache 2.0 License. We welcome you to contact us with your use cases.

neon's People

Watchers

 avatar  avatar

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.