持续学习+元学习+无监督学习文章调研(二)

编程入门 行业动态 更新时间:2024-10-24 04:51:54

持续学习+元学习+无监督学习<a href=https://www.elefans.com/category/jswz/34/1771176.html style=文章调研(二)"/>

持续学习+元学习+无监督学习文章调研(二)

持续学习+元学习文章调研(二)

  • 文章
    • A CLOSER LOOK AT FEW-SHOT CLASSIFICATION. ICLR 2019
      • 基线模型(Baseline和Baseline++)
      • 网络深度的影响
      • Domain Differences的影响
      • 讨论&思考:预训练与元学习
    • Triple Memory Networks: a Brain-Inspired Method for Continual Learning
      • 模型结构:模拟三个大脑功能区
    • ORDisCo: Effective and Efficient Usage of Incremental Unlabeled Data for Semi-supervised Continual Learning, CVPR2021
      • 半监督方法的灾难性遗忘问题
      • online半监督GAN
      • 持续学习无标签数据的两个方法
      • 结果展示

继续进行相关文章的调研。

文章

A CLOSER LOOK AT FEW-SHOT CLASSIFICATION. ICLR 2019

本文针对小样本学习进行了回顾和整理,对许多方法(包括元学习、metric learning等)进行了系统的验证,本文提到了两个问题:

  1. 不同方法的实现细节差异影响了比较。
  2. 验证任务和训练任务往往来自于同一类数据集,缺少跨域实验。
    本文的工作总体分为以下几点:
  3. 在更深的模型下,不同方法间的区别显著减小。浅层模型的情况下减小样本内差异对提升效果很有帮助。
  4. 改进的baseline模型在mini-Imagenet和CUB数据集上能够competitive的效果。
  5. 验证了不同小样本学习方法在跨域适应中的作用。发现baseline方法就有competitive的结果。

基线模型(Baseline和Baseline++)

基线模型Baseline就是直接在预训练样本上训练softmax分类器,在小样本阶段固定特征,(重新)训练一个新的分类器。而Baseline++抛弃了线性分类器,转而使用权重矩阵 W = [ w 1 , . . . , w c ] \textbf{W}=[\textbf{w}_1,...,\textbf{w}_c] W=[w1​,...,wc​]来进行c分类(这一组vector也可以成为prototype),对于提取出来的特征,和这里的每一个做余弦相似度比较,并通过softmax进行归一化。这样的方式相比于直接训练分类器,同时也优化类内的方差。(该方法来自参考Dynamic few-shot visual learning without forgetting,CVPR2018Low-shot learning with imprinted weights,CVPR2018)。验证结果在600次实验中取平均,每次实验都是一次N-way K-shoot实验,最后的结果发现,基线模型就能够取得很好的结果,尤其是加入数据增强,以及Baseline++显式缩小了类内差别的情况下。

网络深度的影响

随着网络深度的增加(文中说类内的变化将会随之减少,但是我不知道为什么,后续在附录中有实际对比,见讨论),在CUB数据集上,不同方法之间的差距慢慢减小,而在mini-ImageNet中变化更加复杂,一些方法的效果出现了下降,作者认为这是由于mini-Imagenet中meta测试集的类和训练过程中类的差距更大导致的。在后一节做了验证。

Domain Differences的影响

随着差距的增大,依赖元学习的方法效果受到影响,因为他们学习的所有support set都来自于同样的domain,而Baseline模型重新训练整个分类器,受到的影响更小。同时Baseline++模型的表现低于Baseline,这可能说明塔牺牲了适应性。总体而言正如文中所说“That is, as the domain difference
grows larger, the adaptation based on a few novel class instances becomes more important.”,meta-testing中的新类更加重要。后续章节中证明,更多的训练或重新训练分类器,也提升了其它方法的准确率。

讨论&思考:预训练与元学习

在附录中,作者在omniglot数据集和emnist数据集上做了类似的类迁移实验,但是发现元学习方式超过了Baseline,作者认为这是因为缺少数据增强导致Baseline模型在训练的class上过拟合。
另外在类内差别(intra-class variation)和深度的关系上,为了具体度量,作者使用了Davies-Bouldin index来衡量类内差别。

