{"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/dynet-the-dynamic-neural-network-toolkit","title":"DyNet: The Dynamic Neural Network Toolkit","arxiv_id":"1701.03980","date":"2017-01-15","proceeding":null,"authors":["Graham Neubig","Chris Dyer","Yoav Goldberg","Austin Matthews","Waleed Ammar","Antonios Anastasopoulos","Miguel Ballesteros","David Chiang","Daniel Clothiaux","Trevor Cohn","Kevin Duh","Manaal Faruqui","Cynthia Gan","Dan Garrette","Yangfeng Ji","Lingpeng Kong","Adhiguna Kuncoro","Gaurav Kumar","Chaitanya Malaviya","Paul Michel","Yusuke Oda","Matthew Richardson","Naomi Saphra","Swabha Swayamdipta","Pengcheng Yin"],"abstract":"We describe DyNet, a toolkit for implementing neural network models based on\ndynamic declaration of network structure. In the static declaration strategy\nthat is used in toolkits like Theano, CNTK, and TensorFlow, the user first\ndefines a computation graph (a symbolic representation of the computation), and\nthen examples are fed into an engine that executes this computation and\ncomputes its derivatives. In DyNet's dynamic declaration strategy, computation\ngraph construction is mostly transparent, being implicitly constructed by\nexecuting procedural code that computes the network outputs, and the user is\nfree to use different network structures for each input. Dynamic declaration\nthus facilitates the implementation of more complicated network architectures,\nand DyNet is specifically designed to allow users to implement their models in\na way that is idiomatic in their preferred programming language (C++ or\nPython). One challenge with dynamic declaration is that because the symbolic\ncomputation graph is defined anew for every training example, its construction\nmust have low overhead. To achieve this, DyNet has an optimized C++ backend and\nlightweight graph representation. Experiments show that DyNet's speeds are\nfaster than or comparable with static declaration toolkits, and significantly\nfaster than Chainer, another dynamic declaration toolkit. DyNet is released\nopen-source under the Apache 2.0 license and available at\nhttp://github.com/clab/dynet.","url_abs":"http://arxiv.org/abs/1701.03980v1","url_pdf":"http://arxiv.org/pdf/1701.03980v1.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":"dynet-the-dynamic-neural-network-toolkit","repo_url":"https://github.com/clab/dynet","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"none","reach":{"status":"ok","spdx":"Apache-2.0"}},{"paper_slug":"dynet-the-dynamic-neural-network-toolkit","repo_url":"https://github.com/clab/cnn","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"none","reach":{"status":"ok","spdx":"Apache-2.0"}},{"paper_slug":"dynet-the-dynamic-neural-network-toolkit","repo_url":"https://github.com/hanyaqian/dynet","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"none","reach":{"status":"ok","spdx":"Apache-2.0"}},{"paper_slug":"dynet-the-dynamic-neural-network-toolkit","repo_url":"https://github.com/xiaozhewen/dynet-v1.1","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"none","reach":{"status":"ok"}}],"tasks":[{"task_slug":"graph-construction","task_name":"graph construction"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=1701.03980","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"1701.03980"}},"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/hanyaqian/dynet","reach":{"status":"ok","spdx":"Apache-2.0"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/xiaozhewen/dynet-v1.1","reach":{"status":"ok"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/clab/dynet","reach":{"status":"ok","spdx":"Apache-2.0"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/clab/cnn","reach":{"status":"ok","spdx":"Apache-2.0"}}],"summary":{"unverified":3},"by_repo_kind":{"official":{"samples":3,"ran":0,"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":"f69e098737c54170","entry":"copy_dim","repo":"clab/dynet","repo_kind":"official","path":"python/dynet_viz.py","file_url":"https://github.com/clab/dynet/blob/HEAD/python/dynet_viz.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":"f69e098737c54170"}},{"code_sha256_prefix":"bab8a2882369e33c","entry":"ensure_same_dim","repo":"clab/dynet","repo_kind":"official","path":"python/dynet_viz.py","file_url":"https://github.com/clab/dynet/blob/HEAD/python/dynet_viz.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":"bab8a2882369e33c"}},{"code_sha256_prefix":"9cf168370ff01349","entry":"make_dim","repo":"clab/dynet","repo_kind":"official","path":"python/dynet_viz.py","file_url":"https://github.com/clab/dynet/blob/HEAD/python/dynet_viz.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":"9cf168370ff01349"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}