Life-long learning 终身学习李宏毅课堂笔记

核心思想:模拟人类大脑,只需要用一个模型就可以学会很多个任务,从而可以解决所有学会的任务。但是目前大部分模型都是针对特定任务单独学习训练的。

一、challenge:

1.knowledge retention but not intransigence

    1.如果顺序的把不同任务的数据集喂到同一个网络,会导致先之前的任务会有灾难性的遗忘。

    2.如果把所有任务的数据集合到一起,统一学习。开销大,不值得。

    3.* Elastic Weight Consolidation (EWC)解决遗忘问题

    

          

    其中:第二项看看成是正则项。bi是 “守卫参数”,如果bi=0,就不会考虑θi之前的参数,如果bi等于无穷,就会严重堪虑θi

    bi可以取二阶导数,如果二阶导数为0,相对平缓,在这个方向上可以移动,但是如果导数巨大,则这个地方就不能动

 

 

   

    4.另外一个方向:multi-task learning 效果好,所以可以采用把所有任务数据都集中在一起来train模型,但是存储数据占据大量空间。为了解决这个问题,会train一个generator去生成各种task的任务。存储数据占空间,但是存储生成数据的模型是可行的。

 

 

    5.Grandient Episodic Memory(GEM)解决以往问题

    这个算法需要预存一些提前的时刻的梯度,在生成的新的梯度的时候对他们进行考量,遵循如下两个条件:

    1.条件一:g’和g1、g2的内积大于零

    2.条件二:g‘和g尽可能的接近

 

2.knowledge transfer

    核心:学每个任务的同时可以提升解决其他任务的效果。

    和transfer learning的区别:迁移学习是 学完task1可以使得task2效果更好,但是LLL是学完task2后还要让task1做的更好

 

3.model expansion

    模型学习一定任务之后无法再学新的任务了,需要对模型进行扩张。要保证扩展速度小于新任务进来的速度,否则模型太大存不下来。

    progressive neural networks

    

    学习新的任务的时候之前学习的每个任务每层的output会接入当前任务。绿线、红线体现了knowledge transfer 。

    缺点:不能学习太多任务,后面的任务接受的参数会越来越多

 

    expert gate

    当有新的任务的时候,考虑当前任务和之前那个任务的模型最像(GATE),就用之前模型的参数作为初始化。

    缺点:同样模型扩张的速度=新任务来的速度

    

 

    Net2Net

    按照如下模型进行搭建,左边和右边是一样的。对h[2]和h[3]加一些noises,可以做到大体相同但是也可以分开训练。

    在实际新任务来的时候,只有当训练的准确率不够好的时候才会将模型增宽,保证了模型扩张速度小于任务来的速度。

    

二.evaluation

三、新任务学习的顺序

模型效果会和任务学习的排序有非常大的关系

Curriculum learning

CVPR - taskonomy=task+taxonomy

 

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值