Code for paper: ROTDCF: Decomposition Of Convolutional Filters For Rotation-Equivariant Deep Neural Netowrks[paper link]
This repo implements the rotMNIST experiment in Section 4.1(ref. Table 3 and Table A.3).
pytorch>=1.0
numpy>=1.18
matplotlib
Download processed rotMNIST dataset from here. Unzip it to this work directory.
Change data_path and save_path variables in dataset.py.
'Demo for Rotataion Equivariance' shows the main property of proposed method. Go through the notebook and you will observe rotation equivariance in output feature maps, e.g.,
./test.sh CNN 6
change M=16, =8, K=5, and =5 in test.sh, and then,
./test.sh RotDCF 6
change K=5 in test.sh, and then,
./test.sh DCF 6
./train.sh CNN 6
change M=16, =8, K=5, and =5 in train.sh, and then,
./train.sh RotDCF 6
change K=5 in train.sh, and then,
./train.sh DCF 6