{"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/it-s-a-blind-match-towards-vision-language","title":"It's a (Blind) Match! Towards Vision-Language Correspondence without Parallel Data","arxiv_id":"2503.24129","date":"2025-03-31","proceeding":"CVPR 2025 1","authors":["Dominik Schnaus","Nikita Araslanov","Daniel Cremers"],"abstract":"The platonic representation hypothesis suggests that vision and language embeddings become more homogeneous as model and dataset sizes increase. In particular, pairwise distances within each modality become more similar. This suggests that as foundation models mature, it may become possible to match vision and language embeddings in a fully unsupervised fashion, i.e. without parallel data. We present the first feasibility study, and investigate conformity of existing vision and language foundation models in the context of unsupervised, or \"blind\", matching. First, we formulate unsupervised matching as a quadratic assignment problem and introduce a novel heuristic that outperforms previous solvers. We also develop a technique to find optimal matching problems, for which a non-trivial match is very likely. Second, we conduct an extensive study deploying a range of vision and language models on four datasets. Our analysis reveals that for many problem instances, vision and language representations can be indeed matched without supervision. This finding opens up the exciting possibility of embedding semantic knowledge into other modalities virtually annotation-free. As a proof of concept, we showcase an unsupervised classifier, which achieves non-trivial classification accuracy without any image-text annotation.","url_abs":"https://arxiv.org/abs/2503.24129v1","url_pdf":"https://arxiv.org/pdf/2503.24129v1.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":"it-s-a-blind-match-towards-vision-language","repo_url":"https://github.com/dominik-schnaus/itsamatch","is_official":1,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"MIT"}}],"tasks":[{"task_slug":"text-annotation","task_name":"text annotation"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"syntology_url":"https://syntology.ai/paper/2503.24129","atlas_url":"https://app.syntology.ai/?focus=2503.24129","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2503.24129"}},"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/dominik-schnaus/itsamatch","reach":{"status":"ok","spdx":"MIT"}}],"summary":{"ran":5},"by_repo_kind":{"official":{"samples":5,"ran":5,"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":"a8369d1217b9b81b","entry":"encode_prompts","repo":"dominik-schnaus/itsamatch","repo_kind":"official","path":"itsamatch/extract_embeddings.py","file_url":"https://github.com/dominik-schnaus/itsamatch/blob/HEAD/itsamatch/extract_embeddings.py","link_basis":"harvester_set","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"a8369d1217b9b81b"}},{"code_sha256_prefix":"b930a92d8b2749ed","entry":"get_hash","repo":"dominik-schnaus/itsamatch","repo_kind":"official","path":"itsamatch/extract_embeddings.py","file_url":"https://github.com/dominik-schnaus/itsamatch/blob/HEAD/itsamatch/extract_embeddings.py","link_basis":"harvester_set","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"b930a92d8b2749ed"}},{"code_sha256_prefix":"dda62270492c2d21","entry":"get_seeds","repo":"dominik-schnaus/itsamatch","repo_kind":"official","path":"itsamatch/utils.py","file_url":"https://github.com/dominik-schnaus/itsamatch/blob/HEAD/itsamatch/utils.py","link_basis":"harvester_set","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"dda62270492c2d21"}},{"code_sha256_prefix":"fa1390a328456d68","entry":"jaccard","repo":"dominik-schnaus/itsamatch","repo_kind":"official","path":"itsamatch/distortion_metrics/mutual_knn.py","file_url":"https://github.com/dominik-schnaus/itsamatch/blob/HEAD/itsamatch/distortion_metrics/mutual_knn.py","link_basis":"harvester_set","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"fa1390a328456d68"}},{"code_sha256_prefix":"5c7e49a4df2f0f1f","entry":"seed_everything","repo":"dominik-schnaus/itsamatch","repo_kind":"official","path":"itsamatch/utils.py","file_url":"https://github.com/dominik-schnaus/itsamatch/blob/HEAD/itsamatch/utils.py","link_basis":"harvester_set","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"5c7e49a4df2f0f1f"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}