机器学习笔记14_Life long learning& meta learning

本文是李宏毅机器学习的笔记,这是第十四节,介绍了终身学习和元学习。

1. Life Long Learning

Life Long Learning就是让机器可以持续学习,能处理各种各样的任务。
也就是模型通过不断看新的资料,得到反馈,然后更新自身,变得更厉害,能处理更多事情。

但是我们发现,机器学完一个任务之后,再去学另一个任务,那第一任务就会被遗忘,而且这与模型自身的能力无关,因为当两种训练数据同时训练时,模型在两种任务上的表现都是好的。

在下面的例子中,模型连续训练20个任务,和模型同时训练20个任务的结果,第一图发现,模型训练到任务5时,准确率很高,在学习其它任务后,就降下去了,右图则表示这个模型有能力训练这20个任务。

Catastrophic Forgetting

我们将上面的情况成为灾难性遗忘
为什么我们不将所有的训练资料同时训练,达到让模型具有多种能力,这种训练方式叫做Multi-task训练,这会有一个问题,机器需要存储所有的训练资料,并且在学新知识时需要计算所有的训练资料。有论文提出,Multi-task的结果可以作为life-long learning的上界。

每个任务训练一个模型,同样也会有一些问题。

Life-Long Learning和Transfer Learning的区别如下,最主要的区别在于学会新任务后,会不会忘记之前学过的任务。

下面是验证Life-Long Learning的一些方法,第一行是随机初始化后的测试,然后模型依次训练Task 1-T,每次训练后,再在Task 1-T做测试。一种评价指标是Accuracy,就是训练完最后一个任务后,在所有任务做测试得到的平均分。 Backward Transfer是,训练过任务i之后,最后一个任务训完之后,任务i的测试得分和训练任务i的得分差,然后再求和取平均,一般这个值都是负的,因为会有遗忘。Forward Transfer,前i-1个任务训练之后的模型在任务i的测试得分与随机初始化的得分的差,然后求和取平均,它反映了任务i是否收到前i-1个任务的影响,导致有所提升。

解决灾难性遗忘的研究方向有三个

为什么会发生遗忘,是因为学会新任务得到的参数在过去的任务上,可能会表现的不好,一种解决方式,控制参数更新,让参数在所有任务上表现都好。

下面介绍第一个研究方向,Selective Synaptic Plasticity
下图是模型更新的损失函数,同过 b i b_i

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值