机器学习李宏毅学习笔记31


前言

Life long learning(一)


一、Life long learning

Life long learning在机器学习中直观的印象是机器不断学会新的技能。在实际中也会有用到这个想法的,根据数据训练的模型,上线后获得新的feedback,用feedback不断更新模型,这本质上就是一个life long learning问题。
在这里插入图片描述
比如同一个任务,不过是两个domain。机器可以同时将两个domain当成训练集训练,但是如果先学其中一个,然后再学第二个,这个情况下正确率就会下降。机器有能力同时学多个任务,但是当机器依序学的时候,一学新的任务,旧的就会忘掉,这个情况就是Catastrophic forgetting(灾难性的遗忘)。

二、为什么要用life long learning

Multi-task training可以同时学多个任务,为什么要用life long learning。一个情况是,要让机器学第1000个任务,为了让机器避免遗忘前面的任务,就需要把前面999个任务的资料拿出来,把这1000个资料放在一起,机器才能学会。但在实做上,就表明机器需要把学过的所有资料统统存下来,机器可能没有那么大的存储空间,同时学习时间会很长。
在这里插入图片描述

为什么不每一个模型就学一个任务。虽然这样可以避免catastrophic forgetting的问题,但是遇到的第一个问题是,如果要让机器学很多的技能,可能没办法把所有模型都存下来。第二个问题是,不同任务不同模型的话,不同模型间就不能互通有无。

Life long learning vs transfer learning
Transfer learning希望在任务1上学到的可以应用在任务2上。虽然两个都是让机器学多个任务,但是关注点是不同的。Transfer learning只在意在第二个任务上学的好不好,而Life long learning在意的是学完第二个任务还能不能解第一个任务。一个在意新的,一个在意旧的。

三、评估life long learning

评估Life long learning做的好不好
在这里插入图片描述
比如有T个任务,随机初始化参数,将随机的用在T个任务上,计算这T个任务的正确率。学完第一个任务后,在所有任务上计算正确率,同理,直到学完第T个任务,计算所有任务上的正确率。Rij,i表示训练完第i个任务,j表示在第j个任务上正确率。i>j时看任务j是否被遗忘。i<j看是否机器能无师自通。最常见的评估方法就是把最后一行task T的值都加起来取平均值。
在这里插入图片描述
另一种评估方法是
在这里插入图片描述
这种情况算下来一般是负的,如果是正的,表示这个life long learning是比较好的。

还有一种方法是
在这里插入图片描述


总结

学习视频地址:https://www.bilibili.com/video/BV13Z4y1P7D7/?p=33&spm_id_from=333.1007.top_right_bar_window_history.content.click&vd_source=3a369b537e1d34ff9ba8f8ab23afedec

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值