← Open Source
ShichenLiu

CondenseNet

CondenseNet: Light weighted CNN for mobile devices.

Model DevelopmentArchitecturePython
Open on GitHub
Momentum
+0stars in 24 hours0.0%
690
Stars
128
Forks
+0
This week
4
Contributors
Created 2017-09-26 · Updated 2026-07-20 · #14957 today
Top developers
ShichenLiulvdmaatengaohuang

ShichenLiu/CondenseNet is ranked 14,957 with 690 stars.

Same-category comparison

ShichenLiu/CondenseNet is ranked 14,957 among these 8 peers; maxpumperla/betago is ranked 14,959.

Same-category comparison
NameRankMetrics
philipperemy/FX-1-Minute-Data14,950
Language:
Python
Stars:
691
Forks:
172
Description:
HISTDATA - Dataset composed of all FX trading pairs / Crude Oil / Stock Indexes. Simple API to retrieve 1 Minute data (and tick data) Historical FX Prices (up to date).
rizkiarm/LipNet14,951
Language:
Python
Stars:
691
Forks:
244
Description:
Keras implementation of 'LipNet: End-to-End Sentence-level Lipreading'.
vanderschaarlab/synthcity14,953
Language:
Python
Stars:
691
Forks:
99
Description:
A library for generating and evaluating synthetic tabular data for privacy, fairness and data augmentation.
x4nth055/emotion-recognition-using-speech14,954
Language:
Python
Stars:
691
Forks:
252
Description:
Building and training Speech Emotion Recognizer that predicts human emotions using Python, Sci-kit learn and Keras.
maxpumperla/betago14,959
Language:
Python
Stars:
690
Forks:
164
Description:
BetaGo: AlphaGo for the masses, live on GitHub.
NVIDIA-RTX/RTXNTC14,963
Language:
C++
Stars:
689
Forks:
49
Description:
NVIDIA Neural Texture Compression SDK.
Yijunmaverick/CartoonGAN-Test-Pytorch-Torch14,965
Language:
Python
Stars:
689
Forks:
202
Description:
Pytorch and Torch testing code of CartoonGAN [Chen et al., CVPR18].
dCaples/AutoDidact14,966
Language:
Jupyter Notebook
Stars:
689
Forks:
64
Description:
Autonomously train research-agent LLMs on custom data using reinforcement learning and self-verification.
Key parameters and specifications
Key parameters and specifications
ParameterValue
LanguagePython
CategoryModel Development
SubcategoryArchitecture
KeywordsComputer vision
Stars690
Forks128
Contributors4
Created date2017-09-26
Updated date2026-07-20
Stars in 1 day0
Stars in 7 days0
Rank14,957
Previous rank14,788
Rank change-169
7-day stars rank14,738
Previous 7-day stars rank14,749
7-day stars rank change11
Total stars rank15,046
Previous total stars rank15,021
Total stars rank change-25
CountryUSA
README summary

CondenseNets This repository contains the code (in PyTorch) for "CondenseNet: An Efficient DenseNet using Learned Group Convolutions" paper by Gao Huang\*, Shichen Liu\*, Laurens van der Maaten and Kilian Weinberger (* Authors contributed equally). Citation If you find our project useful in your research, please consider citing: Contents 1. Contacts Introduction CondenseNet is a novel, computationally efficient convolutional network architecture. It combines dense connectivity between layers with a mechanism to remove unused connections. The dense connectivity facilitates feature re-use in

the network, whereas learned group convolutions remove connections between layers for which this feature re-use is superfluous. Our experiments demonstrate that CondenseNets are much more efficient than other compact convolutional networks such as MobileNets and ShuffleNets. Figure 1: Learned Group Convolution with G=C=3. Figure 2: CondenseNets with Fully Dense Connectivity and Increasing Growth Rate. 0) ImageNet Train As an example, use the following command to train a CondenseNet on ImageNet As another example, use the following command

to train a CondenseNet on CIFAR-10 Evaluation We take the ImageNet model trained above as an example. To evaluate the trained model, use to evaluate from the default checkpoint directory: or use to evaluate from an arbitrary path: Note that these models are still the large models. To convert the model to group-convolution version as described in the paper, use the function: Finally, to directly load from a converted model (that is, a CondenseNet), use a **converted model

file** in combination with the option: Other Options We also include DenseNet implementation in this repository. For more examples of usage, please refer to script. sh For detailed options, please Results Results on ImageNet | Model | FLOPs | Params | Top-1 Err. 69M) | | CondenseNet-74 (C=G=8) | 274M | 2. 96 | | CondenseNet-74 (C=G=4) | 529M | 26. 89 | | CondenseNet-74 (C=G=8) | 274M | 29. com We are working on the implementation on other frameworks. Any discussions or concerns are welcomed

!

Frequently asked questions

How many stars and forks are recorded?

ShichenLiu/CondenseNet has 690 stars and 128 forks.

What is the repository rank?

ShichenLiu/CondenseNet is ranked 14,957.

What language and category are recorded?

