{"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/diffgcn-graph-convolutional-networks-via","title":"DiffGCN: Graph Convolutional Networks via Differential Operators and Algebraic Multigrid Pooling","arxiv_id":"2006.04115","date":"2020-06-07","proceeding":"NeurIPS 2020 12","authors":["Moshe Eliasof","Eran Treister"],"abstract":"Graph Convolutional Networks (GCNs) have shown to be effective in handling unordered data like point clouds and meshes. In this work we propose novel approaches for graph convolution, pooling and unpooling, inspired from finite differences and algebraic multigrid frameworks. We form a parameterized convolution kernel based on discretized differential operators, leveraging the graph mass, gradient and Laplacian. This way, the parameterization does not depend on the graph structure, only on the meaning of the network convolutions as differential operators. To allow hierarchical representations of the input, we propose pooling and unpooling operations that are based on algebraic multigrid methods, which are mainly used to solve partial differential equations on unstructured grids. To motivate and explain our method, we compare it to standard convolutional neural networks, and show their similarities and relations in the case of a regular grid. Our proposed method is demonstrated in various experiments like classification and part-segmentation, achieving on par or better than state of the art results. We also analyze the computational cost of our method compared to other GCNs.","url_abs":"https://arxiv.org/abs/2006.04115v2","url_pdf":"https://arxiv.org/pdf/2006.04115v2.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":"diffgcn-graph-convolutional-networks-via","repo_url":"https://github.com/BGUCompSci/DiffGCNs.py","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":null}],"tasks":[],"methods":[{"method_slug":"convolution","method_name":"Convolution"}],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2006.04115","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2006.04115"}},"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/BGUCompSci/DiffGCNs.py","reach":null}],"summary":{"ran_honours":1,"ran_draft_wrong":2,"ran_fixture":2},"by_repo_kind":{"listed":{"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":"a2da3dba81a607ee","entry":"CreateTransposedAuxGraph","repo":"BGUCompSci/DiffGCNs.py","repo_kind":"listed","path":"DiffGCN.py","file_url":"https://github.com/BGUCompSci/DiffGCNs.py/blob/HEAD/DiffGCN.py","link_basis":"first_harvest_node","language":"python","status":"ran_honours","verification_level":1,"contract_check":"HONOURS","metamorphic_tier":"invariant","behaviour_fingerprint":true,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"a2da3dba81a607ee"}},{"code_sha256_prefix":"6e35035c4e6ece5d","entry":"MLP","repo":"BGUCompSci/DiffGCNs.py","repo_kind":"listed","path":"DiffGCN.py","file_url":"https://github.com/BGUCompSci/DiffGCNs.py/blob/HEAD/DiffGCN.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"MISDECLARED","metamorphic_tier":"deterministic","behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"6e35035c4e6ece5d"}},{"code_sha256_prefix":"961d8bc97ed2ba5a","entry":"feature_transform_regularizer","repo":"BGUCompSci/DiffGCNs.py","repo_kind":"listed","path":"partsegmentation_train_test.py","file_url":"https://github.com/BGUCompSci/DiffGCNs.py/blob/HEAD/partsegmentation_train_test.py","link_basis":"first_harvest_node","language":"python","status":"ran_fixture","verification_level":1,"contract_check":"RAISES","metamorphic_tier":"invariant","behaviour_fingerprint":true,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"961d8bc97ed2ba5a"}},{"code_sha256_prefix":"39d1aa21e9bb078b","entry":"one_hot_embedding","repo":"BGUCompSci/DiffGCNs.py","repo_kind":"listed","path":"partsegmentation_train_test.py","file_url":"https://github.com/BGUCompSci/DiffGCNs.py/blob/HEAD/partsegmentation_train_test.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"MISDECLARED","metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"39d1aa21e9bb078b"}},{"code_sha256_prefix":"4d6fab2d03f5dfda","entry":"stnknn","repo":"BGUCompSci/DiffGCNs.py","repo_kind":"listed","path":"partsegmentation_train_test.py","file_url":"https://github.com/BGUCompSci/DiffGCNs.py/blob/HEAD/partsegmentation_train_test.py","link_basis":"first_harvest_node","language":"python","status":"ran_fixture","verification_level":1,"contract_check":"RAISES","metamorphic_tier":"invariant","behaviour_fingerprint":true,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"4d6fab2d03f5dfda"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}