shenzhangzhou / tensorpack

A Neural Net Training Interface on TensorFlow

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Tensorpack

Tensorpack is a training interface based on TensorFlow.

Build Status ReadTheDoc Gitter chat model-zoo

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 efficient 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 runs as fast as Google's official benchmark.

    • See tensorpack/benchmarks for the 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 too many symbolic function wrappers. Tensorpack includes only a few common models. You can use any symbolic function library inside tensorpack, including tflayers/Keras/slim/tflearn/tensorlayer/....

See tutorials to know more about these features.

Examples:

Instead of showing you 10 random networks with random accuracy, tensorpack examples faithfully replicate papers and care about performance. And everything runs on multiple GPUs. Some highlights:

Vision:

Reinforcement Learning:

Speech / NLP:

Install:

Dependencies:

  • Python 2.7 or 3
  • Python bindings for OpenCV (Optional, but required by a lot of features)
  • TensorFlow >= 1.3.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.

Citing Tensorpack:

If you use Tensorpack in your research or wish to refer to the examples, please cite with:

@misc{wu2016tensorpack,
  title={Tensorpack},
  author={Wu, Yuxin and others},
  howpublished={\url{https://github.com/tensorpack/}},
  year={2016}
}

About

A Neural Net Training Interface on TensorFlow

License:Apache License 2.0


Languages

Language:Python 99.7%Language:Shell 0.3%