【学习】Meta Learning、

news2024/11/27 11:33:40

文章目录

  • 一、Meta Learning
      • 什么是元学习?
      • 元学习–第1步
      • 元学习–第2步
      • 元学习–步骤3
      • 架构
      • ML和Meta
      • 回顾GD
        • 学习好的初始化参数
        • 学习学习率
        • NAS寻找网络结构
        • data augmentation
        • Sample Reweighting
      • Few-shot Image Classification
    • 元学习与自我监督学习
    • 元学习和知识蒸馏
      • 元学习和领域适应
    • 元学习与终身学习


一、Meta Learning

元学习:学会学习
在学术界,我们的GPU不多,超参数不能全列举。机器能自动确定超参数吗?
在这里插入图片描述
回顾ML的三步骤
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

什么是元学习?

让机器学习找到这个方程。
在这里插入图片描述

元学习–第1步

学习算法中什么是可以学习的?组成:网络架构,初始参数,学习率。根据什么是可学习的对元学习进行分类。
在这里插入图片描述

元学习–第2步

为学习算法Fφ定义损失函数L(φ)。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
我们如何知道一个分类器是好是坏? 在测试集上评估分类器。
训练和测试资料都是有标注的。

在这里插入图片描述
在这里插入图片描述
上面都是对同一个任务的训练,但是在元学习里面不止一个任务。

在这里插入图片描述
在典型的ML中,是基于训练示例来计算损失,但是在元学习上用的是测试资料计算loss。
在这里插入图片描述

元学习–步骤3

求出最好的参数和Fφ。在参数φ没办法求微分的时候可以用RL。
在这里插入图片描述

架构

使用训练任务的资料,运用上面的三步骤就能得到一个学习出来的算法Fφ * 。

然后使用测试任务里面的训练资料放到这个学出的算法里面得到一个分类器fθ * 。
然后把分类器用在测试任务里面的测试资料上得到结果。
训练任务是跟测试任务无关的任务。小任务学习是用一点标注的资料就能得到好的结果,这两个还是有区别的。在ML里面的测试资料是不能用的!在元学习里面需要使用。
在这里插入图片描述

ML和Meta

在这里插入图片描述
在这里插入图片描述
元学习——跨任务学习,ML——任务内学习
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
元学习的一次episode运算量大。
在这里插入图片描述
你所知道的关于ML的知识通常可以应用到元学习中:
过度适应训练任务,获得更多训练任务以提高结果,任务扩充,学习学习算法时也有超参数…,改善任务(元学习也应该有个验证集)
在这里插入图片描述

回顾GD

学习好的初始化参数

初始化参数θ0是随机取样的
在这里插入图片描述
好的初始化也很重要。
在这里插入图片描述
也需要随机种子和调参
在这里插入图片描述
预训练由代理任务训练。预训练和MAML很像,都可以找到一个好的初始化参数。区别:MAML需要标注资料,预训练没有标注资料。
在这里插入图片描述
预训练是把很多任务都混在一起训练,也可以说是多任务学习。
在这里插入图片描述
元学习也很像领域适应/迁移学习
在这里插入图片描述
MAML好在初始化的参数跟好参数接近。

学习学习率

在这里插入图片描述
在这里插入图片描述

NAS寻找网络结构

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
让网络可以微分:
在这里插入图片描述

data augmentation

在这里插入图片描述

Sample Reweighting

给不同的样品不同的重量
在这里插入图片描述
以上方法都是基于GD的。
在这里插入图片描述
所有训练和测试资料一起输入:
在这里插入图片描述

Few-shot Image Classification

Few-shot Image Classification·:每个类只有几个图像。
在这里插入图片描述在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

元学习与自我监督学习

BERT和MAML都是找初始化的参数:
在这里插入图片描述
MAML学习初始化参数φ是通过梯度下降算法。因为GD也需要进行随机初始化,所以初始化参数φ0是什么?可以从BERT里面产生!
在这里插入图片描述
存在“学习差距”:自我监督的目标不同于下游任务,BERT预训练的任务有很多,但是不一定适配下游任务。但是MAML关心学会在训练任务中取得好的表现。MAML需要使用训练资料,但是BERT可以使用大量无标注资料。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
BERT和元学习的联合会有好的结果。

元学习和知识蒸馏

在这里插入图片描述
让学生网络学习教师网络,但是我们不知道教师网络是好的还是不好的。
在这里插入图片描述
我们可以发现结果最好的老师网络不见得教的好!
我们可以用元学习让老师网络学习如何去教。
在这里插入图片描述
我们需要更新教师网络(加入温度参数,不用整个大网络都更新)让学生的结果是最好的(loss低)。

