{"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/graph-based-virtual-sensing-from-sparse-and","title":"Graph-based Virtual Sensing from Sparse and Partial Multivariate Observations","arxiv_id":"2402.12598","date":"2024-02-19","proceeding":null,"authors":["Giovanni De Felice","Andrea Cini","Daniele Zambon","Vladimir V. Gusev","Cesare Alippi"],"abstract":"Virtual sensing techniques allow for inferring signals at new unmonitored locations by exploiting spatio-temporal measurements coming from physical sensors at different locations. However, as the sensor coverage becomes sparse due to costs or other constraints, physical proximity cannot be used to support interpolation. In this paper, we overcome this challenge by leveraging dependencies between the target variable and a set of correlated variables (covariates) that can frequently be associated with each location of interest. From this viewpoint, covariates provide partial observability, and the problem consists of inferring values for unobserved channels by exploiting observations at other locations to learn how such variables can correlate. We introduce a novel graph-based methodology to exploit such relationships and design a graph deep learning architecture, named GgNet, implementing the framework. The proposed approach relies on propagating information over a nested graph structure that is used to learn dependencies between variables as well as locations. GgNet is extensively evaluated under different virtual sensing scenarios, demonstrating higher reconstruction accuracy compared to the state-of-the-art.","url_abs":"https://arxiv.org/abs/2402.12598v1","url_pdf":"https://arxiv.org/pdf/2402.12598v1.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":"graph-based-virtual-sensing-from-sparse-and","repo_url":"https://github.com/gdefe/ggnet-virtual-sensing","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"MIT"}}],"tasks":[],"methods":[{"method_slug":"set","method_name":"SET"}],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"syntology_url":null,"atlas_url":"https://app.syntology.ai/?focus=2402.12598","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2402.12598"}},"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/gdefe/ggnet-virtual-sensing","reach":{"status":"ok","spdx":"MIT"}}],"summary":{"ran":7},"by_repo_kind":{"official":{"samples":7,"ran":7,"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":"d988d3834cb58914","entry":"is_column_present","repo":"gdefe/ggnet-virtual-sensing","repo_kind":"official","path":"virtual_sensing/imputation.py","file_url":"https://github.com/gdefe/ggnet-virtual-sensing/blob/HEAD/virtual_sensing/imputation.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":"d988d3834cb58914"}},{"code_sha256_prefix":"99e755333489e6d1","entry":"nodewise_index","repo":"gdefe/ggnet-virtual-sensing","repo_kind":"official","path":"virtual_sensing/nodewise_splitter.py","file_url":"https://github.com/gdefe/ggnet-virtual-sensing/blob/HEAD/virtual_sensing/nodewise_splitter.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":"99e755333489e6d1"}},{"code_sha256_prefix":"aac9c466dc722590","entry":"remove_column","repo":"gdefe/ggnet-virtual-sensing","repo_kind":"official","path":"virtual_sensing/imputation.py","file_url":"https://github.com/gdefe/ggnet-virtual-sensing/blob/HEAD/virtual_sensing/imputation.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":"aac9c466dc722590"}},{"code_sha256_prefix":"6513b90cc3493162","entry":"reorder_columns","repo":"gdefe/ggnet-virtual-sensing","repo_kind":"official","path":"virtual_sensing/imputation.py","file_url":"https://github.com/gdefe/ggnet-virtual-sensing/blob/HEAD/virtual_sensing/imputation.py","link_basis":"first_harvest_node","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":"6513b90cc3493162"}},{"code_sha256_prefix":"5c210c09cfd0e489","entry":"sample_nodes","repo":"gdefe/ggnet-virtual-sensing","repo_kind":"official","path":"virtual_sensing/node_sampler.py","file_url":"https://github.com/gdefe/ggnet-virtual-sensing/blob/HEAD/virtual_sensing/node_sampler.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":"5c210c09cfd0e489"}},{"code_sha256_prefix":"fef67aae68749d08","entry":"sample_nodes_groups","repo":"gdefe/ggnet-virtual-sensing","repo_kind":"official","path":"virtual_sensing/node_sampler.py","file_url":"https://github.com/gdefe/ggnet-virtual-sensing/blob/HEAD/virtual_sensing/node_sampler.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":"fef67aae68749d08"}},{"code_sha256_prefix":"d13bcd685b2168e6","entry":"sample_nodes_rnd","repo":"gdefe/ggnet-virtual-sensing","repo_kind":"official","path":"virtual_sensing/node_sampler.py","file_url":"https://github.com/gdefe/ggnet-virtual-sensing/blob/HEAD/virtual_sensing/node_sampler.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":"d13bcd685b2168e6"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}