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


前言

Meta learning元学习:学习如何学习


提示:以下是本篇文章正文内容,下面案例可供参考

一、Meta learning

学习这件事也是一个function,这个function的输入是一个dataset,输出是一个classifier,输入测试资料,希望获得正确的结果。这个function是人定的,能不能用机器学习学习这个function,机器学习中通过三个步骤找一个function,meta learning也是要找一个function,这个function是learning algorithm。
在这里插入图片描述

1.第一步

在这里插入图片描述
在ML中neural的weight和bias要学出来,在meta learning里面可能要学的是network的架构、初始化的参数、learning rate等。∅表示learning algorithm里面要学的未知参数。

2.第二步

第二步是要定loss function决定某一组参数有多好。在一般的ML中L来自于训练资料,在meta learning里面收集的是训练的任务。比如要训练一个二元的分类器,要准备很多二元分类的任务,每个任务里面都会有训练资料和测试资料。
在这里插入图片描述
把任务里面的训练资料拿出来给algorithm学,会学出一个classifier,把这个classifier跑在测试资料上,看看会得到什么样的结果。结果的好坏决定loss的高低。计算输出和正确的cross entropy,把cross entropy加起来,这个总和越小,表示这个learning algorithm越好。将多个任务让learning algorithm学,得到多个loss,将这些loss加起来获得它的平均值,就得到这个learning algorithm的total loss。
在这里插入图片描述
在meta learning里面是用测试资料进行计算loss,区别于一般机器学习在训练资料上计算loss,是因为Meta learning 的训练单位是任务。

3.第三步

在这里插入图片描述

第三步,找∅让L(∅)最小。有些可以直接用gradient descent,但有些问题不能用gradient descent比如∅是network架构之类的(离散的),可以用reinforce learning 训练下去。

在测试的任务里面的训练资料给训练完的learning algorithm里,学出一个classifier,把分类器用在测试任务的测试资料上。测试任务是真正关心的任务,希望在测试任务上得到好结果。
在这里插入图片描述

二、machine learning 和 meta learning区别

Machine learning目标是找一个function,得出分类的结果。Meta learning也要找一个function,这个function是要找Machine learning里面的function。

在这里插入图片描述
在Machine learning里面是要判断一个classifier的好坏,而meta learning是要测试一个learning algorithm的好坏。所以在meta learning里面的测试还包括了训练,是across-task testing。一整个within-task training和within-task testing叫做一个episode。
在这里插入图片描述
在loss上,machine learning来自于某一个任务的训练资料,在meta learning中使用所有任务算出来的。
在这里插入图片描述


总结

学习视频地址:https://www.bilibili.com/video/BV13Z4y1P7D7?p=37&vd_source=3a369b537e1d34ff9ba8f8ab23afedec

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值