{"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/improving-self-supervised-learning-by","title":"Improving Self-Supervised Learning by Characterizing Idealized Representations","arxiv_id":"2209.06235","date":"2022-09-13","proceeding":null,"authors":["Yann Dubois","Tatsunori Hashimoto","Stefano Ermon","Percy Liang"],"abstract":"Despite the empirical successes of self-supervised learning (SSL) methods, it is unclear what characteristics of their representations lead to high downstream accuracies. In this work, we characterize properties that SSL representations should ideally satisfy. Specifically, we prove necessary and sufficient conditions such that for any task invariant to given data augmentations, desired probes (e.g., linear or MLP) trained on that representation attain perfect accuracy. These requirements lead to a unifying conceptual framework for improving existing SSL methods and deriving new ones. For contrastive learning, our framework prescribes simple but significant improvements to previous methods such as using asymmetric projection heads. For non-contrastive learning, we use our framework to derive a simple and novel objective. Our resulting SSL algorithms outperform baselines on standard benchmarks, including SwAV+multicrops on linear probing of ImageNet.","url_abs":"https://arxiv.org/abs/2209.06235v2","url_pdf":"https://arxiv.org/pdf/2209.06235v2.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":"improving-self-supervised-learning-by","repo_url":"https://github.com/yanndubs/invariant-self-supervised-learning","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"MIT"}}],"tasks":[{"task_slug":"contrastive-learning","task_name":"Contrastive Learning"},{"task_slug":"self-supervised-learning","task_name":"Self-Supervised Learning"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2209.06235","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2209.06235"}},"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":"deterministic:regex_extraction","url":"https://github.com/YannDubs/Invariant-Self-Supervised-Learning","reach":{"status":"ok","spdx":"MIT"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/yanndubs/invariant-self-supervised-learning","reach":{"status":"ok","spdx":"MIT"}}],"summary":{"unverified":8},"by_repo_kind":{"official":{"samples":8,"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":"b83c9f0b58f5a838","entry":"file_cache","repo":"YannDubs/Invariant-Self-Supervised-Learning","repo_kind":"official","path":"issl/helpers.py","file_url":"https://github.com/YannDubs/Invariant-Self-Supervised-Learning/blob/HEAD/issl/helpers.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":"b83c9f0b58f5a838"}},{"code_sha256_prefix":"df2a3c4fabd97273","entry":"format_resolver","repo":"YannDubs/Invariant-Self-Supervised-Learning","repo_kind":"official","path":"utils/helpers.py","file_url":"https://github.com/YannDubs/Invariant-Self-Supervised-Learning/blob/HEAD/utils/helpers.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":"df2a3c4fabd97273"}},{"code_sha256_prefix":"2b3c89d621e6d755","entry":"get_param_in_kwargs","repo":"YannDubs/Invariant-Self-Supervised-Learning","repo_kind":"official","path":"utils/aggregate.py","file_url":"https://github.com/YannDubs/Invariant-Self-Supervised-Learning/blob/HEAD/utils/aggregate.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":"2b3c89d621e6d755"}},{"code_sha256_prefix":"6b93cba494bab7d6","entry":"init_std_modules","repo":"YannDubs/Invariant-Self-Supervised-Learning","repo_kind":"official","path":"hub/resnet_dim.py","file_url":"https://github.com/YannDubs/Invariant-Self-Supervised-Learning/blob/HEAD/hub/resnet_dim.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":"6b93cba494bab7d6"}},{"code_sha256_prefix":"67fca86dcfe70ef2","entry":"int_or_ratio","repo":"YannDubs/Invariant-Self-Supervised-Learning","repo_kind":"official","path":"issl/helpers.py","file_url":"https://github.com/YannDubs/Invariant-Self-Supervised-Learning/blob/HEAD/issl/helpers.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":"67fca86dcfe70ef2"}},{"code_sha256_prefix":"244013f363aad310","entry":"list2str_resolver","repo":"YannDubs/Invariant-Self-Supervised-Learning","repo_kind":"official","path":"utils/helpers.py","file_url":"https://github.com/YannDubs/Invariant-Self-Supervised-Learning/blob/HEAD/utils/helpers.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":"244013f363aad310"}},{"code_sha256_prefix":"dac76cacf0b69545","entry":"namespace2dict","repo":"YannDubs/Invariant-Self-Supervised-Learning","repo_kind":"official","path":"issl/helpers.py","file_url":"https://github.com/YannDubs/Invariant-Self-Supervised-Learning/blob/HEAD/issl/helpers.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":"dac76cacf0b69545"}},{"code_sha256_prefix":"ed6ccbf19794b456","entry":"path_to_params","repo":"YannDubs/Invariant-Self-Supervised-Learning","repo_kind":"official","path":"utils/aggregate.py","file_url":"https://github.com/YannDubs/Invariant-Self-Supervised-Learning/blob/HEAD/utils/aggregate.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":"ed6ccbf19794b456"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}