最后说一下我的思考,Baseline模型其实就相当于是一个预训练模型了,这和GPT-3中提到的Pretrained Models are Few Shoot Learner倒是可以呼应,而且GPT3也确实可以看作是深度的大幅度增加和训练量的大幅度增加。本文没有讨论训练量的事情,个人觉得在低训练量的情况下,元学习方法或许也是能够有更好效果的,所以可能可以说更加复杂和精巧设计的方法适合简单样本不充足的(元)训练数据的情况,而在数据量(相对)丰富的情况下,相对简单的方法可能更加可以避免过拟合,保证泛用性。

Triple Memory Networks: a Brain-Inspired Method for Continual Learning

本文基于类脑研究,针对传统的基于generative replay方法进行持续学习的方法做了改进,提出了三记忆网络(Triple Memory Networks,TMN),用于模拟和大脑记忆相关的海马体(Hippocampus),前额叶(Prefrontal Cortex,PFC)和感觉皮层(Sensory Cortex)的交互。
作者认为传统的generative replay方法存在两个问题:

  1. 生成器也存在遗忘问题。作者使用真实数据和生成的数据进行训练,比较网络的Fisher information matrix(FIM)证明了这一点。
  2. 传统的生成器+判别器用于生成回放数据的结构中,将分类器和判别器混合在一起,混淆了他们的功能,造成了彼此干扰。作者通过将判别器和额外的生成器彼此FIM的overlap的计算证明这一点。

模型结构:模拟三个大脑功能区

对此,作者提出了生成器G,判别器D和分类器C的三重记忆网络,其中G模拟海马体的回放功能,可扩展并通过任务的mask来实现隔离;判别器D辅助C进行学习,因此也加入额外的辅助分类器用于获取 p ( y ∣ x ) p(y|x) p(y∣x)的信息;在D和C的训练过程中,都使用FIM进行了权重保护(类似EWC的操作)。

文章的主要特点是对于人类记忆系统的分析和模拟,也取得了很好的效果。

ORDisCo: Effective and Efficient Usage of Incremental Unlabeled Data for Semi-supervised Continual Learning, CVPR2021

监督任务的持续学习已经收到了许多关注,但是现实生活中的任务常常并不能获得足够的标签数据,而半监督场景下的持续学习研究还缺乏足够的研究。作者通过实验,发现半监督场景下简单的半监督方法就能够超过持续学习方法。

半监督方法的灾难性遗忘问题

作者测试了四种强大的半监督学习方法,MT,VAT,PL和PI,发现在顺序训练的情况下都存在着严重的灾难性遗忘问题,同时传统的持续学习方法起到的作用相对有限。图为四种方法的平均结果,JT代表一起训练(非持续学习),ST代表顺序训练,SMB和UMB代表对训练过的有标签和无标签数据从Memory Buffer中进行replay。sl和ul代表持续学习方法(EWC,MAS,SI)应用在监督损失还是无监督损失上。

作者分析发现除replay之外的持续学习方法可能会影响对于新类的学习。而replay方法仍然有提升空间,通过可视化数据可以发现,这是因为数据量过少导致对于无标签数据的分布没有很好捕捉到,无监督数据的分布需要更加有效的捕捉。作者将这个问题定义为无标签数据的灾难性遗忘(catastrophic forgetting of unlabeled data)

online半监督GAN

为了能够对无标签的数据进行学习,本文提出了一个包括生成器G,判别器D和分类词C的三网络结构。使用半监督方式训练(包括监督损失和无监督损失,同时对有标签数据有buffer存储进行回放)的分类器,为无标签数据生成伪标签。

这个为标签用于为判别器在常规的conditional GAN损失外增加对于伪数据-标签对判定的损失(下式最后一项)。

持续学习无标签数据的两个方法

对于无标签数据的生成,传统方法对于每一个任务都训练和保存一个生成器,或者是在online训练生成器的过程中不断用以前生成的数据来混入平衡新的数据。作者提出的方式将平衡新数据的工作交给分类器(增加对于生成数据的学习判定),可以大大减少训练生成器的时间和空间成本。


另外,还通过类似Fishr信息的正则项,乘法判别器D中改变分类器分类结果变化,从而稳定判别器的更新。

结果展示

作者在SVHN和CIFAR10上的结果,优于之前的方法。UC表示使用了一种无监督方式平衡UMB中存储的数据和大量其他数据的矛盾。

更多推荐

持续学习+元学习+无监督学习文章调研(二)

本文发布于:2024-03-04 02:10:56,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1707983.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:文章

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!