{"about":{"site":"https://codewithpapers.app","non_affiliation":"Code with Papers and Syntology are not affiliated with, endorsed by, or sponsored by Papers with Code, Meta, or the pwc-archive mirror.","licence":"CC BY-SA 4.0","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","attribution":"https://codewithpapers.app/attribution","modified":"archive material modified by Syntology; see the attribution page"},"url":"/paper/equivariance-versus-augmentation-for","title":"Equivariance versus Augmentation for Spherical Images","arxiv_id":"2202.03990","date":"2022-02-08","proceeding":null,"authors":["Jan E. Gerken","Oscar Carlsson","Hampus Linander","Fredrik Ohlsson","Christoffer Petersson","Daniel Persson"],"abstract":"We analyze the role of rotational equivariance in convolutional neural networks (CNNs) applied to spherical images. We compare the performance of the group equivariant networks known as S2CNNs and standard non-equivariant CNNs trained with an increasing amount of data augmentation. The chosen architectures can be considered baseline references for the respective design paradigms. Our models are trained and evaluated on single or multiple items from the MNIST or FashionMNIST dataset projected onto the sphere. For the task of image classification, which is inherently rotationally invariant, we find that by considerably increasing the amount of data augmentation and the size of the networks, it is possible for the standard CNNs to reach at least the same performance as the equivariant network. In contrast, for the inherently equivariant task of semantic segmentation, the non-equivariant networks are consistently outperformed by the equivariant networks with significantly fewer parameters. We also analyze and compare the inference latency and training times of the different networks, enabling detailed tradeoff considerations between equivariant architectures and data augmentation for practical problems. The equivariant spherical networks used in the experiments are available at https://github.com/JanEGerken/sem_seg_s2cnn .","url_abs":"https://arxiv.org/abs/2202.03990v2","url_pdf":"https://arxiv.org/pdf/2202.03990v2.pdf","source":{"archive":"pwc-archive (Hugging Face), CC BY-SA 4.0","snapshot":"2025-07-28","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","row_kind":"abstracts"},"code_links":[{"paper_slug":"equivariance-versus-augmentation-for","repo_url":"https://github.com/janegerken/sem_seg_s2cnn","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"MIT"}}],"tasks":[{"task_slug":"data-augmentation","task_name":"Data Augmentation"},{"task_slug":"image-classification","task_name":"Image Classification"},{"task_slug":"semantic-segmentation","task_name":"Semantic Segmentation"},{"task_slug":"image-classification","task_name":"image-classification"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2202.03990","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2202.03990"}},"developers":"https://syntology.ai/developers","read_at":"2026-09-24T18:15:14+00:00","read_at_is":"when the build read Syntology's graph, not when any sample ran","claim":"Per-sample execution status on synthesized fixtures; not a correctness claim about the paper. Samples come from repositories linked to the paper, official or community; repo_kind says which.","repos":[{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/janegerken/sem_seg_s2cnn","reach":{"status":"ok","spdx":"MIT"}}],"summary":{"unverified":9},"by_repo_kind":{"official":{"samples":9,"ran":0,"repositories":1}},"repo_kind_vocabulary":{"official":"The archive marks this repository official for the paper","named_in_paper":"The archive records that the paper mentions this repository; it is not marked official","listed":"In the archive's code links for this paper, not marked official and not recorded as mentioned in the paper","found_in_text":"Syntology found this repository in the paper's own text; whether it is the authors' implementation is not asserted","community":"Not in the archive's code links for this paper; a community repository Syntology harvested"},"n_pointer_only_for_licence":0,"samples":[{"code_sha256_prefix":"093cf675bf110cfd","entry":"s2_equatorial_grid","repo":"janegerken/sem_seg_s2cnn","repo_kind":"official","path":"s2cnn/s2_grid.py","file_url":"https://github.com/janegerken/sem_seg_s2cnn/blob/HEAD/s2cnn/s2_grid.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"093cf675bf110cfd"}},{"code_sha256_prefix":"1015e15faa793a33","entry":"s2_mm","repo":"janegerken/sem_seg_s2cnn","repo_kind":"official","path":"s2cnn/s2_mm.py","file_url":"https://github.com/janegerken/sem_seg_s2cnn/blob/HEAD/s2cnn/s2_mm.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"1015e15faa793a33"}},{"code_sha256_prefix":"165f749be67e7f85","entry":"s2_near_identity_grid","repo":"janegerken/sem_seg_s2cnn","repo_kind":"official","path":"s2cnn/s2_grid.py","file_url":"https://github.com/janegerken/sem_seg_s2cnn/blob/HEAD/s2cnn/s2_grid.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"165f749be67e7f85"}},{"code_sha256_prefix":"7135ee0ecb855508","entry":"s2_soft_grid","repo":"janegerken/sem_seg_s2cnn","repo_kind":"official","path":"s2cnn/s2_grid.py","file_url":"https://github.com/janegerken/sem_seg_s2cnn/blob/HEAD/s2cnn/s2_grid.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"7135ee0ecb855508"}},{"code_sha256_prefix":"f8b54487de19b999","entry":"so3_equatorial_grid","repo":"janegerken/sem_seg_s2cnn","repo_kind":"official","path":"s2cnn/so3_grid.py","file_url":"https://github.com/janegerken/sem_seg_s2cnn/blob/HEAD/s2cnn/so3_grid.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"f8b54487de19b999"}},{"code_sha256_prefix":"104eed4c50b2b84a","entry":"so3_mm","repo":"janegerken/sem_seg_s2cnn","repo_kind":"official","path":"s2cnn/so3_mm.py","file_url":"https://github.com/janegerken/sem_seg_s2cnn/blob/HEAD/s2cnn/so3_mm.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"104eed4c50b2b84a"}},{"code_sha256_prefix":"a54c4f20182df475","entry":"so3_near_identity_grid","repo":"janegerken/sem_seg_s2cnn","repo_kind":"official","path":"s2cnn/so3_grid.py","file_url":"https://github.com/janegerken/sem_seg_s2cnn/blob/HEAD/s2cnn/so3_grid.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"a54c4f20182df475"}},{"code_sha256_prefix":"55908293a06be7ea","entry":"so3_soft_grid","repo":"janegerken/sem_seg_s2cnn","repo_kind":"official","path":"s2cnn/so3_grid.py","file_url":"https://github.com/janegerken/sem_seg_s2cnn/blob/HEAD/s2cnn/so3_grid.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"55908293a06be7ea"}},{"code_sha256_prefix":"b313e9a26d0f5717","entry":"so3_sum_n","repo":"janegerken/sem_seg_s2cnn","repo_kind":"official","path":"s2cnn/so3_sum_n.py","file_url":"https://github.com/janegerken/sem_seg_s2cnn/blob/HEAD/s2cnn/so3_sum_n.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"b313e9a26d0f5717"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}