Classifier With Explicit Memory For Incremental Learning
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Deep convolutional neural networks face challenges in continually learning novel classes from few training samples under resource constraints in dynamic environments, leading to issues like catastrophic forgetting and inefficient resource utilization.
Innovation Solution
A method for continual learning of classifiers using a controller with an explicit memory, where prototype vectors are pre-trained and updated iteratively using both base and novel classes, allowing for incremental learning and minimizing the distance between output vectors and prototype vectors stored in memory.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If deep convolutional neural networks are trained with large curated datasets and huge computational resources, then classification accuracy is improved, but resource consumption increases and applicability to resource-constrained environments deteriorates
Solution Approach 1:
The training process is segmented into two distinct phases: pre-training with base classes using large datasets, and incremental learning with novel classes using few shots. This segmentation allows the system to achieve high accuracy on base classes while consuming minimal resources during deployment for novel classes.
Solution Approach 2:
The classifier is pre-trained offline with large curated datasets and huge computational resources before deployment. This preliminary action transfers the heavy computational burden to the pre-training phase, enabling the deployed system to operate with minimal resource consumption while maintaining high accuracy.
2Adaptability or versatility
If the classifier learns novel classes from very few training samples, then adaptability to dynamic environments is improved, but catastrophic forgetting of base classes occurs
Solution Approach 1:
Prototype vectors serve as intermediaries between the classifier and training data. During incremental learning, prototypes of base classes are stored and used as reference points, allowing the classifier to learn novel classes while maintaining a computational anchor to base class knowledge, thereby preventing catastrophic forgetting.
Solution Approach 2:
The system implements feedback by continuously comparing classifier outputs against stored prototype vectors during incremental learning. This feedback mechanism ensures that predictions for both base and novel classes are consistently evaluated against established references, maintaining reliability across class increments.
3Adaptability or versatility
If the classifier is retrained with new training datasets, then learning of novel classes is improved, but computational time and resource usage increase
Solution Approach 1:
The method extracts and stores only the essential information (prototype vectors) from training datasets rather than retaining or reprocessing the entire datasets. During incremental learning, only the new training samples and stored prototypes are used, significantly reducing computational time compared to full dataset retraining.
Solution Approach 2:
The system discards the need to store and reprocess large training datasets after initial pre-training. Instead, it recovers essential class information by storing compact prototype vectors that can be efficiently reused during incremental learning, thereby minimizing computational time for learning novel classes.
Data Source
AI summary
The present disclosure relates to training a classifier. The classifier includes a controller and an explicit memory. The training may include iteratively receiving one or more second training datasets, each comprising second data samples of a set of one or more associated novel classes, adding to the explicit memory one or more second output vectors indicative of the set of one or more associated novel classes, in response to providing the one or more second training datasets to the classifier, retraining the classifier using the one or more second training datasets and the first training dataset by minimizing a distance between the one or more second output vectors and the one or more prototype vectors, determining a set of updated prototype vectors indicative of first training dataset and the one or more second training datasets, and updating the explicit memory with the set of updated prototype vectors.


