元学习和机器学习的对比

目录

  • 引言
  • 机器学习
  • 元学习
    • 什么是元学习
    • 元学习的流程
      • 学习学习函数
      • 评价学习函数好坏
      • 迭代优化
    • 整体框架
  • 元学习和机器学习的对比
    • 定义的区别
    • 数据集划分的区别
    • 损失函数的区别
    • 两者之间的共通之处
  • 总结

引言

本篇博客是李宏毅老师元学习课程的笔记。

元学习和机器学习的对比_第1张图片
深度学习大部分时间在调参数。在业界通常有很多计算资源供我们进行调参,在学界我们通常靠心灵感应来设置一组好的超参数。

机器学习

元学习和机器学习的对比_第2张图片
元学习和机器学习的对比_第3张图片
元学习和机器学习的对比_第4张图片

元学习

什么是元学习

元学习和机器学习的对比_第5张图片
Meta Learning被称作元学习,和机器学习一样遵循那三个步骤,不同于Machine Learning的目标是让机器能够学习,Meta Learning则是要让机器学会如何去学习

元学习的流程

学习学习函数

元学习和机器学习的对比_第6张图片
训练资料是多个训练任务数据和它们对应的学习
以梯度下降算法为优化算法的网络为例,它的流程可以简述为:设计一个网络架构->给参数初始化->读入训练数据批次->计算梯度->基于梯度更新参数->进入下一轮训练->……。对于每一个具体的任务来说,它的全部算法流程就构成了一个 F ϕ F_{\phi} Fϕ。其中 ϕ \phi ϕ就是我们要学习的可学习的参数(通常包括网络结构、初始参数、学习率…)。

评价学习函数好坏

元学习和机器学习的对比_第7张图片
元学习和机器学习的对比_第8张图片
元学习和机器学习的对比_第9张图片

元学习和机器学习的对比_第10张图片

元学习和机器学习的对比_第11张图片

  • 机器学习用训练资料计算损失函数
  • 元学习用训练任务的测试资料计算损失函数

迭代优化

元学习和机器学习的对比_第12张图片
当我们无法计算梯度的时候,我们可以采用强化学习和进化算法

整体框架

元学习和机器学习的对比_第13张图片
元学习和机器学习的对比_第14张图片
元训练:
分为内层和外层优化,外层用于学算法参数,内层用于学模型参数,内层是给出 w w w学出 θ ∗ \theta^* θ,把 θ ∗ \theta^* θ拿到查询集中,验证学的怎么样,如果不好,说明 w w w不好,通过loss去更新 w ∗ w^* w,不断迭代。
元测试:
已经学到最好的算法后,在测试集的支撑集上去学一个模型,最终, θ ∗ \theta^* θ就是测试模型。

元学习和机器学习的对比

定义的区别

元学习和机器学习的对比_第15张图片

  • 机器学习的定义表述为:根据资料找一个函数 f f f的能力
  • Meta Learning的定义表述为:根据资料找一个找一个函数 f f f的函数 F F F 的能力

数据集划分的区别

元学习和机器学习的对比_第16张图片

  • 机器学习:训练资料用于一个任务
  • 元学习:训练资料被分为多个训练任务,每个训练任务包含一个支持集和一个查询集

元学习和机器学习的对比_第17张图片

元学习和机器学习的对比_第18张图片

损失函数的区别

元学习和机器学习的对比_第19张图片
元学习和机器学习的对比_第20张图片

两者之间的共通之处

元学习和机器学习的对比_第21张图片

  • 训练任务上的过拟合(训练集上的过拟合)
  • 更多的训练任务可以改善性能(更多的训练数据可以改善性能)
  • 任务增强(数据增强)
  • 学习学习算法时也会有超参数(学习算法时有超参数)
  • 验证任务(验证集)

总结

本篇博客主要介绍了元学习的基本概念、元学习的建模流程以及元学习和机器学习的对比。
元学习将数据以任务的形式进行划分,将数据集分为很多个任务。而这些任务在类别上又可以分为训练任务测试任务。每个任务自身可以分为支持集查询集
元学习不是学习一个函数,而是学习一个学习函数。
以分类任务为例:通过训练任务中的支持集进行训练得到一个学习函数,通过学习得到一个分类器,通过训练任务的查询集进行测试,计算预测值和标签的损失函数,以最小化目标函数进行优化,训练得到学习函数。测试任务的支持集用来根据学习函数训练分类器,测试任务的支持集用来进行测试。

你可能感兴趣的:(深度学习,人工智能)