This package is for reproduction of anytime neural networks and Log-DenseNet.
An example of Log-DenseNet. An example of anytime network work
The following is the original README of the package tensorpack, which this work is based on.
Tensorpack is a training interface based on TensorFlow.
It's Yet Another TF wrapper, but different in:
-
Focus on training speed.
-
Speed comes for free with tensorpack -- it uses TensorFlow in the efficient way with no extra overhead. On different CNNs, it runs training 1.2~5x faster than the equivalent Keras code.
-
Data-parallel multi-GPU training is off-the-shelf to use. It scales as well as Google's official benchmark.
-
Distributed data-parallel training is also supported and scales well. See tensorpack/benchmarks for more benchmark scripts.
-
-
Focus on large datasets.
- It's unnecessary to read/preprocess data with a new language called TF. Tensorpack helps you load large datasets (e.g. ImageNet) in pure Python with autoparallelization.
-
It's not a model wrapper.
- There are too many symbolic function wrappers in the world. Tensorpack includes only a few common models. But you can use any symbolic function library inside tensorpack, including tf.layers/Keras/slim/tflearn/tensorlayer/....
See tutorials to know more about these features.
Instead of showing you 10 random networks trained on toy datasets, tensorpack examples faithfully replicate papers and care about performance. And everything runs on multiple GPUs. Some highlights:
- Train ResNet and other models on ImageNet.
- Train Faster-RCNN / Mask-RCNN on COCO object detection
- Generative Adversarial Network(GAN) variants, including DCGAN, InfoGAN, Conditional GAN, WGAN, BEGAN, DiscoGAN, Image to Image, CycleGAN.
- DoReFa-Net: train binary / low-bitwidth CNN on ImageNet
- Fully-convolutional Network for Holistically-Nested Edge Detection(HED)
- Spatial Transformer Networks on MNIST addition
- Visualize CNN saliency maps
- Similarity learning on MNIST
- Deep Q-Network(DQN) variants on Atari games, including DQN, DoubleDQN, DuelingDQN.
- Asynchronous Advantage Actor-Critic(A3C) with demos on OpenAI Gym
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.
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}
}