Skip to content

adambielski/pytorch-gconv-experiments

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 

Repository files navigation

pytorch-gconv-experiments

Experiments with Group Equivariant Convolutional Networks (T. S. Cohen, M. Welling, 2016) implemented in PyTorch.

Installation

Install GrouPy with PyTorch support.

MNIST

Modified MNIST PyTorch example validating my implementation of G-convolutions in PyTorch.

cd mnist
python mnist.py

This simple example uses p4 group convolutions and plane group spatial max pooling.

CIFAR-10

Experiments with ResNet implementation based by kuangliu repository for CIFAR-10 with PyTorch. Training uses online data augmentation with translation and flips

All planar convolutions were replaced with p4m group convolutions. The number of filters in each convolutional layer was reduced by sqrt(8) to keep similar number of parameters (following Group Equivariant Convolutional Networks, section 8.2).

To train the ResNet18 network run

cd cifar10
python train.py --n_epochs 120 --checkpoint resnet18_p4m --lr=0.01

The learning rate is reduced by a factor of 0.1 after 50 and 100 epochs.

After 120 epochs, the network achieves 94.22% on test set, compared to 93.02% using planar convolutions reported here.

About

Experiments with Group Equivariant Convolutions in PyTorch

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages