以上是作者给出的原论文的验证的代码。这篇顶会论文在ICCV 2021上发表。原顶会论文可在知网等检索网站检索。论文的名字为Meta Learning on a Sequence of Imbalanced Domains with Difficulty Awareness可会意为“一类难以理解的不平衡域的元学习”也可理解为“具有困难意识的非平衡域序列的元学习”。这篇顶会文章的质量非常高,我也是花了一星期的时间进行深入理解。下面我们首先简单了解一下元学习的概念:
第深度学习真的是真正的人工智能吗?答案是否定的。我们人类是如何学习的呢?我们将学到的东西归纳为多个概念并从中学习。不过目前的学习算法只能处理一项任务。这就是元学习的用武之地。元学习能够生成一个通用的人工智能模型来学习执行各种任务,而无须从零开始训练它们。我们可以用很少的数据点来训练元学习模型去完成各种相关的任务,因此对于一个新任务,元学习模型可以利用之前从相关任务中获得的知识,无须从零开始训练。许多研究人员和科学家认为,元学习可以让我们更接近 AGI。因此元学习又被称为“学会学习”。对于元学习的算法,例如孪生网络(siamese network)、原型网络(prototypical network)、关系网络(relationnetwork)和记忆增强网络(memory-augmented network),并在 TensorFlow 与Keras中实现它们;了解先进的元学习算法,如模型无关元学习(model-agnostic meta learning,MAML)、Reptile 和元学习的上下文适应(context adaptation via meta learning,CAML);探索如何使用元随机梯度下降法(meta stochastic gradient descent,Meta-SGD)来快速学习,以及如何使用元学习来进行无监督学习不是本文的重点。本文主要阐述这篇顶会论文的思想与实现。
以下是论文的开头:
Recognizing new objects by learning from a few labeled examples in an evolving environment is crucial to obtain excellent generalization ability for real-world machine learning systems. A typical setting across current meta learning algorithms assumes a stationary task distribution during meta training. In this paper, we explore a more practical and challenging setting where task distribution changes over time with domain shift. Particularly, we consider realistic scenarios where task distribution is highly imbalanced with domain labels unavailable in nature. We propose a kernel-based method for domain change detection and a difficulty-aware memory management mechanism that jointly considers the imbalanced domain size and domain
importance to learn across domains continuously. Furthermore, we introduce an efficient adaptive task sampling method during meta training, which significantly reduces task gradient variance with theoretical guarantees. Finally, we propose a challenging benchmark with imbalanced do
main sequences and varied domain difficulty. We have performed extensive evaluations on the proposed benchmark, demonstrating the effectiveness of our method.
A series of mini-batch training tasks T1, T2, . . . , TN arrive sequentially, with possible domain shift occurring in the stream, i.e., the task stream can be segmented by continual latent domains, D1, D2, . . . , DL. Tt denotes the mini-batch of tasks arrived at time t. The domain identity associated with each task remains unavailable during both meta training and testing. Domain boundaries, i.e., indicatin