{"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-probabilistic-symmetrization-for-1","title":"Learning Probabilistic Symmetrization for Architecture Agnostic Equivariance","arxiv_id":"2306.02866","date":"2023-06-05","proceeding":"NeurIPS 2023 11","authors":["Jinwoo Kim","Tien Dat Nguyen","Ayhan Suleymanzade","Hyeokjun An","Seunghoon Hong"],"abstract":"We present a novel framework to overcome the limitations of equivariant architectures in learning functions with group symmetries. In contrary to equivariant architectures, we use an arbitrary base model such as an MLP or a transformer and symmetrize it to be equivariant to the given group by employing a small equivariant network that parameterizes the probabilistic distribution underlying the symmetrization. The distribution is end-to-end trained with the base model which can maximize performance while reducing sample complexity of symmetrization. We show that this approach ensures not only equivariance to given group but also universal approximation capability in expectation. We implement our method on various base models, including patch-based transformers that can be initialized from pretrained vision transformers, and test them for a wide range of symmetry groups including permutation and Euclidean groups and their combinations. Empirical tests show competitive results against tailored equivariant architectures, suggesting the potential for learning equivariant functions for diverse groups using a non-equivariant universal base architecture. We further show evidence of enhanced learning in symmetric modalities, like graphs, when pretrained from non-symmetric modalities, like vision. Code is available at https://github.com/jw9730/lps.","url_abs":"https://arxiv.org/abs/2306.02866v3","url_pdf":"https://arxiv.org/pdf/2306.02866v3.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-probabilistic-symmetrization-for-1","repo_url":"https://github.com/jw9730/lps","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"MIT"}}],"tasks":[{"task_slug":"graph-classification","task_name":"Graph Classification"},{"task_slug":"graph-regression","task_name":"Graph Regression"},{"task_slug":"link-prediction","task_name":"Link Prediction"}],"methods":[{"method_slug":"base","method_name":"BASE"}],"datasets_introduced":[],"methods_introduced":[],"results":[{"leaderboard":"/sota/graph-classification-on-peptides-func","task":"Graph Classification","dataset":"Peptides-func","model":"ViT-PS","rank_in_archive_order":28,"of":44,"metrics":{"AP":"0.6575"},"uses_additional_data":true},{"leaderboard":"/sota/graph-regression-on-peptides-struct","task":"Graph Regression","dataset":"Peptides-struct","model":"ViT-PS","rank_in_archive_order":30,"of":39,"metrics":{"MAE":"0.2559"},"uses_additional_data":true},{"leaderboard":"/sota/link-prediction-on-pcqm-contact","task":"Link Prediction","dataset":"PCQM-Contact","model":"ViT-PS","rank_in_archive_order":1,"of":18,"metrics":{"Hits@1":"0.3287","Hits@10":"0.9526","Hits@3":"0.6694","MRR":"0.5341"},"uses_additional_data":true}],"syntology":{"syntology_url":"https://syntology.ai/paper/2306.02866","atlas_url":"https://app.syntology.ai/?focus=2306.02866","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2306.02866"}},"developers":"https://syntology.ai/developers","read_at":"2026-09-25T09:33:49+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/jw9730/lps","reach":{"status":"ok","spdx":"MIT"}}],"summary":{"unverified":13},"by_repo_kind":{"official":{"samples":13,"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":"30ecf9c4638e103d","entry":"configure_experiment","repo":"jw9730/lps","repo_kind":"official","path":"src/train/configure_experiment.py","file_url":"https://github.com/jw9730/lps/blob/HEAD/src/train/configure_experiment.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":"30ecf9c4638e103d"}},{"code_sha256_prefix":"5ddcff293e9e81dd","entry":"is_order_zero_rep","repo":"jw9730/lps","repo_kind":"official","path":"src/symmetry/symmetry.py","file_url":"https://github.com/jw9730/lps/blob/HEAD/src/symmetry/symmetry.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":"5ddcff293e9e81dd"}},{"code_sha256_prefix":"aa0af576b7d7f97d","entry":"load_ckpt","repo":"jw9730/lps","repo_kind":"official","path":"src/train/configure_model.py","file_url":"https://github.com/jw9730/lps/blob/HEAD/src/train/configure_model.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":"aa0af576b7d7f97d"}},{"code_sha256_prefix":"ad9fb8eddc7b89d4","entry":"rep2str","repo":"jw9730/lps","repo_kind":"official","path":"src/symmetry/symmetry.py","file_url":"https://github.com/jw9730/lps/blob/HEAD/src/symmetry/symmetry.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":"ad9fb8eddc7b89d4"}},{"code_sha256_prefix":"b9dd162078065dcb","entry":"rep2str_prod","repo":"jw9730/lps","repo_kind":"official","path":"src/symmetry/symmetry.py","file_url":"https://github.com/jw9730/lps/blob/HEAD/src/symmetry/symmetry.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":"b9dd162078065dcb"}},{"code_sha256_prefix":"b44893b793a1fb27","entry":"setup_1d","repo":"jw9730/lps","repo_kind":"official","path":"src/symmetry/projections_conv.py","file_url":"https://github.com/jw9730/lps/blob/HEAD/src/symmetry/projections_conv.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":"b44893b793a1fb27"}},{"code_sha256_prefix":"aeee381b7ce6889f","entry":"setup_1x1d","repo":"jw9730/lps","repo_kind":"official","path":"src/symmetry/projections_conv.py","file_url":"https://github.com/jw9730/lps/blob/HEAD/src/symmetry/projections_conv.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":"aeee381b7ce6889f"}},{"code_sha256_prefix":"e2df87252356f197","entry":"setup_2d","repo":"jw9730/lps","repo_kind":"official","path":"src/symmetry/projections_conv.py","file_url":"https://github.com/jw9730/lps/blob/HEAD/src/symmetry/projections_conv.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":"e2df87252356f197"}},{"code_sha256_prefix":"ea080e245b0108ac","entry":"setup_backbone","repo":"jw9730/lps","repo_kind":"official","path":"src/model/backbone.py","file_url":"https://github.com/jw9730/lps/blob/HEAD/src/model/backbone.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":"ea080e245b0108ac"}},{"code_sha256_prefix":"0ea80e71d0bbf2e7","entry":"setup_ckpt_path","repo":"jw9730/lps","repo_kind":"official","path":"src/train/configure_model.py","file_url":"https://github.com/jw9730/lps/blob/HEAD/src/train/configure_model.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":"0ea80e71d0bbf2e7"}},{"code_sha256_prefix":"37cd6d25bd489cd6","entry":"setup_data_directory","repo":"jw9730/lps","repo_kind":"official","path":"src/train/configure_data.py","file_url":"https://github.com/jw9730/lps/blob/HEAD/src/train/configure_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":"37cd6d25bd489cd6"}},{"code_sha256_prefix":"ac084803f3c4b240","entry":"setup_log_directory","repo":"jw9730/lps","repo_kind":"official","path":"src/train/configure_experiment.py","file_url":"https://github.com/jw9730/lps/blob/HEAD/src/train/configure_experiment.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":"ac084803f3c4b240"}},{"code_sha256_prefix":"b7a1d1b7e81f6f93","entry":"setup_save_directory","repo":"jw9730/lps","repo_kind":"official","path":"src/train/configure_experiment.py","file_url":"https://github.com/jw9730/lps/blob/HEAD/src/train/configure_experiment.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":"b7a1d1b7e81f6f93"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}