Skip to content

PeisenZhao/tensorpack

 
 

Repository files navigation

Tensorpack

Tensorpack is a training interface based on TensorFlow.

Build Status ReadTheDoc Gitter chat

See some examples to learn about the framework. Everything runs on multiple GPUs, because why not?

Vision:

Reinforcement Learning:

Speech / NLP:

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. Focus on training speed.

    • Speed comes for free with tensorpack -- it uses TensorFlow in the correct way with no extra overhead. On various CNNs, it runs 1.5~1.7x faster than the equivalent Keras code.

    • Data-parallel multi-GPU training is off-the-shelf to use. It is as fast as Google's official benchmark. You cannot beat its speed unless you're a TensorFlow expert.

    • See tensorpack/benchmarks for some benchmark scripts.

  2. Focus on large datasets.

    • It's painful to read/preprocess data through TF. Tensorpack helps you load large datasets (e.g. ImageNet) in pure Python with autoparallelization.
  3. It's not a model wrapper.

    • There are already too many symbolic function wrappers. Tensorpack includes only a few common models, but you can use any other wrappers within tensorpack, including sonnet/Keras/slim/tflearn/tensorlayer/....

See tutorials to know more about these features.

Install:

Dependencies:

  • Python 2.7 or 3
  • Python bindings for OpenCV (Optional, but required by a lot of features)
  • TensorFlow >= 1.2.0 (Optional if you only want to use tensorpack.dataflow alone as a data processing library)
# install git, then:
pip install -U git+https://github.com/ppwwyyxx/tensorpack.git
# or add `--user` to avoid system-wide installation.

About

A Neural Net Training Interface on TensorFlow

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Python 99.6%
  • Shell 0.4%