NTM is an interesting algorithm that has the ability to store and retrieve information from memory. The idea of NTM is to augment the neural network with an external memory—that is, instead of using hidden states as a memory, it uses an external memory for storing and retrieving the information. The architecture of NTM is shown in the following figure:
- Controller: This is basically a feedforward neural network or recurrent neural network. It reads from and writes to the memory.
- Memory: The memory matrix or memory bank, or simply the memory, is where we will store the information. Memory is basically a two-dimensional matrix composed of memory cells. The memory matrix contains N rows and M columns. Using the controller, we access the content from the memory. So, the controller receives input from the external environment and emits responses by interacting with the memory matrix.
- Read and write heads: The read head and write head are the...