Augmenting Neural Networks with External Memory for Sequential Data
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current neural network systems lack effective long-term memory storage and interference reduction, limiting their ability to process sequential data efficiently without increasing trainable parameters or introducing interference between memory writes.
Innovation Solution
An augmented neural network system is introduced, which includes a neural network and an external memory that uses a memory interface subsystem for reading, writing, and erasing operations, allowing for content and location-based lookups, and is fully differentiable for efficient training.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If neural networks use recurrent structures to process sequential data, then they can capture temporal dependencies, but they lack effective long-term memory storage and suffer from interference between consecutive writes
Solution Approach 1:
The external memory is segmented into multiple memory locations that can be independently accessed. The memory interface subsystem manages these segments, allowing selective reading and writing to specific locations without interference between consecutive writes. This segmentation enables long-term memory storage while reducing write interference.
Solution Approach 2:
A memory interface subsystem is introduced as an intermediary between the neural network and the external memory. This interface subsystem manages the communication protocols, handles read/write operations, and coordinates access to the external memory, thereby reducing interference between consecutive writes and enabling reliable long-term storage.
2Quantity of substance
If neural networks increase the size of memory storage, then they can store more information from preceding inputs, but they cannot increase memory size without increasing the number of trainable parameters
Solution Approach 1:
The memory storage function is extracted from the neural network's trainable parameters and placed in external memory. The external memory stores information derived from neural network outputs, allowing the network to access stored information without increasing its own parameter count. This separation enables unlimited memory capacity independent of trainable parameters.
Solution Approach 2:
Instead of storing information within the neural network's parameter space, the system creates copies of relevant information in external memory. The memory interface subsystem reads these copies when needed, allowing the network to access historical information without expanding its trainable parameters.
3Measurement precision
If neural networks process inputs from sequences, then they can generate accurate outputs, but they cannot effectively use information from preceding inputs without additional memory mechanisms
Solution Approach 1:
The external memory serves multiple functions: it stores information from preceding inputs, provides content-based lookup, enables location-based access, and reduces interference between writes. The memory interface subsystem handles all these operations, making the system more versatile without adding complex memory mechanisms to the neural network itself.
Solution Approach 2:
The system changes the parameter of information storage from within the neural network parameters to external memory storage. This allows the network to access historical information through the memory interface subsystem without changing the network's own parameters, thereby improving output accuracy while maintaining parameter efficiency.
4Productivity
If neural networks implement content and location-based lookups in external memory, then they can access stored information efficiently, but the system complexity increases
Solution Approach 1:
The memory interface subsystem merges content-based lookup and location-based access into a single unified interface. This integrated interface handles both types of queries efficiently, allowing the neural network to access external memory without managing separate complex mechanisms for each access method.
Data Source
AI summary
Methods, systems, and apparatus, including computer programs encoded on computer storage media, for augmenting neural networks with an external memory. One of the methods includes providing an output derived from a first portion of a neural network output as a system output; determining one or more sets of writing weights for each of a plurality of locations in an external memory; writing data defined by a third portion of the neural network output to the external memory in accordance with the sets of writing weights; determining one or more sets of reading weights for each of the plurality of locations in the external memory from a fourth portion of the neural network output; reading data from the external memory in accordance with the sets of reading weights; and combining the data read from the external memory with a next system input to generate the next neural network input.


