GitHub - srkm009/tensorpack: Neural Network Toolbox on TensorFlow

Skip to content

Navigation Menu

Sign in

Appearance settings

tensorpack

Neural Network Toolbox on TensorFlow.

Build Status badge

See some examples to learn about the framework:

Vision:

Reinforcement Learning:

Speech / NLP:

The examples are not only for demonstration of the framework -- you can train them and reproduce the results in papers.

Features:

It's Yet Another TF wrapper, but different in:

  1. Not focus on models.

    • There are already too many symbolic function wrappers. Tensorpack includes only a few common models, and helpful tools such as LinearWrap to simplify large models. But you can use any other wrappers within tensorpack, such as sonnet/Keras/slim/tflearn/tensorlayer/....
  2. Focus on training speed.

    • Tensorpack trainer is almost always faster than feed_dict based wrappers. Even on a tiny CNN example, the training runs 2x faster than the equivalent Keras code.

    • Data-parallel multi-GPU training is off-the-shelf to use. It is as fast as Google's benchmark code.

    • Data-parallel distributed training is off-the-shelf to use. It is as slow as Google's benchmark code.

  3. Focus on large datasets.

    • It's painful to read/preprocess data from TF. Use DataFlow to efficiently process large datasets such as ImageNet in pure Python.
    • DataFlow has a unified interface, so you can compose and reuse them to perform complex preprocessing.
  4. Interface of extensible Callbacks. Write a callback to implement everything you want to do apart from the training iterations, and enable it with one line of code. Common examples include:

    • Change hyperparameters during training
    • Print some tensors of interest
    • Run inference on a test dataset
    • Run some operations once a while
    • Send loss to your phone

Install:

Dependencies:

  • Python 2 or 3
  • TensorFlow >= 1.0.0 (>=1.1.0 for Multi-GPU)
  • Python bindings for OpenCV (Optional, but required by a lot of features)
pip install -U git+https://github.com/ppwwyyxx/tensorpack.git
# or add `--user` to avoid system-wide installation.

Languages

  • Python 98.6%
  • Other 1.4%