元学习和领域适应

我们不知道目标领域(训练阶段没有目标领域的数据),可以训练domain generalization来让网络在未知领域表现好。
在这里插入图片描述
在这里插入图片描述
使用训练领域中的一个领域作为伪目标域:
在这里插入图片描述
可以分别作为为目标域:
在这里插入图片描述
在这里插入图片描述
训练样本和测试样本可以具有不同的分布。训练任务和测试任务也可以有不同的分布。
在这里插入图片描述

元学习与终身学习

机器如果通过终身学习,会最终变很厉害!
在这里插入图片描述
但是实际上如果一个任务一个任务的训练,机器会产生灾难性遗忘的结果
在这里插入图片描述
解决灾难性遗忘:
在这里插入图片描述
元学习也可以用在这个过程中!可以用元学习学习参数更新的时候不忘记旧任务。
在这里插入图片描述
在这里插入图片描述
元学习也有毁灭性遗忘的问题:
在这里插入图片描述
元学习学会学习:
在这里插入图片描述
在这里插入图片描述
元学习不同任务有不同的模型,但是终身学习是一个任务学习多个任务。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
MAML是用训练过的模型来计算loss 的,而预训练直接使用模型的参数进行计算loss。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
一步到位训练出一个模型。在使用算法时,仍然要多次更新。few-shot学习的数据有限。MAML在训练的时候一般只更新一次。
每个任务:给定一个目标正弦函数y = a sin(x + b),从目标函数中采样K个点,使用样本估计目标函数。
在这里插入图片描述
预训练做的不太好,但是MAML做的好一点。
在这里插入图片描述
在这里插入图片描述
φi是初始参数
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
MAML是用两次更新的参数的方向来更新参数,预训练用的是每步更新参数的方向来更新参数。
在这里插入图片描述
上面的元学习比预训练好。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/153478.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

语音识别综述

语音识别的基本单位 Phoneme: 音位,音素 a unit of sound 是声音的最基本单位**,每个词语token的声音由多个 phoneme 组成** Grapheme(字位) smallest unot of a writing system 每个单词书写最基本的单位&#xff…

Vue初识系之Webpack

文章目录一 Webpack简介二 Webpack的安装和使用2.1 安装Webpack2.2 配置参数初识2.3 使用webpack一 Webpack简介 webpack本质上是一个现代JavaScript应用程序的静态模块打包器(modulebundler)。当webpack处理应用程序时,它会递归地构建一个依…

LeetCode(String)2194. Cells in a Range on an Excel Sheet

1.问题 A cell (r, c) of an excel sheet is represented as a string “” where: denotes the column number c of the cell. It is represented by alphabetical letters. For example, the 1st column is denoted by A, the 2nd by B, the 3rd by C, and so on. is the ro…

Java抽象类:概述

1.抽象类 在Java中abstract是抽象的意思,可以修饰类、成员方法。 abstract修饰类:这个类就是抽象类。 abstract修饰方法:这个方法就是抽象方法。 修饰符 abstract class 类名{修饰符 abstract 返回值类型 方法名(形参列表); } public ab…

助力旅游业复苏,IPIDEA让旅游资源聚合更简单

目前我国疫情防控政策的优化,极大的简化了出境手续,对于深受疫情影响的旅游业来说,这无疑是一个好消息。随着旅游消费需求持续的增长,旅游业将会逐渐进入全面复苏的新进程,焕发新的活力。 全球旅游市场都在关注着中国…

ABAP 内表的定义,与PERFORM传值的定义<转载>

很早之前就想总结一下内表和定义和perform的传值定义,结果要么没时间,要么有时间忘了。 今天在网上看到一个博文写的还比较清楚,故读书人窃来一用 ^ - ^ 原文链接:https://blog.csdn.net/lmf496891416/article/details/117702217 …

5 UML views and the 9+4 UML Diagrams 关系

Refer:UML2.5图概述-Lib教程 UML旨在通过的建模图形Diagram,可视化 5 种不同的视图View。 这五个视图是: 一、Users View : 用户视图 1. Use case Diagram:用例图性 二、Structural Views : 结构视图 2. Class Diagrams&#xf…

数码钢琴行业市场运行态势及投资战略规划分析

2023-2029年中国数码钢琴行业市场运行态势及投资战略规划报告 报告编号:1691312 免费目录下载:http://www.cninfo360.com/yjbg/jdhy/sxjd/20230109/1691312.html 本报告著作权归博研咨询所有,未经书面许可,任何组织和个人不得以…

