{"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/fake-news-detection-on-social-media-using","title":"Fake News Detection on Social Media using Geometric Deep Learning","arxiv_id":"1902.06673","date":"2019-02-10","proceeding":null,"authors":["Federico Monti","Fabrizio Frasca","Davide Eynard","Damon Mannion","Michael M. Bronstein"],"abstract":"Social media are nowadays one of the main news sources for millions of people\naround the globe due to their low cost, easy access and rapid dissemination.\nThis however comes at the cost of dubious trustworthiness and significant risk\nof exposure to 'fake news', intentionally written to mislead the readers.\nAutomatically detecting fake news poses challenges that defy existing\ncontent-based analysis approaches. One of the main reasons is that often the\ninterpretation of the news requires the knowledge of political or social\ncontext or 'common sense', which current NLP algorithms are still missing.\nRecent studies have shown that fake and real news spread differently on social\nmedia, forming propagation patterns that could be harnessed for the automatic\nfake news detection. Propagation-based approaches have multiple advantages\ncompared to their content-based counterparts, among which is language\nindependence and better resilience to adversarial attacks. In this paper we\nshow a novel automatic fake news detection model based on geometric deep\nlearning. The underlying core algorithms are a generalization of classical CNNs\nto graphs, allowing the fusion of heterogeneous data such as content, user\nprofile and activity, social graph, and news propagation. Our model was trained\nand tested on news stories, verified by professional fact-checking\norganizations, that were spread on Twitter. Our experiments indicate that\nsocial network structure and propagation are important features allowing highly\naccurate (92.7% ROC AUC) fake news detection. Second, we observe that fake news\ncan be reliably detected at an early stage, after just a few hours of\npropagation. Third, we test the aging of our model on training and testing data\nseparated in time. Our results point to the promise of propagation-based\napproaches for fake news detection as an alternative or complementary strategy\nto content-based approaches.","url_abs":"http://arxiv.org/abs/1902.06673v1","url_pdf":"http://arxiv.org/pdf/1902.06673v1.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":"fake-news-detection-on-social-media-using","repo_url":"https://github.com/YingtongDou/GCNN","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"Apache-2.0"}},{"paper_slug":"fake-news-detection-on-social-media-using","repo_url":"https://github.com/gordicaleksa/pytorch-GAT","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":null},{"paper_slug":"fake-news-detection-on-social-media-using","repo_url":"https://github.com/npurg/faknow","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"MIT"}},{"paper_slug":"fake-news-detection-on-social-media-using","repo_url":"https://github.com/safe-graph/GNN-FakeNews","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":null}],"tasks":[{"task_slug":"common-sense-reasoning","task_name":"Common Sense Reasoning"},{"task_slug":"deep-learning","task_name":"Deep Learning"},{"task_slug":"fact-checking","task_name":"Fact Checking"},{"task_slug":"fake-news-detection","task_name":"Fake News Detection"},{"task_slug":"graph-classification","task_name":"Graph Classification"}],"methods":[{"method_slug":"gcnfn","method_name":"GCNFN"}],"datasets_introduced":[],"methods_introduced":[{"slug":"gcnfn","name":"GCNFN","full_name":"Graph Convolutional Networks for Fake News Detection"}],"results":[],"syntology":{"syntology_url":"https://syntology.ai/paper/1902.06673","atlas_url":"https://app.syntology.ai/?focus=1902.06673","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"1902.06673"}},"developers":"https://syntology.ai/developers","read_at":"2026-09-25T09:33:49+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/npurg/faknow","reach":{"status":"ok","spdx":"MIT"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/YingtongDou/GCNN","reach":{"status":"ok","spdx":"Apache-2.0"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/safe-graph/GNN-FakeNews","reach":null},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/gordicaleksa/pytorch-GAT","reach":null}],"summary":{"ran":8,"ran_fixture":1,"ran_draft_wrong":1,"unverified":2},"by_repo_kind":{"listed":{"samples":11,"ran":9,"repositories":2}},"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":1,"samples":[{"code_sha256_prefix":"1f9e3635ea437a43","entry":"cal_length","repo":"npurg/faknow","repo_kind":"listed","path":"faknow/model/content_based/m3fend.py","file_url":"https://github.com/npurg/faknow/blob/HEAD/faknow/model/content_based/m3fend.py","link_basis":"harvester_set","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":"1f9e3635ea437a43"}},{"code_sha256_prefix":"3d7ef288ba2728b6","entry":"calculate_accuracy","repo":"npurg/faknow","repo_kind":"listed","path":"faknow/evaluate/metrics.py","file_url":"https://github.com/npurg/faknow/blob/HEAD/faknow/evaluate/metrics.py","link_basis":"harvester_set","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":"3d7ef288ba2728b6"}},{"code_sha256_prefix":"99c62a2efeaa598a","entry":"conv2d_bn_relu","repo":"npurg/faknow","repo_kind":"listed","path":"faknow/model/layers/dct.py","file_url":"https://github.com/npurg/faknow/blob/HEAD/faknow/model/layers/dct.py","link_basis":"harvester_set","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":"99c62a2efeaa598a"}},{"code_sha256_prefix":"30876570035a9feb","entry":"get_metric_func","repo":"npurg/faknow","repo_kind":"listed","path":"faknow/evaluate/metrics.py","file_url":"https://github.com/npurg/faknow/blob/HEAD/faknow/evaluate/metrics.py","link_basis":"harvester_set","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":"30876570035a9feb"}},{"code_sha256_prefix":"d585b0b52e8e6a84","entry":"masked_softmax","repo":"npurg/faknow","repo_kind":"listed","path":"faknow/model/layers/transformer.py","file_url":"https://github.com/npurg/faknow/blob/HEAD/faknow/model/layers/transformer.py","link_basis":"harvester_set","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":"d585b0b52e8e6a84"}},{"code_sha256_prefix":"260cf2039211af77","entry":"norm","repo":"npurg/faknow","repo_kind":"listed","path":"faknow/model/content_based/m3fend.py","file_url":"https://github.com/npurg/faknow/blob/HEAD/faknow/model/content_based/m3fend.py","link_basis":"harvester_set","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":"260cf2039211af77"}},{"code_sha256_prefix":"62c7cc7bf1f04934","entry":"sequence_mask","repo":"npurg/faknow","repo_kind":"listed","path":"faknow/model/layers/transformer.py","file_url":"https://github.com/npurg/faknow/blob/HEAD/faknow/model/layers/transformer.py","link_basis":"harvester_set","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":"62c7cc7bf1f04934"}},{"code_sha256_prefix":"fa145afc46ed4a2d","entry":"split","repo":null,"repo_kind":null,"path":null,"file_url":null,"link_basis":"identical_code_first_harvested_elsewhere","language":"python","status":"ran_fixture","verification_level":1,"contract_check":"RAISES","metamorphic_tier":null,"behaviour_fingerprint":false,"licence":null,"inline_ok":false,"mcp_get_code":{"code_sha256":"fa145afc46ed4a2d"}},{"code_sha256_prefix":"364e76fb256f12f4","entry":"to_GBs","repo":"gordicaleksa/pytorch-GAT","repo_kind":"listed","path":"playground.py","file_url":"https://github.com/gordicaleksa/pytorch-GAT/blob/HEAD/playground.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"OUTPUT_MISDECLARED","metamorphic_tier":"deterministic","behaviour_fingerprint":true,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"364e76fb256f12f4"}},{"code_sha256_prefix":"9fe1fb5979d44c4d","entry":"transpose_qkv","repo":"npurg/faknow","repo_kind":"listed","path":"faknow/model/layers/transformer.py","file_url":"https://github.com/npurg/faknow/blob/HEAD/faknow/model/layers/transformer.py","link_basis":"harvester_set","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":"9fe1fb5979d44c4d"}},{"code_sha256_prefix":"811f77b9f94fc00d","entry":"calculate_precision","repo":"npurg/faknow","repo_kind":"listed","path":"faknow/evaluate/metrics.py","file_url":"https://github.com/npurg/faknow/blob/HEAD/faknow/evaluate/metrics.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":"811f77b9f94fc00d"}},{"code_sha256_prefix":"2f32d51fc968cd31","entry":"convert_to_onehot","repo":"npurg/faknow","repo_kind":"listed","path":"faknow/model/content_based/m3fend.py","file_url":"https://github.com/npurg/faknow/blob/HEAD/faknow/model/content_based/m3fend.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":"2f32d51fc968cd31"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}