{"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/geometricimagenet-extending-convolutional","title":"GeometricImageNet: Extending convolutional neural networks to vector and tensor images","arxiv_id":"2305.12585","date":"2023-05-21","proceeding":null,"authors":["Wilson Gregory","David W. Hogg","Ben Blum-Smith","Maria Teresa Arias","Kaze W. K. Wong","Soledad Villar"],"abstract":"Convolutional neural networks and their ilk have been very successful for many learning tasks involving images. These methods assume that the input is a scalar image representing the intensity in each pixel, possibly in multiple channels for color images. In natural-science domains however, image-like data sets might have vectors (velocity, say), tensors (polarization, say), pseudovectors (magnetic field, say), or other geometric objects in each pixel. Treating the components of these objects as independent channels in a CNN neglects their structure entirely. Our formulation -- the GeometricImageNet -- combines a geometric generalization of convolution with outer products, tensor index contractions, and tensor index permutations to construct geometric-image functions of geometric images that use and benefit from the tensor structure. The framework permits, with a very simple adjustment, restriction to function spaces that are exactly equivariant to translations, discrete rotations, and reflections. We use representation theory to quantify the dimension of the space of equivariant polynomial functions on 2-dimensional vector images. We give partial results on the expressivity of GeometricImageNet on small images. In numerical experiments, we find that GeometricImageNet has good generalization for a small simulated physics system, even when trained with a small training set. We expect this tool will be valuable for scientific and engineering machine learning, for example in cosmology or ocean dynamics.","url_abs":"https://arxiv.org/abs/2305.12585v1","url_pdf":"https://arxiv.org/pdf/2305.12585v1.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":"geometricimagenet-extending-convolutional","repo_url":"https://github.com/wilsongregory/geometricconvolutions","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"jax","reach":{"status":"ok","spdx":"MIT"}}],"tasks":[],"methods":[{"method_slug":"convolution","method_name":"Convolution"}],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2305.12585","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2305.12585"}},"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/wilsongregory/geometricconvolutions","reach":{"status":"ok","spdx":"MIT"}}],"summary":{"unverified":11},"by_repo_kind":{"official":{"samples":11,"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":"2e54480ac811f60b","entry":"hash","repo":"wilsongregory/geometricconvolutions","repo_kind":"official","path":"src/ginjax/geometric/functional_geometric_image.py","file_url":"https://github.com/wilsongregory/geometricconvolutions/blob/HEAD/src/ginjax/geometric/functional_geometric_image.py","link_basis":"first_harvest_node","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":"2e54480ac811f60b"}},{"code_sha256_prefix":"54dc5a8c33d36d69","entry":"make_D8_group","repo":"wilsongregory/geometricconvolutions","repo_kind":"official","path":"src/ginjax/geometric/common.py","file_url":"https://github.com/wilsongregory/geometricconvolutions/blob/HEAD/src/ginjax/geometric/common.py","link_basis":"first_harvest_node","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":"54dc5a8c33d36d69"}},{"code_sha256_prefix":"6b670730bab7bde4","entry":"make_all_operators","repo":"wilsongregory/geometricconvolutions","repo_kind":"official","path":"src/ginjax/geometric/common.py","file_url":"https://github.com/wilsongregory/geometricconvolutions/blob/HEAD/src/ginjax/geometric/common.py","link_basis":"first_harvest_node","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":"6b670730bab7bde4"}},{"code_sha256_prefix":"12847b438d12cdd2","entry":"parse_shape","repo":"wilsongregory/geometricconvolutions","repo_kind":"official","path":"src/ginjax/geometric/functional_geometric_image.py","file_url":"https://github.com/wilsongregory/geometricconvolutions/blob/HEAD/src/ginjax/geometric/functional_geometric_image.py","link_basis":"first_harvest_node","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":"12847b438d12cdd2"}},{"code_sha256_prefix":"69c88e9a8e6d259d","entry":"permutation_matrix_from_sequence","repo":"wilsongregory/geometricconvolutions","repo_kind":"official","path":"src/ginjax/geometric/common.py","file_url":"https://github.com/wilsongregory/geometricconvolutions/blob/HEAD/src/ginjax/geometric/common.py","link_basis":"first_harvest_node","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":"69c88e9a8e6d259d"}},{"code_sha256_prefix":"c5d98eda0d547320","entry":"permutation_parity","repo":"wilsongregory/geometricconvolutions","repo_kind":"official","path":"src/ginjax/geometric/constants.py","file_url":"https://github.com/wilsongregory/geometricconvolutions/blob/HEAD/src/ginjax/geometric/constants.py","link_basis":"first_harvest_node","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":"c5d98eda0d547320"}},{"code_sha256_prefix":"b8187b0fe864f377","entry":"plot_grid","repo":"wilsongregory/geometricconvolutions","repo_kind":"official","path":"src/ginjax/utils.py","file_url":"https://github.com/wilsongregory/geometricconvolutions/blob/HEAD/src/ginjax/utils.py","link_basis":"first_harvest_node","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":"b8187b0fe864f377"}},{"code_sha256_prefix":"273ecb316e34892d","entry":"power","repo":"wilsongregory/geometricconvolutions","repo_kind":"official","path":"src/ginjax/utils.py","file_url":"https://github.com/wilsongregory/geometricconvolutions/blob/HEAD/src/ginjax/utils.py","link_basis":"first_harvest_node","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":"273ecb316e34892d"}},{"code_sha256_prefix":"c5fd33ba5208edb5","entry":"setup_plot","repo":"wilsongregory/geometricconvolutions","repo_kind":"official","path":"src/ginjax/utils.py","file_url":"https://github.com/wilsongregory/geometricconvolutions/blob/HEAD/src/ginjax/utils.py","link_basis":"first_harvest_node","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":"c5fd33ba5208edb5"}},{"code_sha256_prefix":"5fc67f7b84144204","entry":"signature_union","repo":"wilsongregory/geometricconvolutions","repo_kind":"official","path":"src/ginjax/geometric/multi_image.py","file_url":"https://github.com/wilsongregory/geometricconvolutions/blob/HEAD/src/ginjax/geometric/multi_image.py","link_basis":"first_harvest_node","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":"5fc67f7b84144204"}},{"code_sha256_prefix":"6811a718bd704872","entry":"time_series_idxs","repo":"wilsongregory/geometricconvolutions","repo_kind":"official","path":"src/ginjax/data.py","file_url":"https://github.com/wilsongregory/geometricconvolutions/blob/HEAD/src/ginjax/data.py","link_basis":"first_harvest_node","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":"6811a718bd704872"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}