{"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/learning-equivariant-tensor-functions-with","title":"Learning equivariant tensor functions with applications to sparse vector recovery","arxiv_id":"2406.01552","date":"2024-06-03","proceeding":null,"authors":["Wilson G. Gregory","Josué Tonelli-Cueto","Nicholas F. Marshall","Andrew S. Lee","Soledad Villar"],"abstract":"This work characterizes equivariant polynomial functions from tuples of tensor inputs to tensor outputs. Loosely motivated by physics, we focus on equivariant functions with respect to the diagonal action of the orthogonal group on tensors. We show how to extend this characterization to other linear algebraic groups, including the Lorentz and symplectic groups. Our goal behind these characterizations is to define equivariant machine learning models. In particular, we focus on the sparse vector estimation problem. This problem has been broadly studied in the theoretical computer science literature, and explicit spectral methods, derived by techniques from sum-of-squares, can be shown to recover sparse vectors under certain assumptions. Our numerical results show that the proposed equivariant machine learning models can learn spectral methods that outperform the best theoretically known spectral methods in some regimes. The experiments also suggest that learned spectral methods can solve the problem in settings that have not yet been theoretically analyzed. This is an example of a promising direction in which theory can inform machine learning models and machine learning models could inform theory.","url_abs":"https://arxiv.org/abs/2406.01552v1","url_pdf":"https://arxiv.org/pdf/2406.01552v1.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":"learning-equivariant-tensor-functions-with","repo_url":"https://github.com/wilsongregory/tensorpolynomials","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"jax","reach":null}],"tasks":[],"methods":[{"method_slug":"focus","method_name":"Focus"}],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2406.01552","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2406.01552"}},"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/tensorpolynomials","reach":null}],"summary":{"ran":1,"ran_honours":3,"ran_fixture":1,"ran_draft_wrong":2,"ran_violates":1,"unverified":3},"by_repo_kind":{"official":{"samples":11,"ran":8,"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":"a2b25394881d78d2","entry":"GeneralLinear","repo":"wilsongregory/tensorpolynomials","repo_kind":"official","path":"src/tensorpolynomials/ml.py","file_url":"https://github.com/wilsongregory/tensorpolynomials/blob/HEAD/src/tensorpolynomials/ml.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":"deterministic","behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"a2b25394881d78d2"}},{"code_sha256_prefix":"2dc0602051429b2b","entry":"get_patterns","repo":"wilsongregory/tensorpolynomials","repo_kind":"official","path":"src/tensorpolynomials/ml.py","file_url":"https://github.com/wilsongregory/tensorpolynomials/blob/HEAD/src/tensorpolynomials/ml.py","link_basis":"first_harvest_node","language":"python","status":"ran_honours","verification_level":1,"contract_check":"HONOURS","metamorphic_tier":"well_formed","behaviour_fingerprint":true,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"2dc0602051429b2b"}},{"code_sha256_prefix":"c4521f9abe35a923","entry":"get_symmetric_patterns","repo":"wilsongregory/tensorpolynomials","repo_kind":"official","path":"src/tensorpolynomials/ml.py","file_url":"https://github.com/wilsongregory/tensorpolynomials/blob/HEAD/src/tensorpolynomials/ml.py","link_basis":"first_harvest_node","language":"python","status":"ran_fixture","verification_level":1,"contract_check":"RAISES","metamorphic_tier":"deterministic","behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"c4521f9abe35a923"}},{"code_sha256_prefix":"2dad7d3e9ac96f86","entry":"map_and_loss","repo":"wilsongregory/tensorpolynomials","repo_kind":"official","path":"scripts/sos_spectral.py","file_url":"https://github.com/wilsongregory/tensorpolynomials/blob/HEAD/scripts/sos_spectral.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"MISDECLARED","metamorphic_tier":"deterministic","behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"2dad7d3e9ac96f86"}},{"code_sha256_prefix":"abe32879e73b871a","entry":"partitions","repo":"wilsongregory/tensorpolynomials","repo_kind":"official","path":"src/tensorpolynomials/ml.py","file_url":"https://github.com/wilsongregory/tensorpolynomials/blob/HEAD/src/tensorpolynomials/ml.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"OUTPUT_MISDECLARED","metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"abe32879e73b871a"}},{"code_sha256_prefix":"c07cf93b55480f2d","entry":"reorder_pattern","repo":"wilsongregory/tensorpolynomials","repo_kind":"official","path":"src/tensorpolynomials/ml.py","file_url":"https://github.com/wilsongregory/tensorpolynomials/blob/HEAD/src/tensorpolynomials/ml.py","link_basis":"first_harvest_node","language":"python","status":"ran_violates","verification_level":1,"contract_check":"VIOLATES","metamorphic_tier":"invariant","behaviour_fingerprint":true,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"c07cf93b55480f2d"}},{"code_sha256_prefix":"c64048d649037766","entry":"sos_method","repo":"wilsongregory/tensorpolynomials","repo_kind":"official","path":"src/tensorpolynomials/models.py","file_url":"https://github.com/wilsongregory/tensorpolynomials/blob/HEAD/src/tensorpolynomials/models.py","link_basis":"first_harvest_node","language":"python","status":"ran_honours","verification_level":1,"contract_check":"HONOURS","metamorphic_tier":"invariant","behaviour_fingerprint":true,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"c64048d649037766"}},{"code_sha256_prefix":"b14d386d5c18e44c","entry":"sos_methodII","repo":"wilsongregory/tensorpolynomials","repo_kind":"official","path":"src/tensorpolynomials/models.py","file_url":"https://github.com/wilsongregory/tensorpolynomials/blob/HEAD/src/tensorpolynomials/models.py","link_basis":"first_harvest_node","language":"python","status":"ran_honours","verification_level":1,"contract_check":"HONOURS","metamorphic_tier":"invariant","behaviour_fingerprint":true,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"b14d386d5c18e44c"}},{"code_sha256_prefix":"9573c20df0f9b5e0","entry":"PermEquivariantLayer","repo":"wilsongregory/tensorpolynomials","repo_kind":"official","path":"src/tensorpolynomials/ml.py","file_url":"https://github.com/wilsongregory/tensorpolynomials/blob/HEAD/src/tensorpolynomials/ml.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":"9573c20df0f9b5e0"}},{"code_sha256_prefix":"1bad12d82c05605f","entry":"PermInvariantTensor","repo":"wilsongregory/tensorpolynomials","repo_kind":"official","path":"src/tensorpolynomials/ml.py","file_url":"https://github.com/wilsongregory/tensorpolynomials/blob/HEAD/src/tensorpolynomials/ml.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":"1bad12d82c05605f"}},{"code_sha256_prefix":"5acafa1378b5dea8","entry":"tensor_from_pattern","repo":"wilsongregory/tensorpolynomials","repo_kind":"official","path":"src/tensorpolynomials/ml.py","file_url":"https://github.com/wilsongregory/tensorpolynomials/blob/HEAD/src/tensorpolynomials/ml.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":"5acafa1378b5dea8"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}