【机器学习】LifeLong Learning(终身学习)介绍

下面的文章转自(已获作者允许):
2020机器学习前沿技术----LifeLong learning - stephon的文章 - 知乎
文章介绍了关于机器学习比较前沿的一项技术,也就是LifeLong Learning。这篇文章也对LifeLong Learning与Multi-task Learning以及Transfer Learning进行了对比,所以我将其进行了转载,其中对其排版进行了一定修改。

文章目录

        • 1. 为什么需要研究Lifelong learning?
        • 2. 有哪些别称?
        • 3. 有哪些处理方法及研究成果
          • a) EWC: Elastic Weight Consolidation
          • b) Multi-task learning with some modify
          • c) Model Expansion(but parameter efficiency)
        • 4. Multi-task learning, Transfer Learning , LifeLong learning之间的区别
        • 5. 如何评价Life-long Learning的好坏
        • 6. 这个领域还有哪些前沿的研究方向

1. 为什么需要研究Lifelong learning?

细数机器学习处理的问题,概括得讲,可以分为如下几大类:

  • 计算机视觉(CV): object classification, object detection, object segmentation, style transfer, denoising, image generation, image caption
  • 语音(Speech) : speech recogniton, speech synthesis
  • 自然语言处理(NLP): Machine translation, text classfication, emotional recogniton
  • 推荐系统: Recommendation, CRT

目前针对各个大类的不同子类问题, 都会去设计不同的网络结构,设计不同的loss, 采用不同的数据集去处理。 这使得机器学习“偏科严重”,比如前几年很火的AlphaGo, 虽然他是一个“围棋天才”,但是一旦让他去下象棋, 他就歇菜了。换句话说, 目前的人工智能,只能处理给定的任务,换一个任务就无能为力了,这距离我们所想达到的通用智能实在相差甚远。

反观人脑,在人不断成长的过程中,他可以学习各种各样的技能。不仅会下棋,还会踢球,还会辩论等等,而人的大脑只有一个(相当于自始至终只有一个网络)。 虽然随着时间的流逝,以前学习的东西会渐渐淡忘,但这丝毫不影响人脑在不断学习,胜任一个又一个任务中所表现出来的强大。

因此,我们是否可以只用一个网络结构(注意,这里的网络结构并非是固定的。也许随着任务的需要,得自行扩展网络),在不同的任务上分别训练,使得该网络能够胜任所有的任务呢。 这就是Life-long learning 所要研究的课题。

2. 有哪些别称?

  • Continuous Learning

  • Never ending Learning

  • Incremental Learning

【机器学习】LifeLong Learning(终身学习)介绍_第1张图片

3. 有哪些处理方法及研究成果

Knowledge Retention(but Not Intransigence) and Knowledge Transfer 知识保留(但不妥协)及知识迁移。 这意味着以前学到的知识,需要能够促进下一个任务Task B的学习; 学完Task B之后,要不仅可以很好得处理Task B, 同时在Task A 上不能有明显的下降, 最好Task A的性能,也能够有所提升或者是保持。

一个遗忘的例子:
【机器学习】LifeLong Learning(终身学习)介绍_第2张图片How to solve Catastrophic Forgetting Little forgetting是允许的。

一些理论成果:

a) EWC: Elastic Weight Consolidation

【机器学习】LifeLong Learning(终身学习)介绍_第3张图片【机器学习】LifeLong Learning(终身学习)介绍_第4张图片

b) Multi-task learning with some modify

刚才提到的问题,如果采用Multi-task learning:
【机器学习】LifeLong Learning(终身学习)介绍_第5张图片可以看到: 如果先学习Task1, 再学习Task2; 那么当Task 2学完之后, Task 1的准确率就下降了很多, 这就是Forget!!! 这就是Transfer Learning所带来的问题, 也是Lifelong Learning 所需要解决的问题。

如果采用Multi-task Learning,需要把Task 1 和 Task2的训练数据都存储起来,需要的时候放在一起训练。 虽然可以看到Task 1和 Task 2都达到了不错的效果, 但是所有数据的存储会是一个很大的问题。

因此, 如何解决数据存储的问题呢?
【机器学习】LifeLong Learning(终身学习)介绍_第6张图片借助于GAN网络来完成, 减少了数据存储,但带来了更大的计算量。

c) Model Expansion(but parameter efficiency)

Progressive Neural Network
【机器学习】LifeLong Learning(终身学习)介绍_第7张图片
Net2Net
【机器学习】LifeLong Learning(终身学习)介绍_第8张图片

4. Multi-task learning, Transfer Learning , LifeLong learning之间的区别

Transfer Learning VS LifeLong Learning: Transfer learning只考虑在当前任务上的效果; 而LifeLong Learning需要考虑在所有任务上的效果。
【机器学习】LifeLong Learning(终身学习)介绍_第9张图片Multi-task Learning VS LifeLong Learning : LifeLong Learning训练时只用当前任务的数据; 而Multi-task Learning会用到之前所有任务的数据。这带来了数据存储以及计算量不断增大的问题; Multi-task learning可以看作是LifeLong learning的upper bound

【机器学习】LifeLong Learning(终身学习)介绍_第10张图片

5. 如何评价Life-long Learning的好坏

3个指标:

  • Accuracy 表征N个任务学完后总体的性能;
  • Backward Transfer: 表征N个任务学完后,总体遗忘的程度;通常为负数,越大越好;
  • Forward Transfer: 表征N个任务学完后,总体学习的程度;通常为正数,越大越好;

【机器学习】LifeLong Learning(终身学习)介绍_第11张图片R(0, i) 表示在随机初始化的情况下,在Task i上的准确率。

【机器学习】LifeLong Learning(终身学习)介绍_第12张图片

6. 这个领域还有哪些前沿的研究方向

Curriculum Learning 类似于一个课程系的学习, 研究的是如何安排课程学习的先后顺序。

【机器学习】LifeLong Learning(终身学习)介绍_第13张图片

Taskonomy 研究的是各个任务之间的关系, 即该先学哪个,后学哪个。
【机器学习】LifeLong Learning(终身学习)介绍_第14张图片

你可能感兴趣的:(machine,learning,机器学习,数据挖掘,深度学习)