Implementing Neural Turing Machines
Mark Collier, Joeran Beel
Code Available — Be the first to reproduce this paper.
ReproduceCode
- github.com/MarkPKCollier/NeuralTuringMachineOfficialIn papertf★ 610
- github.com/SourangshuGhosh/NeuralTuringMachinetf★ 4
- github.com/mdabagia/NeuralTuringMachinepytorch★ 0
- github.com/Baichenjia/NeuralTuringMachinetf★ 0
- github.com/theneuralbeing/ntmpytorch★ 0
- github.com/ajithcodesit/Neural_Turing_Machinetf★ 0
Abstract
Neural Turing Machines (NTMs) are an instance of Memory Augmented Neural Networks, a new class of recurrent neural networks which decouple computation from memory by introducing an external memory unit. NTMs have demonstrated superior performance over Long Short-Term Memory Cells in several sequence learning tasks. A number of open source implementations of NTMs exist but are unstable during training and/or fail to replicate the reported performance of NTMs. This paper presents the details of our successful implementation of a NTM. Our implementation learns to solve three sequential learning tasks from the original NTM paper. We find that the choice of memory contents initialization scheme is crucial in successfully implementing a NTM. Networks with memory contents initialized to small constant values converge on average 2 times faster than the next best memory contents initialization scheme.