vamshichowdary / involution-tf

TensorFlow implementation of involution.

Home Page:https://arxiv.org/abs/2103.06255

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

involution-tf

TensorFlow implementation of Involution: Inverting the Inherence of Convolution for Visual Recognition. In this reporsitory you will find a jupyter notebook that houses the involution layer.

Convolution

Conv

Involution

Invo

Thoughts

I have also tried training a classifier on CIFAR10 from scratch wtih convolutions and involutions. The loss plots, accuracy plots and the size of the models are quite astonishing. While convs outperform invs, we need to keep in mind the amount of parameters for invs.

Convolutions:
Total params: 319,178
Trainable params: 319,178
Non-trainable params: 0

image image

Involutions:
Total params: 13,080
Trainable params: 13,074
Non-trainable params: 6

image image

Visualization of the activations

Below is the activation outputs from the involution kernels. We can observe that, involutions indeed is spatial-specific and channel-agnostic. image

Citation

@misc{li2021involution,
      title={Involution: Inverting the Inherence of Convolution for Visual Recognition}, 
      author={Duo Li and Jie Hu and Changhu Wang and Xiangtai Li and Qi She and Lei Zhu and Tong Zhang and Qifeng Chen},
      year={2021},
      eprint={2103.06255},
      archivePrefix={arXiv},
      primaryClass={cs.CV}
}

Thanks to Duo Li (first author) for clarifying my doubts.

About

TensorFlow implementation of involution.

https://arxiv.org/abs/2103.06255

License:MIT License


Languages

Language:Jupyter Notebook 100.0%