文章目录

  • What is Meta-learning doing?
  • What is Meta?
  • Motivation of Meta-learning
  • Comparison between Machine learning and Meta-learning
  • How to realize Meta-learning?
  • Reference

What is Meta-learning doing?

元学习Meta Learning,含义为学会学习,即learn to learn,带着对人类的“学习能力”的期望诞生的。Meta Learning希望使得模型获取一种 “学会学习” 的能力,使其可以在获取已有“知识”的基础上快速学习新的任务。

在了解什么是Meta Learning之前还是要了解一下什么是Meta。


What is Meta?

meta就是描述数据的数据。

比如照片,我们看到的是它呈现出来的数据, 即Data,但它还含有许多描述它拍摄参数的数据,比如光圈、快门速度、相机品牌等,即Meta。

对于一片博客而言,博客内容就是Data,博客的网址,标题,作者信息等就是Meta。


Motivation of Meta-learning

传统的机器学习方法是针对一个特定的,一般是有大量数据的数据集 ,试图学习出一个预测模型 ,使得模型对于测试集上的数据的预测有最小的误差。这个思路在数据集 D 有大量可得数据的情况下是行得通的。然而事实上在很多情况下,有的数据集数据量非常少,我们很难在上面直接训练出来一个有用的机器学习模型。那么这个问题如何解决呢?

也就是说,机器学习模型一般要求训练集样本量足够大,才能取得不错的预测效果。但对于人来说却不需要,对于一个从没有见过小猫和小狗的小朋友来说,给他几张照片他就能轻松的学会如何分辨两只动物。如果一个人已经掌握了如何骑自信车,那么学习如何骑摩托车对他来说会非常轻松。我们能否设计一个模型,让模型仅从一点点训练样本就能学会新的“知识”呢?即让模型“自己学会去学习”。

展开解释:从人类学习分类物体的过程来看,人类认识新的物体并不需要很多的样本作为支撑,这从某些角度说明人类在学习一个新任务的时候,比机器学习模型拥有更多的先验知识。比如说,我小的时候知道了书本是方的,杯子是圆的,那么我不光知道了如何分类书本和杯子,我还同时建立了这么一个概念:“形状不同的物体很可能不是同一类物体”。同理我有很多其它的知识,比如”颜色不同,物体不同“,”查克拉不同,物体不同“。这些知识归结起来,可以认为是规定了我 “如何去学习一个新知识” 的方法。所以很多年以后我再看到鼠标和键盘的时候,我不需要见识特别多的键盘和鼠标,只要根据以往的经验,看看颜色,看看形状,识别一下查克拉,我发现根据形状能很轻易地判断鼠标和键盘,于是我就很快知道了该如何区分这两者。所以有的人就这么想:虽然我要做的这个数据集数据很少,但是我有很多其它数据很多的数据集呀。如果模型可以先在其它数据比较多的数据集上学到这些有关“该如何学习新的知识”的先验知识,由此让模型先学会“如何快速学习一个新的知识”,岂不美哉?到这里差不多就是meta-learning的motivation了。

举个简单的例子,一个小朋友去动物园,里面有些动物他没有见过所以不知道叫什么名字,然后你给他一些小卡片,卡片上有各个动物的照片和名称,小朋友就可以自己学习,从这些卡片中找出这些动物的名字。这里的未知动物叫做query,小卡片叫做support set。培养小朋友从小卡片中自主学习就叫做meta learning。如果一个类别的小卡片只有一张,那么就叫做one-shot learning。


Comparison between Machine learning and Meta-learning

  • 机器学习:通过训练数据,在输入 X 与输出 Y 之间找到映射函数 f 。

  • 通过很多训练任务 T 及对应的训练数据 D ,找到函数F。F可以输出一个函数 f ,f 可用于新的任务。
    也就是说,函数 F 可以找到新任务所适合的映射函数 f 。而原学习的任务就是找到这个会学习的函数 F 。

    在机器学习中,训练单位是一条数据,通过数据来对模型进行优化;数据可以分为训练集、测试集和验证集。
    在元学习中,训练单位分层级了,第一层训练单位是任务,也就是说,元学习中要准备许多任务来进行学习,第二层训练单位才是每个任务对应的数据。

    也就是说,Meta learning是一种学习其它机器学习任务输出的机器学习算法。

    Machine learning algorithm从历史数据中学习知识,然后泛化到新的数据样本中。

    而meta learning是从其它学习算法(learning algorithm)的输出中学习,这就要求其它学习算法被预训练过。即meta learning算法将其它机器学习算法的输出作为输入,然后进行回归和分类预测。

    Meta Learning Algorithm: Learn from the output of learning algorithms and make a prediction given predictions made by other models.

    如果说machine learning是如果使用信息做出更好的预测,那么meta learning就是利用machine learning的预测作出最好的预测。


How to realize Meta-learning?

首先我们先来明确一下meta-learning的目标:从多个给定的数据丰富的数据集捕捉跨数据集的总体信息(颜色,形状和查克拉很重要),从而当我们有一个新的数据较少的数据集时,可以根据其特征( 比如根据数据集的特征来看,可能得出内的分类和形状比较相关)。来利用这些从其它数据集学到的先验知识来做出判断。

