In this paper we extend neural Turing machine (NTM) into a dynamic neural Turing machine (D-NTM) by introducing a trainable memory addressing scheme. This scheme maintains for each memory cell two separate vectors, content and address vectors. This allows the D-NTM to learn a wide variety of location-based addressing strategies including both linear and nonlinear ones. We implement the D-NTM with both soft, differentiable and hard, non-differentiable read/write mechanisms. We investigate the mechanisms and effects for learning to read and write to a memory through experiments on Facebook bAbI tasks using both a feedforward and GRU-controller. The D-NTM is evaluated on a set of the Facebook bAbI tasks and shown to outperform NTM and LSTM baselines. Designing general-purpose learning algorithms is one of the long-standing goals of artificial intelligence. Despite the success of deep learning in this area (see, e.g., [1],) there are still a set of complex tasks that are not well addressed by conventional neural networks. Those tasks often require a neural network to be equipped with an explicit, external memory in which a larger, potentially unbounded, set of facts need to be stored. They include, but are not limited to, episodic question-answering [2, 3, 4], compact algorithms [5] and video caption generation [6] . Recently two promising approaches based on neural networks to this type of tasks have been proposed. Memory networks [2] explicitly store all the facts, or information, available for each episode in an external memory (as continuous vectors) and use the attentional mechanism to index them when returning an output. On the other hand, neural Turing machines (NTM, [7]) read each fact in an episode and decides whether to read, write the fact or do both to the external, differentiable memory. A crucial difference between these two models is that the memory network does not have a mechanism to modify the content of the external memory, while the NTM does. In practice, this leads to easier learning in the memory network, which in turn resulted in it being used more in real tasks [8, 9] . On the contrary, the NTM has mainly been tested on a series of small-scale, carefully-crafted tasks such as copy and associative recall. The NTM, however is more expressive, precisely because it can store and modify the internal state of the network as it processes an episode. The original NTM supports two modes of addressing (which can be used simultaneously.) They are contentbased and location-based addressing. We notice that the location-based strategy is based on linear addressing. The distance between each pair of consecutive memory cells is fixed to a constant. We address this limitation, in this paper, by introducing a learnable address vector for each memory cell of the NTM with least recently used memory addressing mechanism, and we call this variant a dynamic neural Turing machine (D-NTM). We evaluate the proposed D-NTM on the full set of Facebook bAbI task [2] using either soft, differentiable attention or hard, non-differentiable attention [10] as an addressing strategy. Our experiments reveal that arXiv:1607.00036v1 [cs.LG] 30 Jun 2016 it is possible to use the hard, non-differentiable attention mechanism, and in fact, the D-NTM with the hard attention and GRU controller outperforms the one with the soft attention. 1. We propose a generalization of Neural Turing Machine called a dynamic neural Turing machine (D-NTM) which employs learnable, location-based addressing. 2. We demonstrate the application of neural Turing machines for a more complicated real task: episodic question-answering. 3. We propose to use the hard attention mechanism and empirically show that it outperforms the soft attention based addressing. 4. We propose a curriculum strategy for our model with the feedforward controller and discrete attention that improves our results significantly.
REF proposed a variant of NTM called dynamic NTM (D-NTM) which had learnable location based addressing.
Dynamic Neural Turing Machine with Soft and Hard Addressing Schemes
ArXiv
ArXiv
Computer Science