{"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-to-cluster-neuronal-function","title":"Learning to cluster neuronal function","arxiv_id":"2506.03293","date":"2025-06-03","proceeding":null,"authors":["Nina S. Nellen","Polina Turishcheva","Michaela Vystrčilová","Shashwat Sridhar","Tim Gollisch","Andreas S. Tolias","Alexander S. Ecker"],"abstract":"Deep neural networks trained to predict neural activity from visual input and behaviour have shown great potential to serve as digital twins of the visual cortex. Per-neuron embeddings derived from these models could potentially be used to map the functional landscape or identify cell types. However, state-of-the-art predictive models of mouse V1 do not generate functional embeddings that exhibit clear clustering patterns which would correspond to cell types. This raises the question whether the lack of clustered structure is due to limitations of current models or a true feature of the functional organization of mouse V1. In this work, we introduce DECEMber -- Deep Embedding Clustering via Expectation Maximization-based refinement -- an explicit inductive bias into predictive models that enhances clustering by adding an auxiliary $t$-distribution-inspired loss function that enforces structured organization among per-neuron embeddings. We jointly optimize both neuronal feature embeddings and clustering parameters, updating cluster centers and scale matrices using the EM-algorithm. We demonstrate that these modifications improve cluster consistency while preserving high predictive performance and surpassing standard clustering methods in terms of stability. Moreover, DECEMber generalizes well across species (mice, primates) and visual areas (retina, V1, V4). The code is available at https://github.com/Nisone2000/sensorium/tree/neuroips_version.","url_abs":"https://arxiv.org/abs/2506.03293v1","url_pdf":"https://arxiv.org/pdf/2506.03293v1.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-to-cluster-neuronal-function","repo_url":"https://github.com/nisone2000/sensorium","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":0,"framework":"pytorch","reach":{"status":"ok","spdx":"MIT"}}],"tasks":[{"task_slug":"clustering","task_name":"Clustering"},{"task_slug":"inductive-bias","task_name":"Inductive Bias"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2506.03293","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2506.03293"}},"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/nisone2000/sensorium","reach":{"status":"ok","spdx":"MIT"}}],"summary":{"unverified":6},"by_repo_kind":{"official":{"samples":6,"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":"4ad7bca6e6e20cc9","entry":"get_data_hub_loader","repo":"nisone2000/sensorium","repo_kind":"official","path":"sensorium/utility/submission.py","file_url":"https://github.com/nisone2000/sensorium/blob/HEAD/sensorium/utility/submission.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":"4ad7bca6e6e20cc9"}},{"code_sha256_prefix":"017b80ebb4fecbee","entry":"get_df_for_scores","repo":"nisone2000/sensorium","repo_kind":"official","path":"sensorium/utility/measure_helpers.py","file_url":"https://github.com/nisone2000/sensorium/blob/HEAD/sensorium/utility/measure_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":"017b80ebb4fecbee"}},{"code_sha256_prefix":"0583d3a4035ee91a","entry":"lerp","repo":"nisone2000/sensorium","repo_kind":"official","path":"sensorium/utility/measure_helpers.py","file_url":"https://github.com/nisone2000/sensorium/blob/HEAD/sensorium/utility/measure_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":"0583d3a4035ee91a"}},{"code_sha256_prefix":"e3e59ee75115bd54","entry":"prepare_grid","repo":"nisone2000/sensorium","repo_kind":"official","path":"sensorium/models/utility.py","file_url":"https://github.com/nisone2000/sensorium/blob/HEAD/sensorium/models/utility.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":"e3e59ee75115bd54"}},{"code_sha256_prefix":"3fe943ac6bc777af","entry":"serp","repo":"nisone2000/sensorium","repo_kind":"official","path":"sensorium/utility/measure_helpers.py","file_url":"https://github.com/nisone2000/sensorium/blob/HEAD/sensorium/utility/measure_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":"3fe943ac6bc777af"}},{"code_sha256_prefix":"c6975dd95d700661","entry":"split_images","repo":"nisone2000/sensorium","repo_kind":"official","path":"sensorium/utility/scores.py","file_url":"https://github.com/nisone2000/sensorium/blob/HEAD/sensorium/utility/scores.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":"c6975dd95d700661"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}