ShichenLiu/CondenseNet has 690 stars, uses Python and belongs to Model Development.

Which repository is closest in rank?

ShichenLiu/CondenseNet is compared with maxpumperla/betago, ranked 14,959 with 690 stars.

README

CondenseNets

This repository contains the code (in PyTorch) for "CondenseNet: An Efficient DenseNet using Learned Group Convolutions" paper by Gao Huang*, Shichen Liu*, Laurens van der Maaten and Kilian Weinberger (* Authors contributed equally).

Citation

If you find our project useful in your research, please consider citing:

@inproceedings{huang2018condensenet,
  title={Condensenet: An efficient densenet using learned group convolutions},
  author={Huang, Gao and Liu, Shichen and Van der Maaten, Laurens and Weinberger, Kilian Q},
  booktitle={Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition},
  pages={2752--2761},
  year={2018}
}

Contents

  1. Introduction
  2. Usage
  3. Results
  4. Discussions
  5. Contacts

Introduction

CondenseNet is a novel, computationally efficient convolutional network architecture. It combines dense connectivity between layers with a mechanism to remove unused connections. The dense connectivity facilitates feature re-use in the network, whereas learned group convolutions remove connections between layers for which this feature re-use is superfluous. At test time, our model can be implemented using standard grouped convolutions —- allowing for efficient computation in practice. Our experiments demonstrate that CondenseNets are much more efficient than other compact convolutional networks such as MobileNets and ShuffleNets.

Figure 1: Learned Group Convolution with G=C=3.

Figure 2: CondenseNets with Fully Dense Connectivity and Increasing Growth Rate.

Usage

Dependencies

Train

As an example, use the following command to train a CondenseNet on ImageNet

python main.py --model condensenet -b 256 -j 20 /PATH/TO/IMAGENET \
--stages 4-6-8-10-8 --growth 8-16-32-64-128 --gpu 0,1,2,3,4,5,6,7 --resume

As another example, use the following command to train a CondenseNet on CIFAR-10

python main.py --model condensenet -b 64 -j 12 cifar10 \
--stages 14-14-14 --growth 8-16-32 --gpu 0 --resume

Evaluation

We take the ImageNet model trained above as an example.

To evaluate the trained model, use evaluate to evaluate from the default checkpoint directory:

python main.py --model condensenet -b 64 -j 20 /PATH/TO/IMAGENET \
--stages 4-6-8-10-8 --growth 8-16-32-64-128 --gpu 0 --resume \
--evaluate

or use evaluate-from to evaluate from an arbitrary path:

python main.py --model condensenet -b 64 -j 20 /PATH/TO/IMAGENET \
--stages 4-6-8-10-8 --growth 8-16-32-64-128 --gpu 0 --resume \
--evaluate-from /PATH/TO/BEST/MODEL

Note that these models are still the large models. To convert the model to group-convolution version as described in the paper, use the convert-from function:

python main.py --model condensenet -b 64 -j 20 /PATH/TO/IMAGENET \
--stages 4-6-8-10-8 --growth 8-16-32-64-128 --gpu 0 --resume \
--convert-from /PATH/TO/BEST/MODEL

Finally, to directly load from a converted model (that is, a CondenseNet), use a converted model file in combination with the evaluate-from option:

python main.py --model condensenet_converted -b 64 -j 20 /PATH/TO/IMAGENET \
--stages 4-6-8-10-8 --growth 8-16-32-64-128 --gpu 0 --resume \
--evaluate-from /PATH/TO/CONVERTED/MODEL

Other Options

We also include DenseNet implementation in this repository.
For more examples of usage, please refer to script.sh
For detailed options, please python main.py --help

Results

Results on ImageNet

Model FLOPs Params Top-1 Err. Top-5 Err. Pytorch Model
CondenseNet-74 (C=G=4) 529M 4.8M 26.2 8.3 Download (18.69M)
CondenseNet-74 (C=G=8) 274M 2.9M 29.0 10.0 Download (11.68M)

Results on CIFAR

Model FLOPs Params CIFAR-10 CIFAR-100
CondenseNet-50 28.6M 0.22M 6.22 -
CondenseNet-74 51.9M 0.41M 5.28 -
CondenseNet-86 65.8M 0.52M 5.06 23.64
CondenseNet-98 81.3M 0.65M 4.83 -
CondenseNet-110 98.2M 0.79M 4.63 -
CondenseNet-122 116.7M 0.95M 4.48 -
CondenseNet-182* 513M 4.2M 3.76 18.47

(* trained 600 epochs)

Inference time on ARM platform

Model FLOPs Top-1 Time(s)
VGG-16 15,300M 28.5 354
ResNet-18 1,818M 30.2 8.14
1.0 MobileNet-224 569M 29.4 1.96
CondenseNet-74 (C=G=4) 529M 26.2 1.89
CondenseNet-74 (C=G=8) 274M 29.0 0.99

Contact

liushichen95@gmail.com
gh349@cornell.com

We are working on the implementation on other frameworks.
Any discussions or concerns are welcomed!

Nearby in the ranking
Similar items