Continual Learning with Gated Incremental Memories for sequential data processing

Andrea Cossu

Andrea Cossu

Pisa, Toscana

0 0
  • 0 Collaborators

This work proposes a Recurrent Neural Network (RNN) model for CL that is able to deal with drift in input distribution without forgetting previously acquired knowledge. The Gated Incremental Memory is tested on two different RNNs (LSTM and LMN) and on standard CL benchmarks. ...learn more

Project status: Published/In Market

Artificial Intelligence

Groups
DeepLearning, Artificial Intelligence Europe

Intel Technologies
Intel Python

Code Samples [1]Links [2]

Overview / Usage

The problem of catastrophic forgetting is the main focus of Continual Learning (CL), defined as “the unending process of learning new things on top of what has already been learned”, In the CL scenario, a learning model is required to incrementally build and dynamically update internal representations as the distribution of tasks dynamically changes across its lifetime. Ideally, part of such internal representations will be general and invariant enough to be reusable across similar tasks, while another part should preserve and encode task-specific representations. While current trends in CL put particular emphasis on computer vision applications or reinforcement learning scenarios, sequential data processing is rarely taken into consideration. However, sequential data are heavily used in several fields like Natural Language Processing, signal processing, bioinformatics, and many others.

The proposed approach introduces a techniques, Gated Incremental Memories (GIMs), able to augment existing Recurrent Neural Networks with CL skills, by incrementally adding new modules on top of the existing ones as soon as new tasks arrive. The approach can be used to incrementally learn new concepts once the model has been already trained. Retraining with old and new knowledge comes at a large cost and it is often a waste, due to the fact that most of the knowledge needed is already embedded in the network. GIM overcomes this limitation and provides the user with the ability to learn few classes at a time.

Methodology / Approach

The flexibility of Python and PyTorch allows to build dynamic networks which update themselves in time. The expansion of network's capacity is managed adaptively as new tasks are discovered.

Technologies Used

  • Python
  • PyTorch

Repository

https://github.com/AndreaCossu/ContinualLearning-SequentialProcessing

Comments (0)