{"url":"/method/end-to-end-memory-network","slug":"end-to-end-memory-network","name":"End-To-End Memory Network","full_name":"End-To-End Memory Network","full_name_withheld":false,"description_markdown":"An **End-to-End Memory Network** is a neural network with a recurrent attention model over a possibly large external memory. The architecture is a form of [Memory Network](https://paperswithcode.com/method/memory-network), but unlike the model in that work, it is trained end-to-end, and hence requires significantly less supervision during training. It can also be seen as an extension of RNNsearch to the case where multiple computational steps (hops) are performed per output symbol.\r\n\r\nThe model takes a discrete set of inputs $x\\_{1}, \\dots, x\\_{n}$ that are to be stored in the memory, a query $q$, and outputs an answer $a$. Each of the $x\\_{i}$, $q$, and $a$ contains symbols coming from a dictionary with $V$ words. The model writes all $x$ to the memory up to a fixed buffer size, and then finds a continuous representation for the $x$ and $q$. The continuous representation is then processed via multiple hops to output $a$.","description_state":"present","introduced_year":null,"introduced_by":{"title":"End-To-End Memory Networks","paper":"/paper/end-to-end-memory-networks","first_author":"Sainbayar Sukhbaatar","n_authors":4,"url_abs":null,"archive_paper_url":"https://paperswithcode.com/paper/end-to-end-memory-networks"},"source":{"url":"http://arxiv.org/abs/1503.08895v5","title":"End-To-End Memory Networks","url_on_a_paper_host":true},"code_snippet_url":"https://github.com/carpedm20/MemN2N-tensorflow/blob/f8f4da4ca1b3a4afa764748a6907e79ab2be1ffd/model.py#L8","code_snippet_url_on_a_code_host":true,"categories":[{"area":"General","area_id":"general","collection":"Working Memory Models","url":"/methods/category/working-memory-models","pwc_aliases":[]}],"n_papers_tagged":2,"archive_num_papers":2,"papers_newest_first":[{"paper":"/paper/automatic-stance-detection-using-end-to-end","title":"Automatic Stance Detection Using End-to-End Memory Networks","date":"2018-04-20","arxiv_id":"1804.07581","n_code_links":0,"syntology":null},{"paper":"/paper/end-to-end-memory-networks","title":"End-To-End Memory Networks","date":"2015-03-31","arxiv_id":"1503.08895","n_code_links":44,"syntology":{"ran":2,"of":15,"unverified":13,"pointer_only":5}}],"papers_shown":2,"tasks":[{"task":"/task/language-modeling","name":"Language Modeling","papers":1},{"task":"/task/language-modelling","name":"Language Modelling","papers":1},{"task":"/task/question-answering","name":"Question Answering","papers":1},{"task":"/task/stance-detection","name":"Stance Detection","papers":1}],"tasks_shown":4,"n_tasks":4,"usage_by_year":[{"year":"2015","papers":1},{"year":"2018","papers":1}],"row_source":"methods_table","archive":{"source":"pwc-archive (Hugging Face), CC BY-SA 4.0","snapshot":"2025-07-28","archive_url":"https://paperswithcode.com/method/end-to-end-memory-network"},"syntology_read_at":"2026-09-24T18:15:14+00:00"}