{"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/slot-abstractors-toward-scalable-abstract","title":"Slot Abstractors: Toward Scalable Abstract Visual Reasoning","arxiv_id":"2403.03458","date":"2024-03-06","proceeding":null,"authors":["Shanka Subhra Mondal","Jonathan D. Cohen","Taylor W. Webb"],"abstract":"Abstract visual reasoning is a characteristically human ability, allowing the identification of relational patterns that are abstracted away from object features, and the systematic generalization of those patterns to unseen problems. Recent work has demonstrated strong systematic generalization in visual reasoning tasks involving multi-object inputs, through the integration of slot-based methods used for extracting object-centric representations coupled with strong inductive biases for relational abstraction. However, this approach was limited to problems containing a single rule, and was not scalable to visual reasoning problems containing a large number of objects. Other recent work proposed Abstractors, an extension of Transformers that incorporates strong relational inductive biases, thereby inheriting the Transformer's scalability and multi-head architecture, but it has yet to be demonstrated how this approach might be applied to multi-object visual inputs. Here we combine the strengths of the above approaches and propose Slot Abstractors, an approach to abstract visual reasoning that can be scaled to problems involving a large number of objects and multiple relations among them. The approach displays state-of-the-art performance across four abstract visual reasoning tasks, as well as an abstract reasoning task involving real-world images.","url_abs":"https://arxiv.org/abs/2403.03458v2","url_pdf":"https://arxiv.org/pdf/2403.03458v2.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":"slot-abstractors-toward-scalable-abstract","repo_url":"https://github.com/shanka123/slot-abstractor","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"MIT"}},{"paper_slug":"slot-abstractors-toward-scalable-abstract","repo_url":"https://github.com/slotabstractor/slotabstractor","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":0,"framework":"pytorch","reach":{"status":"ok"}}],"tasks":[{"task_slug":"object","task_name":"Object"},{"task_slug":"systematic-generalization","task_name":"Systematic Generalization"},{"task_slug":"visual-reasoning","task_name":"Visual Reasoning"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2403.03458","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2403.03458"}},"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/shanka123/slot-abstractor","reach":{"status":"ok","spdx":"MIT"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/slotabstractor/slotabstractor","reach":{"status":"ok"}}],"summary":{"ran":1,"ran_violates":1,"unverified":2},"by_repo_kind":{"official":{"samples":4,"ran":2,"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":"a894bb5fa452ee7b","entry":"build_grid","repo":"shanka123/slot-abstractor","repo_kind":"official","path":"art/slot_abstractor.py","file_url":"https://github.com/shanka123/slot-abstractor/blob/HEAD/art/slot_abstractor.py","link_basis":"first_harvest_node","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":"a894bb5fa452ee7b"}},{"code_sha256_prefix":"6ba8cee9f5daea41","entry":"pair","repo":"shanka123/slot-abstractor","repo_kind":"official","path":"art/slot_abstractor.py","file_url":"https://github.com/shanka123/slot-abstractor/blob/HEAD/art/slot_abstractor.py","link_basis":"harvester_set","language":"python","status":"ran_violates","verification_level":1,"contract_check":"VIOLATES","metamorphic_tier":"well_formed","behaviour_fingerprint":true,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"6ba8cee9f5daea41"}},{"code_sha256_prefix":"f133741b878deb4f","entry":"fill_image","repo":"shanka123/slot-abstractor","repo_kind":"official","path":"art/train_slot_abstractor_dist3.py","file_url":"https://github.com/shanka123/slot-abstractor/blob/HEAD/art/train_slot_abstractor_dist3.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":"f133741b878deb4f"}},{"code_sha256_prefix":"269243b540e9df59","entry":"load_abstractor_checkpoint","repo":"shanka123/slot-abstractor","repo_kind":"official","path":"pgm/train_slot_abstractor_pgm.py","file_url":"https://github.com/shanka123/slot-abstractor/blob/HEAD/pgm/train_slot_abstractor_pgm.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":"269243b540e9df59"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}