【小样本基础】「Meta Learning」 VS 「Machine Learning」比较元学习与传统机器学习的异同

之前博主有写过几篇关于meta learning的文章:
1️⃣ 【小样本基础】元学习(Meta Learning)为什么能解决小样本问题(Few-shot Learning):一个例子搞懂
2️⃣ 【小样本基础】N-way K-shot 模式和训练策略
今天学习了李宏毅的课程,通过将 meta learning 与 machine learning 进行对比,有了更深的理解,用这篇博客做一个记录。

1. Machine Learning

Machine Learning 就是要找一个function,它有三个步骤:

  1. 定义一个有未知参数的function:也就是一个神经网络,其中神经元的权值和偏差是未知参数(可学习)。
  2. 定义一个损失函数:描述预测值与标签值之间的偏差。
  3. 优化:找到使得损失函数最小的参数。

2. Meta Learning

  • learning这件事情其本身也是一个function,一个Machine Learing的 algorithm 其实就是一个Function,这个Function的输入是dataset,输出是训练完的classifier,这个classifier就是最终拿来分类的network,输入是测试资料,输出是预测结果。
  • 这里的Function是人为设定的,比如图片分类可以人为设置为CNN,有序列信息的分类可以人为设置为RNN等,classifier是从数据中学习到的。
  • 那我们能不能直接学习这个Function(Learning Algorithm)呢?也就是能不能做到“学习如何学习”这件事情呢?这就是元学习的思想。
  • 所以元学习也是要找一个function,但是它与machine learning要找的function不一样,它是要找Learning Algorithm,它也是通过三个步骤来找这个Learning Algorithm。

step 1:what is learnable in a learning algorithm

  • 在元学习中有什么东西是想要机器自己决定的,那这些东西解释Learnable的。
  • 比如说,可以考虑自动学出网络的结构,初始化参数,以及学习率等等。
  • 所有的这些想要被学习到的东西统称为【小样本基础】「Meta Learning」 VS 「Machine Learning」比较元学习与传统机器学习的异同【小样本基础】「Meta Learning」 VS 「Machine Learning」比较元学习与传统机器学习的异同代表具有未知参数【小样本基础】「Meta Learning」 VS 「Machine Learning」比较元学习与传统机器学习的异同的Learning Algorithm。
  • 不同的meta learning的主要差异在于这些learnable component不一样。

step 2 Define loss function for learning algorithm

  • 元学习中的loss是所有任务的loss总和,每个任务都有自己的测试资料和训练资料。

step 3:Minimize Loss

  • 第三步是要找到【小样本基础】「Meta Learning」 VS 「Machine Learning」比较元学习与传统机器学习的异同使得第二步定义的loss越小越好。可以用梯度下降也可以直接硬train下去。

Mate Learning Framework

  • 根据训练资料,以及上文提到的三个步骤,学习到一个Learning Algorithm F。
  • 将测试任务中的训练资料输入F,使其学习到一个 分类器f。
  • 将测试任务中的测试资料输入f,就可以得到一个而预测结果。
  • 测试任务才是我们的目标处理任务,而目标任务是一些与测试任务无关的其他任务,他们只是为了找到一个比较好的Learning Algorithm F。
  • 这样的框架有点在于,训练任务中只需少量的样本(Few-shot),小样本是目标,元学习只是一种手段。

3. Machine Learning VS Meta Learning 💖💖

1. Goal

  • Machine Learning : find a function f
  • Meta Learning : find a function F that finds a function f

2. Training Data

  • Machine Learning : 目标分类任务的训练资料
  • Meta Learning : 多个训练任务,每个训练任务中都有训练资料(support set)和测试资料(query set)。
  • 因此普通的机器学习是within-task training,而元学习是across-task training

3. Framework

  • 上图可以看出来,meta learning 里面既有within-task training 也有 within-task testing

4. Loss

  • machine learning是根据训练资料来计算损失的
  • 而mata learning是根据训练任务中的测试资料来计算损失的。

The same point

  • 一些在machine learning上需要思考的问题,同样在meta learning中也存在。

参考:李宏毅 2021 机器学习 第15课
https://www.bilibili.com/video/BV1KF41167VZ?spm_id_from=333.337.search-card.all.click

文章出处登录后可见!

已经登录?立即刷新

共计人评分,平均

到目前为止还没有投票!成为第一位评论此文章。

(0)
乘风的头像乘风管理团队
上一篇 2022年5月12日
下一篇 2022年5月12日

相关推荐