{"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/from-data-to-functa-your-data-point-is-a","title":"From data to functa: Your data point is a function and you can treat it like one","arxiv_id":"2201.12204","date":"2022-01-28","proceeding":null,"authors":["Emilien Dupont","Hyunjik Kim","S. M. Ali Eslami","Danilo Rezende","Dan Rosenbaum"],"abstract":"It is common practice in deep learning to represent a measurement of the world on a discrete grid, e.g. a 2D grid of pixels. However, the underlying signal represented by these measurements is often continuous, e.g. the scene depicted in an image. A powerful continuous alternative is then to represent these measurements using an implicit neural representation, a neural function trained to output the appropriate measurement value for any input spatial location. In this paper, we take this idea to its next level: what would it take to perform deep learning on these functions instead, treating them as data? In this context we refer to the data as functa, and propose a framework for deep learning on functa. This view presents a number of challenges around efficient conversion from data to functa, compact representation of functa, and effectively solving downstream tasks on functa. We outline a recipe to overcome these challenges and apply it to a wide range of data modalities including images, 3D shapes, neural radiance fields (NeRF) and data on manifolds. We demonstrate that this approach has various compelling properties across data modalities, in particular on the canonical tasks of generative modeling, data imputation, novel view synthesis and classification. Code: https://github.com/deepmind/functa","url_abs":"https://arxiv.org/abs/2201.12204v3","url_pdf":"https://arxiv.org/pdf/2201.12204v3.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":"from-data-to-functa-your-data-point-is-a","repo_url":"https://github.com/deepmind/functa","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"jax","reach":{"status":"ok","spdx":"Apache-2.0"}}],"tasks":[{"task_slug":"deep-learning","task_name":"Deep Learning"},{"task_slug":"imputation","task_name":"Imputation"},{"task_slug":"nerf","task_name":"NeRF"},{"task_slug":"novel-view-synthesis","task_name":"Novel View Synthesis"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"syntology_url":null,"atlas_url":"https://app.syntology.ai/?focus=2201.12204","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2201.12204"}},"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/deepmind/functa","reach":{"status":"ok","spdx":"Apache-2.0"}}],"summary":{"unverified":11},"by_repo_kind":{"official":{"samples":11,"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":"49ed47f8d0f2820c","entry":"array_to_flattened_pytree","repo":"deepmind/functa","repo_kind":"official","path":"pytree_conversions.py","file_url":"https://github.com/deepmind/functa/blob/HEAD/pytree_conversions.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"49ed47f8d0f2820c"}},{"code_sha256_prefix":"3b6360dafe2a0550","entry":"filter_srn","repo":"deepmind/functa","repo_kind":"official","path":"data_utils.py","file_url":"https://github.com/deepmind/functa/blob/HEAD/data_utils.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"3b6360dafe2a0550"}},{"code_sha256_prefix":"f021d7c7c5e9bbc2","entry":"flattened_pytree_to_array","repo":"deepmind/functa","repo_kind":"official","path":"pytree_conversions.py","file_url":"https://github.com/deepmind/functa/blob/HEAD/pytree_conversions.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"f021d7c7c5e9bbc2"}},{"code_sha256_prefix":"d833751b40e23fc3","entry":"get_num_weights_and_modulations","repo":"deepmind/functa","repo_kind":"official","path":"function_reps.py","file_url":"https://github.com/deepmind/functa/blob/HEAD/function_reps.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"d833751b40e23fc3"}},{"code_sha256_prefix":"7d26fe749fa567f8","entry":"get_rays","repo":"deepmind/functa","repo_kind":"official","path":"minimal_nerf.py","file_url":"https://github.com/deepmind/functa/blob/HEAD/minimal_nerf.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"7d26fe749fa567f8"}},{"code_sha256_prefix":"60304ec2c3729e2c","entry":"partition_params","repo":"deepmind/functa","repo_kind":"official","path":"function_reps.py","file_url":"https://github.com/deepmind/functa/blob/HEAD/function_reps.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"60304ec2c3729e2c"}},{"code_sha256_prefix":"594fe089cd4ab588","entry":"partition_shared_params","repo":"deepmind/functa","repo_kind":"official","path":"function_reps.py","file_url":"https://github.com/deepmind/functa/blob/HEAD/function_reps.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"594fe089cd4ab588"}},{"code_sha256_prefix":"5b8a4b0088fc2d36","entry":"process_srn","repo":"deepmind/functa","repo_kind":"official","path":"data_utils.py","file_url":"https://github.com/deepmind/functa/blob/HEAD/data_utils.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"5b8a4b0088fc2d36"}},{"code_sha256_prefix":"254419e6e5120479","entry":"pytree_to_array","repo":"deepmind/functa","repo_kind":"official","path":"pytree_conversions.py","file_url":"https://github.com/deepmind/functa/blob/HEAD/pytree_conversions.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"254419e6e5120479"}},{"code_sha256_prefix":"59091fdb10977671","entry":"render_rays","repo":"deepmind/functa","repo_kind":"official","path":"minimal_nerf.py","file_url":"https://github.com/deepmind/functa/blob/HEAD/minimal_nerf.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"59091fdb10977671"}},{"code_sha256_prefix":"7ccd4109a7f17823","entry":"volumetric_rendering","repo":"deepmind/functa","repo_kind":"official","path":"minimal_nerf.py","file_url":"https://github.com/deepmind/functa/blob/HEAD/minimal_nerf.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"7ccd4109a7f17823"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}