{"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-convolutional-networks-for-text","title":"Graph Convolutional Networks for Text Classification","arxiv_id":"1809.05679","date":"2018-09-15","proceeding":null,"authors":["Liang Yao","Chengsheng Mao","Yuan Luo"],"abstract":"Text classification is an important and classical problem in natural language\nprocessing. There have been a number of studies that applied convolutional\nneural networks (convolution on regular grid, e.g., sequence) to\nclassification. However, only a limited number of studies have explored the\nmore flexible graph convolutional neural networks (convolution on non-grid,\ne.g., arbitrary graph) for the task. In this work, we propose to use graph\nconvolutional networks for text classification. We build a single text graph\nfor a corpus based on word co-occurrence and document word relations, then\nlearn a Text Graph Convolutional Network (Text GCN) for the corpus. Our Text\nGCN is initialized with one-hot representation for word and document, it then\njointly learns the embeddings for both words and documents, as supervised by\nthe known class labels for documents. Our experimental results on multiple\nbenchmark datasets demonstrate that a vanilla Text GCN without any external\nword embeddings or knowledge outperforms state-of-the-art methods for text\nclassification. On the other hand, Text GCN also learns predictive word and\ndocument embeddings. In addition, experimental results show that the\nimprovement of Text GCN over state-of-the-art comparison methods become more\nprominent as we lower the percentage of training data, suggesting the\nrobustness of Text GCN to less training data in text classification.","url_abs":"http://arxiv.org/abs/1809.05679v3","url_pdf":"http://arxiv.org/pdf/1809.05679v3.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-convolutional-networks-for-text","repo_url":"https://github.com/yao8839836/text_gcn","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":0,"framework":"tf","reach":{"status":"ok"}},{"paper_slug":"graph-convolutional-networks-for-text","repo_url":"https://github.com/FoxerLee/TGCN","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"tf","reach":{"status":"ok"}},{"paper_slug":"graph-convolutional-networks-for-text","repo_url":"https://github.com/chengsen/pytorch_textgcn","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":null},{"paper_slug":"graph-convolutional-networks-for-text","repo_url":"https://github.com/codeKgu/text-gcn","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"MIT"}},{"paper_slug":"graph-convolutional-networks-for-text","repo_url":"https://github.com/dtriepke/Graph_Convolutional_Network","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"tf","reach":null},{"paper_slug":"graph-convolutional-networks-for-text","repo_url":"https://github.com/koreyou/text-gcn-chainer","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"CC0-1.0"}},{"paper_slug":"graph-convolutional-networks-for-text","repo_url":"https://github.com/plkmo/Bible_Text_GCN","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":null},{"paper_slug":"graph-convolutional-networks-for-text","repo_url":"https://github.com/ydtydr/hyla","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":null},{"paper_slug":"graph-convolutional-networks-for-text","repo_url":"https://github.com/yongbowin/Bible_Text_GCN_annotation","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok"}}],"tasks":[{"task_slug":"classification","task_name":"General Classification"},{"task_slug":"sentiment-analysis","task_name":"Sentiment Analysis"},{"task_slug":"text-classification","task_name":"Text Classification"}],"methods":[{"method_slug":"gcn","method_name":"GCN"}],"datasets_introduced":[],"methods_introduced":[],"results":[{"leaderboard":"/sota/sentiment-analysis-on-mr","task":"Sentiment Analysis","dataset":"MR","model":"Text GCN","rank_in_archive_order":14,"of":19,"metrics":{"Accuracy":"76.74"},"uses_additional_data":false},{"leaderboard":"/sota/text-classification-on-20news","task":"Text Classification","dataset":"20NEWS","model":"Text GCN","rank_in_archive_order":10,"of":16,"metrics":{"Accuracy":"86.34"},"uses_additional_data":true},{"leaderboard":"/sota/text-classification-on-ohsumed","task":"Text Classification","dataset":"Ohsumed","model":"Text GCN","rank_in_archive_order":6,"of":10,"metrics":{"Accuracy":"68.36"},"uses_additional_data":false},{"leaderboard":"/sota/text-classification-on-r52","task":"Text Classification","dataset":"R52","model":"Text GCN","rank_in_archive_order":7,"of":8,"metrics":{"Accuracy":"93.56"},"uses_additional_data":false},{"leaderboard":"/sota/text-classification-on-r8","task":"Text Classification","dataset":"R8","model":"Text GCN","rank_in_archive_order":17,"of":21,"metrics":{"Accuracy":"97.07"},"uses_additional_data":false}],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=1809.05679","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"1809.05679"}},"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/yao8839836/text_gcn","reach":{"status":"ok"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/dtriepke/Graph_Convolutional_Network","reach":null},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/codeKgu/text-gcn","reach":{"status":"ok","spdx":"MIT"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/koreyou/text-gcn-chainer","reach":{"status":"ok","spdx":"CC0-1.0"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/FoxerLee/TGCN","reach":{"status":"ok"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/ydtydr/hyla","reach":null},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/chengsen/pytorch_textgcn","reach":null},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/plkmo/Bible_Text_GCN","reach":null},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/yongbowin/Bible_Text_GCN_annotation","reach":{"status":"ok"}}],"summary":{"ran_honours":2,"ran_draft_wrong":4,"unverified":10},"by_repo_kind":{"listed":{"samples":16,"ran":6,"repositories":5}},"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":6,"samples":[{"code_sha256_prefix":"a5ebdf6ac2def3a0","entry":"cal_pmi","repo":"chengsen/pytorch_textgcn","repo_kind":"listed","path":"build_graph.py","file_url":"https://github.com/chengsen/pytorch_textgcn/blob/HEAD/build_graph.py","link_basis":"first_harvest_node","language":"python","status":"ran_honours","verification_level":1,"contract_check":"HONOURS","metamorphic_tier":"well_formed","behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"a5ebdf6ac2def3a0"}},{"code_sha256_prefix":"23cb6c93ee0a7878","entry":"count_pmi","repo":"chengsen/pytorch_textgcn","repo_kind":"listed","path":"build_graph.py","file_url":"https://github.com/chengsen/pytorch_textgcn/blob/HEAD/build_graph.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"OUTPUT_MISDECLARED","metamorphic_tier":"deterministic","behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"23cb6c93ee0a7878"}},{"code_sha256_prefix":"a7642b4d294d07a6","entry":"get_window","repo":"chengsen/pytorch_textgcn","repo_kind":"listed","path":"build_graph.py","file_url":"https://github.com/chengsen/pytorch_textgcn/blob/HEAD/build_graph.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"OUTPUT_MISDECLARED","metamorphic_tier":"deterministic","behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"a7642b4d294d07a6"}},{"code_sha256_prefix":"d760f5d1c4f85eb6","entry":"load_pickle","repo":"dtriepke/Graph_Convolutional_Network","repo_kind":"listed","path":"model_train.py","file_url":"https://github.com/dtriepke/Graph_Convolutional_Network/blob/HEAD/model_train.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"OUTPUT_MISDECLARED","metamorphic_tier":"deterministic","behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"d760f5d1c4f85eb6"}},{"code_sha256_prefix":"1d30b9a0ccf5a53d","entry":"load_state","repo":"plkmo/Bible_Text_GCN","repo_kind":"listed","path":"text_GCN.py","file_url":"https://github.com/plkmo/Bible_Text_GCN/blob/HEAD/text_GCN.py","link_basis":"first_harvest_node","language":"python","status":"ran_honours","verification_level":1,"contract_check":"HONOURS","metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"1d30b9a0ccf5a53d"}},{"code_sha256_prefix":"11c600e5158c8de1","entry":"remove_less_word","repo":"chengsen/pytorch_textgcn","repo_kind":"listed","path":"data_processor.py","file_url":"https://github.com/chengsen/pytorch_textgcn/blob/HEAD/data_processor.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"OUTPUT_MISDECLARED","metamorphic_tier":"deterministic","behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"11c600e5158c8de1"}},{"code_sha256_prefix":"d7c52fad2776eea6","entry":"build_edges","repo":"codeKgu/text-gcn","repo_kind":"listed","path":"build_graph.py","file_url":"https://github.com/codeKgu/text-gcn/blob/HEAD/build_graph.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":"d7c52fad2776eea6"}},{"code_sha256_prefix":"b362ca4a14ece361","entry":"calc_pmi","repo":"koreyou/text-gcn-chainer","repo_kind":"listed","path":"graphs.py","file_url":"https://github.com/koreyou/text-gcn-chainer/blob/HEAD/graphs.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"CC0-1.0","inline_ok":true,"mcp_get_code":{"code_sha256":"b362ca4a14ece361"}},{"code_sha256_prefix":"d3fab161b1ada8bb","entry":"clean_doc","repo":"codeKgu/text-gcn","repo_kind":"listed","path":"prep_data.py","file_url":"https://github.com/codeKgu/text-gcn/blob/HEAD/prep_data.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":"d3fab161b1ada8bb"}},{"code_sha256_prefix":"609ed2882449335b","entry":"clean_doc_ap","repo":"codeKgu/text-gcn","repo_kind":"listed","path":"prep_data.py","file_url":"https://github.com/codeKgu/text-gcn/blob/HEAD/prep_data.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":"609ed2882449335b"}},{"code_sha256_prefix":"eef3ad654b28192f","entry":"clean_documents","repo":"codeKgu/text-gcn","repo_kind":"listed","path":"prep_data.py","file_url":"https://github.com/codeKgu/text-gcn/blob/HEAD/prep_data.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":"eef3ad654b28192f"}},{"code_sha256_prefix":"f71177416c3999b7","entry":"create_act","repo":"codeKgu/text-gcn","repo_kind":"listed","path":"model_text_gnn.py","file_url":"https://github.com/codeKgu/text-gcn/blob/HEAD/model_text_gnn.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":"f71177416c3999b7"}},{"code_sha256_prefix":"8439106958ba7d2c","entry":"create_text_adjacency_matrix","repo":"koreyou/text-gcn-chainer","repo_kind":"listed","path":"graphs.py","file_url":"https://github.com/koreyou/text-gcn-chainer/blob/HEAD/graphs.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"CC0-1.0","inline_ok":true,"mcp_get_code":{"code_sha256":"8439106958ba7d2c"}},{"code_sha256_prefix":"f0aeffa095b44a3a","entry":"get_vocab","repo":"codeKgu/text-gcn","repo_kind":"listed","path":"build_graph.py","file_url":"https://github.com/codeKgu/text-gcn/blob/HEAD/build_graph.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":"f0aeffa095b44a3a"}},{"code_sha256_prefix":"2950d6b582fe43a8","entry":"normalize_text","repo":"koreyou/text-gcn-chainer","repo_kind":"listed","path":"nlp_utils.py","file_url":"https://github.com/koreyou/text-gcn-chainer/blob/HEAD/nlp_utils.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"CC0-1.0","inline_ok":true,"mcp_get_code":{"code_sha256":"2950d6b582fe43a8"}},{"code_sha256_prefix":"ca704301382f623d","entry":"proc_filepath","repo":"codeKgu/text-gcn","repo_kind":"listed","path":"utils.py","file_url":"https://github.com/codeKgu/text-gcn/blob/HEAD/utils.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":"ca704301382f623d"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}