然后根据解决方案的建模方法不同,meta-learning可以分为两种思路:


Reference

  1. 一文入门元学习(Meta-Learning)(附代码)
  2. 知乎:作者SleepyBag
  3. 一位学有余力的同学:什么是Few-shot Learning

【机器学习】Meta-Learning(元学习)相关推荐

  1. 机器学习15 -- Meta Learning 元学习

    1 什么是meta learning 一般的机器学习任务是,通过训练数据得到一个模型,然后在测试数据上进行验证.一般来说我们仅关注模型在该任务上的表现.而meta learning则探讨解决另一个问题 ...

  2. 理解Meta Learning 元学习,这篇文章就够了!

    点击上方"小白学视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达 AI编辑:我是小将 本文作者:谢杨易 1 什么是meta lear ...

  3. Meta Learning(元学习)详解

    元学习 概述 基本概念 基本分类 基本流程 模型结构 概述 元学习(Meta Learing)的提出是针对传统神经网络 模型的泛化性能不足.对信种类任务适应性较差的特点.主要表现为通过少量的计算和新训 ...

  4. Meta Learning 元学习

    来源:火炉课堂 | 元学习(meta-learning)到底是什么鬼?bilibili 文章目录 1. 元学习概述 Meta 的含义 从 Machine Learning 到 Meta-Learnin ...

  5. 8.7 Meta learning元学习全面理解、MAML、Reptile

    文章目录 1.介绍 为什么需要元学习? few-shot learning reinforcement learning 2.概念 3. Meta learning 三个步骤 定义一组learning ...

  6. 机器学习(Machine Learning)深度学习(Deep Learning)资料汇总

    本文来源:https://github.com/ty4z2008/Qix/blob/master/dl.md 机器学习(Machine Learning)&深度学习(Deep Learning ...

  7. 机器学习(Machine Learning)深度学习(Deep Learning)资料【转】

    转自:机器学习(Machine Learning)&深度学习(Deep Learning)资料 <Brief History of Machine Learning> 介绍:这是一 ...

  8. 机器学习(Machine Learning)深度学习(Deep Learning)资料集合

    机器学习(Machine Learning)&深度学习(Deep Learning)资料 原文链接:https://github.com/ty4z2008/Qix/blob/master/dl ...

  9. (转)机器学习(Machine Learning)深度学习(Deep Learning)资料

    原文链接:https://github.com/ty4z2008/Qix/blob/master/dl.md 机器学习(Machine Learning)&深度学习(Deep Learning ...

  10. 机器学习(Machine Learning)深度学习(Deep Learning)资料(Chapter 2)

    机器学习(Machine Learning)&深度学习(Deep Learning)资料(Chapter 2) - tony的专栏 - 博客频道 - CSDN.NET 注:机器学习资料篇目一共 ...

最新文章

  1. Oracle 11g新特性之--虚拟列(Virtual Column)
  2. VMRC控制台的连接已断开..正在尝试重新连接
  3. mysql 定时计划_MYSQL定时任务
  4. JStorm与Storm源码分析(一)--nimbus-data
  5. 如何用智能有效感知城市?城市大脑三大AI产品来了
  6. 阿里巴巴对Java编程【代码格式】的规约
  7. 高性能MySQL之Count统计查询
  8. php实现文本替换,php 如何实现文字替换
  9. nginx搭建tomcat集群
  10. 数学与泛型编程:高效编程的奥秘pdf_Java 泛型与类型擦除
  11. java static 对象加锁_java安全编码指南之:lock和同步的正确使用
  12. 谷粒商城-10-p193-p247
  13. lora与NB-IoT无线通讯技术在消防产品上的应用-lora烟感/NB烟感
  14. python 驱动工控机板卡,研华工控机主板驱动下载
  15. 如何制定一个“更好”的点阵字库格式
  16. 使用java + selenium + OpenCV破解腾讯防水墙滑动验证码
  17. outlook自定义快捷键_如何在Outlook中自定义待办事项窗格
  18. 微信小程序返回上一页 没有上一页的情况下返回首页
  19. 文件上传黑名单和白名单校验
  20. EtcGame华丽升级为Coingame 新增ETH投注!

热门文章

  1. 计算机主机红灯不闪硬盘工作,电脑硬盘指示灯不亮怎么办?如何解决电脑硬盘灯不亮问题...
  2. Bash One-Liners Explained 译文(三)(转载自团子的小窝)
  3. 李涛PS高手之路-图片云
  4. 数项级数——(三)一般项级数
  5. web前端工程师怎么写月报_Web开发人员月报2018年8月
  6. java日志框架(一)JUL 学习 ,这个是什么,他在代码中如何使用,一篇文章讲清楚
  7. 【leetcode】75.颜色分类(多种解法,超详细图文解析)
  8. GNU makefile 学习 - ongoing
  9. 分布式数据中心网络互联技术实现
  10. 在idea中部署远程Tomcat