C语言进阶(5)——内存操作函数的解析

1.memcpy函数 void * memcpy ( void * destination, const void * source, size_t num ); 用途:各种数据类型,从源数组拷贝num个字节到指定目标空间里面。 要点: (1)函数memcpy从source的位置开始向后复制num个字节的数…

【虹科案例】虹科数字化仪在超声波中的应用以及如何选择合适的数字化仪

图 1:虹科M4i.4451-x8——用于采集超声波信号的 PCIe 4 通道 14 位 500 MS/s 数字化仪 超声波是一种频率大于人类听觉范围上限的声学声压波。超声波设备的工作频率从 20 kHz 到几千兆赫兹。表 1 总结了一系列常见的超声波应用的特性。 每个应用中使用的频率范围反映…

JSP SSM 仓库租赁管理系统myeclipse开发mysql数据库springMVC模式java编程计算机网页设计

一、源码特点 JSP SSM 仓库租赁管理系统是一套完善的web设计系统(系统采用SSM框架进行设计开发,springspringMVCmybatis),对理解JSP java编程开发语言有帮助,系统具有完整的源代码和数据库,系统主要采…

C语言进阶——字符串函数和内存函数

目录 一. strlen 二. strcpy 三. strcat 四. strcmp 五. strncpy 六. strncat 七. strncmp 八. strstr 九. strtok 一. strlen 字符串以 \0 作为结束标志,strlen函数返回的是在字符串中 \0 前面出现的字符个数(不包 含 \0 …

TCP/IP网络编程(1)——理解网络编程和套接字编程

文章目录一、理解网络编程和套接字编程1.1 socket套接字1.1.1 一个例子来表示TCP的网络连接1.1.2 程序实现1.2 文件操作1.2.1 文件描述符一、理解网络编程和套接字编程 1.1 socket套接字 网络编程又称为套接字编程,为什么要用套接字?我们把插头插到插座…

Linux常用命令——ngrep命令

在线Linux命令查询工具(http://www.lzltool.com/LinuxCommand) ngrep 方便的数据包匹配和显示工具 补充说明 ngrep命令是grep命令的网络版,他力求更多的grep特征,用于搜寻指定的数据包。正由于安装ngrep需用到libpcap库, 所以支持大量的操…

【Java】面向对象笔记

开篇 主线 类及类的成员 属性、方法、构造器; 代码块,内部类 面向对象三大特征 继承、封装、多态 其他关键字 this,super,static,final,abstract,interface等 面向对象的两个要素 一、是什么 类:对一类事物的描述,是抽象的…

Java综合练习

Java综合练习一、涉及到的知识点二、卖飞机票三、找质数四、开发验证码五、数组元素的复制六、评委打分七、数字加密八、数字解密九、抢红包方法一:判断是否被抽取方法二:打乱数组十、模拟双色球土、二维数组一、涉及到的知识点 变量、数组运算符程序流…

python采集IP代理数据,防止数据采集IP被封情况

前言 嗨喽&#xff0c;大家好呀~这里是爱看美女的茜茜呐 又到了学Python时刻~ 为什么要IP代理&#xff1a; 当采集数据, 批量采集数据, 请求速度过快, 网站可能会把你IP封掉 <你的网络进不去这个网站> IP代理换一个IP, 再去采集请求数据 一. 抓包分析数据来源 1. 明…

Runtime、ProcessBuilder的区别(Java中,两种方法来启动其他程序)

目录 ■Runtime、ProcessBuilder 区别&#xff1a; ■Java中提供了两种方法来启动其他程序 ■代码 ・Runtime ・ProcessBuilder ■类的方法 ・Process.waitFor()方法 ・Process.getErrorStream()方法 ・Process.redirectErrorStream(true)方法: ■可运行代码 ・java…

解读YOLOv8的改进模块

回顾一下YOLOv5 Backbone&#xff1a;CSPDarkNet结构&#xff0c;主要结构思想的体现在C3模块&#xff0c;这里也是梯度分流的主要思想所在的地方&#xff1b;PAN-FPN&#xff1a;双流的FPN&#xff0c;必须香&#xff0c;也必须快&#xff0c;但是量化还是有些需要图优化才可以…

“数据二十条”发布背后:国企下场探路,技术路径日渐清晰

科技云报道原创。 近日&#xff0c;中共中央、国务院对外发布了《关于构建数据基础制度更好发挥数据要素作用的意见》&#xff08;又称“数据二十条”&#xff09;&#xff0c;为数据要素的流通和使用起到了举旗定向的作用&#xff0c;让从业者都感到振奋。 必须承认的是&…