Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

wide-resnet N=6 not equivariant #101

Open
PengzhenChan opened this issue Aug 7, 2024 · 1 comment
Open

wide-resnet N=6 not equivariant #101

PengzhenChan opened this issue Aug 7, 2024 · 1 comment

Comments

@PengzhenChan
Copy link

PengzhenChan commented Aug 7, 2024

I was using the wide-resnet to test the equivariance of rotations of 60 degree, and I set the parameter 'N'=6. to test the equivariance, i transformed the input like this
`elements = m.gspace.testing_elements

in_type = enn.FieldType(m.gspace, [m.gspace.trivial_repr] * 3)

t = enn.GeometricTensor(x, in_type)


x = torch.cat([t.transform(el).tensor for el in elements], dim=0)`

the resulted turned out to be equivariant when rotation is 180 degrees, but not equivariant under rotations of 60 and 120. I used the Maskmodule in the resnet to maintain the equivariance,but it was not effective. anything special to pay attention to about this wide-resnet in your example? Appreciate your response!

@Gabri95
Copy link
Collaborator

Gabri95 commented Sep 2, 2024

Hi @PengzhenChan

Unfortunately, it is impossible to achieve exact equivariance to rotations of images by 60 degrees, since this is not a perfect symmetry of the pixel grid. Equivariance to n=6 rotations can only be approximate. This discussion might be useful: QUVA-Lab/e2cnn#61

Best,
Gabriele

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants