{"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/graph2seq-graph-to-sequence-learning-with","title":"Graph2Seq: Graph to Sequence Learning with Attention-based Neural Networks","arxiv_id":"1804.00823","date":"2018-04-03","proceeding":"ICLR 2019 5","authors":["Kun Xu","Lingfei Wu","Zhiguo Wang","Yansong Feng","Michael Witbrock","Vadim Sheinin"],"abstract":"The celebrated Sequence to Sequence learning (Seq2Seq) technique and its\nnumerous variants achieve excellent performance on many tasks. However, many\nmachine learning tasks have inputs naturally represented as graphs; existing\nSeq2Seq models face a significant challenge in achieving accurate conversion\nfrom graph form to the appropriate sequence. To address this challenge, we\nintroduce a novel general end-to-end graph-to-sequence neural encoder-decoder\nmodel that maps an input graph to a sequence of vectors and uses an\nattention-based LSTM method to decode the target sequence from these vectors.\nOur method first generates the node and graph embeddings using an improved\ngraph-based neural network with a novel aggregation strategy to incorporate\nedge direction information in the node embeddings. We further introduce an\nattention mechanism that aligns node embeddings and the decoding sequence to\nbetter cope with large graphs. Experimental results on bAbI, Shortest Path, and\nNatural Language Generation tasks demonstrate that our model achieves\nstate-of-the-art performance and significantly outperforms existing graph\nneural networks, Seq2Seq, and Tree2Seq models; using the proposed\nbi-directional node embedding aggregation strategy, the model can converge\nrapidly to the optimal performance.","url_abs":"http://arxiv.org/abs/1804.00823v4","url_pdf":"http://arxiv.org/pdf/1804.00823v4.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":"graph2seq-graph-to-sequence-learning-with","repo_url":"https://github.com/IBM/Graph2Seq","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":0,"framework":"tf","reach":{"status":"ok","spdx":"Apache-2.0"}},{"paper_slug":"graph2seq-graph-to-sequence-learning-with","repo_url":"https://github.com/Attn-to-FC/Attn-to-FC","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"tf","reach":{"status":"ok"}},{"paper_slug":"graph2seq-graph-to-sequence-learning-with","repo_url":"https://github.com/ReleasedBrainiac/GraphToSequenceNN","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"tf","reach":{"status":"gone","observed_at":"2026-09-18","how":"tree_404+repo_404"}},{"paper_slug":"graph2seq-graph-to-sequence-learning-with","repo_url":"https://github.com/dice-group/NABU","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"tf","reach":{"status":"ok","spdx":"MIT"}}],"tasks":[{"task_slug":"decoder","task_name":"Decoder"},{"task_slug":"graph-to-sequence","task_name":"Graph-to-Sequence"},{"task_slug":"sql-to-text","task_name":"SQL-to-Text"},{"task_slug":"text-generation","task_name":"Text Generation"}],"methods":[{"method_slug":"lstm","method_name":"LSTM"},{"method_slug":"seq2seq","method_name":"Seq2Seq"},{"method_slug":"sigmoid-activation","method_name":"Sigmoid Activation"},{"method_slug":"tanh-activation","method_name":"Tanh Activation"}],"datasets_introduced":[],"methods_introduced":[],"results":[{"leaderboard":"/sota/sql-to-text-on-wikisql","task":"SQL-to-Text","dataset":"WikiSQL","model":"Graph2Seq-PGE","rank_in_archive_order":1,"of":2,"metrics":{"BLEU-4":"38.97"},"uses_additional_data":false}],"syntology":{"syntology_url":"https://syntology.ai/paper/1804.00823","atlas_url":"https://app.syntology.ai/?focus=1804.00823","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"1804.00823"}},"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/dice-group/NABU","reach":{"status":"ok","spdx":"MIT"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/IBM/Graph2Seq","reach":{"status":"ok","spdx":"Apache-2.0"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/Attn-to-FC/Attn-to-FC","reach":{"status":"ok"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/ReleasedBrainiac/GraphToSequenceNN","reach":{"status":"gone","observed_at":"2026-09-18","how":"tree_404+repo_404"}}],"summary":{"ran":2,"ran_honours":1,"unverified":7},"by_repo_kind":{"official":{"samples":10,"ran":3,"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":"4341bd2e76ed19d1","entry":"cons_batch_graph","repo":"IBM/Graph2Seq","repo_kind":"official","path":"main/data_collector.py","file_url":"https://github.com/IBM/Graph2Seq/blob/HEAD/main/data_collector.py","link_basis":"harvester_set","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"4341bd2e76ed19d1"}},{"code_sha256_prefix":"b82968db452628fd","entry":"get_layer_uid","repo":"IBM/Graph2Seq","repo_kind":"official","path":"main/layers.py","file_url":"https://github.com/IBM/Graph2Seq/blob/HEAD/main/layers.py","link_basis":"harvester_set","language":"python","status":"ran_honours","verification_level":1,"contract_check":"HONOURS","metamorphic_tier":"well_formed","behaviour_fingerprint":true,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"b82968db452628fd"}},{"code_sha256_prefix":"b190ef9c60b2629a","entry":"zeros","repo":"IBM/Graph2Seq","repo_kind":"official","path":"main/inits.py","file_url":"https://github.com/IBM/Graph2Seq/blob/HEAD/main/inits.py","link_basis":"harvester_set","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"b190ef9c60b2629a"}},{"code_sha256_prefix":"fe5a62319b44915c","entry":"batch","repo":"IBM/Graph2Seq","repo_kind":"official","path":"main/helpers.py","file_url":"https://github.com/IBM/Graph2Seq/blob/HEAD/main/helpers.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":"fe5a62319b44915c"}},{"code_sha256_prefix":"d38de6c77953b59d","entry":"cosine_distance","repo":"IBM/Graph2Seq","repo_kind":"official","path":"main/layer_utils.py","file_url":"https://github.com/IBM/Graph2Seq/blob/HEAD/main/layer_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":"d38de6c77953b59d"}},{"code_sha256_prefix":"5880ee955c15a36d","entry":"dropout_layer","repo":"IBM/Graph2Seq","repo_kind":"official","path":"main/layer_utils.py","file_url":"https://github.com/IBM/Graph2Seq/blob/HEAD/main/layer_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":"5880ee955c15a36d"}},{"code_sha256_prefix":"4dde04be7ce0578e","entry":"evaluate","repo":"IBM/Graph2Seq","repo_kind":"official","path":"main/evaluator.py","file_url":"https://github.com/IBM/Graph2Seq/blob/HEAD/main/evaluator.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":"4dde04be7ce0578e"}},{"code_sha256_prefix":"1b491f3f784b7cb0","entry":"glorot","repo":"IBM/Graph2Seq","repo_kind":"official","path":"main/inits.py","file_url":"https://github.com/IBM/Graph2Seq/blob/HEAD/main/inits.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":"1b491f3f784b7cb0"}},{"code_sha256_prefix":"73d006716b76680e","entry":"my_lstm_layer","repo":"IBM/Graph2Seq","repo_kind":"official","path":"main/layer_utils.py","file_url":"https://github.com/IBM/Graph2Seq/blob/HEAD/main/layer_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":"73d006716b76680e"}},{"code_sha256_prefix":"b0d1b78daecde7e9","entry":"uniform","repo":"IBM/Graph2Seq","repo_kind":"official","path":"main/inits.py","file_url":"https://github.com/IBM/Graph2Seq/blob/HEAD/main/inits.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":"b0d1b78daecde7e9"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}