本科毕设研究记录(一)————小样本综述

2023-11-11

论文链接[1904.05046] Generalizing from a Few Examples: A Survey on Few-Shot Learning (arxiv.org)

综述

问题定义

  • 机器学习定义:A computer program is said to learn from experience E with respect to some classes of task T and performance measure P if its performance can improve with E on T measured by P.

    计算机程序可以通过使用方法P在任务T中获得经验E来使它的表现变好。但是总是需要大量的数据,这是比较困难的。

  • 小样本学习:Few-Shot Learning(FSL) is a type of machine learning problems (specified by E, T and P), where E contains only a limited number of examples with supervised information for the target T.

    使用少量样本数据进行训练完成目标任务的一种机器学习方法。

使用小样本学习典型的几种场景

  • 字符生成:学习(E)由给定示例和监督信息以及预先训练的概念(如零件和关系)组成的知识,作为先验知识。生成的字符通过视觉图灵测试(P)的通过率进行评估,该测试可区分图像是由人类还是机器生成的。
  • 罕见案例学习:当不能获得充足的训练集来进行训练时,如,考虑一个药物发现任务(T),它试图预测一个新分子是否具有毒性作用。正确分配为有毒或无毒(P)的分子百分比随着(E)的增加而提高,(E)通过新分子的有限分析和许多类似分子的分析作为先验知识获得。
  • 减轻样本收集的负担:考虑少量镜头图像分类任务(T)。图像分类精度(P)通过为每个类别的target提取一些标记图像,以及从其他类别(如原始图像)提取先验知识(E)来提高。成功完成此任务的方法通常具有较高的通用性。因此,它们可以很容易地应用于许多样本的任务。

例如下表

在这里插入图片描述

Remark 1.When there is only one example with supervised information inE, FSL is calledone-shot
learning[14,35,138]. When E does not contain any example with supervised information for the
targetT, FSL becomes azero-shot learningproblem (ZSL). As the target class does not contain
examples with supervised information, ZSL requires E to contain information from other modalities
(such as attributes, WordNet, and word embeddings used in rare object recognition tasks), so as to
transfer some supervised information and make learning possible.

当只有一个有监督信息的样本称为单样本学习,没有办法从监督学习获得信息的时候成为0样本学习,0样本要求从其他地方获得信息。

相关的领域

  • Weakly supervised learning弱监督学习:仅从包含弱监督(如不完整、不精确、不准确或有噪声的监督信息)的经验中学习。根据人工干预的不同又分为以下几类:

    • Semi-supervised learning半监督学习:从少量有标签数据和大量无标签数据,通常应用文本分类和网页分类。还有一种Positive-unlabeled learning正未学习,只判断样本是未知的还是正向。
    • Active learning主动学习,它选择信息性的未标记数据来查询oracle的输出。这通常用于注释标签昂贵的应用程序,如行人检测。

    FSL也包括强化学习问题,只有当先验知识是未标记数据且任务是分类或回归时,FSL才成为弱监督学习问题。

  • Imbalanced learning不平衡学习:不平衡学习是从经验中学习的,它的分布是偏态的。在欺诈检测和灾难预测应用程序中,当一些值很少被采用时,就会发生这种情况。

  • 迁移学习:将知识从训练数据丰富的源域/任务转移到训练数据稀缺的目标域/任务。它可以用于跨域推荐、跨时间段、跨空间和跨移动设备的WiFi定位等应用。

    小样本学习中经常使用迁移学习的方法

  • 元学习:元学习者在任务中逐渐学习通用信息(元知识),学习者通过任务特定信息概括元学习者的新任务

    元学习者被视为指导每个特定FSL任务的先验知识。

核心问题

经验风险最小化(Empirical Risk Minimization)

假设一个任务h,我们想最小化他的风险R,损失函数用 p ( x , y ) p(x,y) p(x,y)进行计算。得到如下公式

R ( h ) = ∫ ℓ ( h ( x ) , y ) d p ( x , y ) = E [ ℓ ( h ( x ) , y ) ] R(h)=\int \ell(h(x),y)dp(x,y)=\mathbb{E}[\ell(h(x),y)] R(h)=(h(x),y)dp(x,y)=E[(h(x),y)]

因为 p ( x , y ) 是 未 知 的 , 经 验 风 险 在 有 I 个 样 本 的 训 练 集 上 的 平 均 值 p(x,y)是未知的,经验风险在有I个样本的训练集上的平均值 p(x,y)I来代理经验风险值 R I ( h ) R_I(h) RI(h)

R I ( h ) = 1 I ∑ i = 1 i ℓ ( h ( x i ) , y i ) R_I(h)= \frac{1}I\sum_{i=1}^i \ell(h(x_i),y_i) RI(h)=I1i=1i(h(xi),yi)

为方便说明做以下三种假设,

  • h ^ = a r g   m i n h ( R ( h ) ) \hat{h} = arg {\ } min_h(R(h)) h^=arg minh(R(h))期望最小值函数
  • h ∗ = a r g   m i n h ∈ H R ( h ) h^* = arg{\ }min_{h \in \mathcal{H}}R(h) h=arg minhHR(h) H \mathcal{H} H中期望最小值函数
  • h I = a r g   m i n h ∈ H R I ( h ) h_I=arg {\ }min_{h\in\mathcal{H}}R_I(h) hI=arg minhHRI(h) H \mathcal{H} H中经验最小值函数

因为 h ^ \hat{h} h^是未知的,但是在 H \mathcal{H} H h ∗ h^* h h ^ \hat{h} h^最好的近似值,所以可以得到误差为

E [ R ( h I ) − R ( h ^ ) ] = E [ R ( h ∗ ) − R ( h ^ ) ] ⏟ ξ a p p ( H ) + E [ R ( h I ) − R ( h ∗ ) ] ⏟ ξ e s t ( H , I ) \mathbb{E}[R(h_I)-R(\hat h)]=\underbrace{\mathbb{E}[R(h^*)-R(\hat h)]}_{\xi_{app}(\mathcal H)}+\underbrace{\mathbb{E}[R(h_I)-R( h^*)]}_{\xi_{est}(\mathcal H,I)} E[R(hI)R(h^)]=ξapp(H) E[R(h)R(h^)]+ξest(H,I) E[R(hI)R(h)]

ξ a p p ( H ) \xi_{app}(\mathcal H) ξapp(H)计算的是在 H \mathcal H H能多接近期望最小是 h ^ , ξ e s t ( H , I ) \hat h, \xi_{est}(\mathcal H,I) h^ξest(H,I)计算的是经验风险可以多接近在 H \mathcal H H上的期望风险。

不可靠的经验风险最小化(Unreliable Empirical Risk Minimizer)

h ^ , ξ e s t ( H , I ) \hat h, \xi_{est}(\mathcal H,I) h^ξest(H,I)可以通过增大I来进行减少,但是在小样本学习中I很小,所以经验风险离期望风险很远,这就是小样本学习中的核心问题,用下图进行表示。

在这里插入图片描述

解决方法

根据上面的误差计算公式,我们可以发现,减少误差有三种方法

  1. 增大I样本数量
  2. 改善模型,缩小 H \mathcal H H的范围
  3. 改进算法,使搜索 h I ∈ H h_I \in \mathcal H hIH更优,初始化 h ∗ h^* h更接近 h ^ \hat h h^

在这里插入图片描述

下表为文章中总结的方法

在这里插入图片描述

数据增强

  • 从训练集中转换样本

    • 早期的方法,通过迭代地将每个样本与其他样本对齐,从类似的类中学习一组几何变换。将学习到的转换应用于每个(xi,yi)以形成一个大型数据集,然后可以通过标准机器学习方法学习这些数据集。
    • 从类似的类中学习一组自动编码器,每个编码器代表一个类内可变性。通过添加学习的变化toxi生成新样本。
    • 通过假设所有类别在样本之间共享一些可转换的可变性,学习单个转换函数,以将从其他类别学习的样本对之间的变化转换为(xi,yi)
    • 从大量场景图像中学习的一组独立属性强度回归器将每个样本转换为多个样本,并将原始样本的标签指定给这些新样本。
  • 从弱标记或者无标记的数据集中转换样本

    • 为每个训练集的目标标签学习一个样本SVM,然后用于预测弱标签数据集中样本的标签。然后将具有目标标签的样本添加到训练集中。
    • 直接使用标签传播来标记未标记的数据集。
    • 使用渐进策略选择信息性未标记样本。然后为选定的样本指定伪标签,并用于更新CNN。
  • 从相似的样本中转换样本

    该策略通过聚合和调整来自相似但较大数据集的输入-输出对来增强性能。

选择使用哪种增强策略取决于应用程序。有时,目标任务(或类)存在大量弱监督或未标记的样本,但由于收集注释数据和/或计算成本高,因此小样本学习是首选的。现有的方法主要是针对图像设计的,因为生成的图像可以很容易地由人类进行视觉评估。相比之下,文本和音频涉及语法和结构,更难生成。

模型

  • 多任务学习:

    • 参数共享。此策略在任务之间直接共享一些参数。eg:两个任务网络共享通用信息的前几层,并学习不同的最终层以处理不同的输出。
    • 参数绑定:正则化对齐不同任务。
  • 嵌入学习:将每一个例子embed(嵌入)一个低维,这样相似的样本靠的很近,而不同的样本则更容易区分。同时可以构造更小的假设空间KaTeX parse error: Undefined control sequence: \cal at position 1: \̲c̲a̲l̲ ̲H。嵌入学习主要从先验知识中学习。

    根据嵌入函数和参数是否随任务改变,将FSL分为三种

    • 特定于任务的嵌入模型

    • 任务不变了嵌入模型

    • 混合嵌入模型

    在这里插入图片描述

  • 用外部记忆学习:使用额外的存储器从训练集中学习知识并保存起来(key-value的键值槽)。与嵌入学习不同的是,测试集不直接用这种方式表示,只基于额外存储的内存的相似性,进行预测。在这里插入图片描述

  • 生成模型:从先验知识中观察到的x估计的概率分布P(x)。

在这里插入图片描述

算法

假设 θ \theta θ是在 H \mathcal H H上能获得最好的 h ∗ h^{*} h,算法通过(i)提供良好的初始化参数 θ 0 θ_0 θ0,或(ii)直接学习优化器以输出搜索步骤,使用先验知识来影响θ的获取方式。根据先验知识对搜索策略的影响,分为以下三类

  • 细化现存参数

    • 通过正则化微调现有参数

    • 早停

    • 选择性更新 θ 0 \theta_0 θ0:仅更新一部分 θ 0 \theta_0 θ0防止过拟合

    • 一起更新 θ 0 \theta_0 θ0相关部分:可以将 θ 0 θ_0 θ0的元素分组(例如深层神经网络中的神经元),并使用相同的更新信息对每组进行联合更新。

    • 使用模型回归网络:捕获了任务不可知变换,该变换映射了通过对几个示例进行训练获得的参数值。

    在这里插入图片描述

    • 聚合一组参数:有时,我们没有一个合适的θ0开始。相反,我们有许多从相关任务中学习的模型。例如,在人脸识别中,我们可能已经有了眼睛、鼻子和耳朵的识别模型。因此,可以将这些模型参数聚合到一个合适的模型中,然后直接使用该模型或通过训练集进行细化(img-Ko80GD2k-1637941610952)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\image-20211126233009988.png)]
    • 使用新参数微调现有参数:使用新参数微调现有参数。预先训练的θ0可能不足以完全编码新的FSL任务。因此,使用一个附加参数δ来考虑特殊性。具体来说,该策略将模型参数扩展为θ={θ0,δ},并在学习δ的同时微调θ0。在这里插入图片描述
  • 细化元学习参数:使用元学习来细化参数 θ 0 \theta_0 θ0,它持续被元学习器更新。

    一种代表性的方法是模型不可知元学习(MAML)
    在这里插入图片描述

    • 包含特定于任务的信息:一般MAML为所有任务提供相同的初始化。但是,这忽略了特定于任务的信息,只有当任务集非常相似时才适用。
    • 使用元学习 θ 0 θ_0 θ0建模不确定性:通过几个例子学习不可避免地会导致模型具有更高的不确定性。因此,所学习的模型可能无法以高置信度对新任务执行预测。测量这种不确定性的能力为主动学习和进一步的数据收集提供了提示。
    • 改进精炼程序:通过几个梯度下降步骤进行细化可能不可靠。正则化可用于纠正下降方向。
  • 学习优化器:不使用梯度下降,而是学习一个优化器,该优化器可以直接输出更新。这样就不需要调整步长α或找到搜索方向,因为学习算法会自动完成这项工作。在这里插入图片描述

    在第t次迭代中,这一行的工作学习一个元学习器,它接受在(t-1)处计算的错误信号,并直接输出更新 △ ϕ t − 1 \triangle\phi_{t-1} ϕt1,更新特定于任务的参数 ϕ t = ϕ t − 1 + △ ϕ t − 1 \phi_{t}=\phi_{t-1}+\triangle\phi_{t-1} ϕt=ϕt1+ϕt1

未来工作

问题

大多使用数据增强的方式,

可能的方向是多模态在FSL中的设计

技术

元学习

避免灾难性遗忘

自动机器学习(Automated machine learning)

应用

  1. 计算机视觉(除了字符识别和图像分类外,还考虑了其他图像应用。其中包括物体识别[35,36,82]、字体样式转换[7]、短语基础[162]、图像检索[130]、物体跟踪[14]、图像中的特定物体计数[162]、场景位置识别[74]、手势识别[102]、部分标记[24]、图像生成[34,76,107,109]、跨域图像翻译[12],三维对象的形状视图重建[47],以及图像字幕和视觉问答[31]。FSL还成功地应用于视频应用,包括运动预测[50]、视频分类[164]、动作定位[152]、人员重新识别[148]、事件检测[151]和对象分割)

  2. 机器人学:机器仿生,模仿人的动作等。

  3. 自然语言处理(解析[64]、翻译[65]、句子完成(使用从提供的集合中选择的单词填空)[97138]、简短评论中的情感分类[150157]、对话系统的用户意图分类[157]、刑事指控预测[61]、词语相似性任务,如nonce定义[56125]和多标签文本分类[110]。最近,发布了一个名为FewRel[52]的新关系分类数据集。这弥补了自然语言处理中FSL任务基准数据集的不足)

  4. 声音信号处理:最近的努力是语音合成。一项流行的任务是从用户的几个音频样本中克隆语音

  5. 其他:曲线拟合,医疗,推理方面

理论

通过考虑一种特定的元学习方法,在中考察了将一项任务中训练的模型转移到另一项任务中的风险。然而,到目前为止,只有少数方法得到了研究。还有很多理论问题需要探讨。

元学习者学习深层网络的较低层,而学习者学习最后一层,全部使用梯度下降。对元学习方法的收敛性进行更全面的分析将非常有用

论文总结

这篇文章总结了近年来小样本领域的各项工作,取得的成就,研究的多种方法,并介绍了未来的发展和研究难点,让我对小样本学习产生了浓厚的兴趣,以上内容纯属自己记录,如有不对请读者指出,如有同志欢迎一起积极探讨。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

本科毕设研究记录(一)————小样本综述 的相关文章

  • 【2023】华为OD机试真题全语言-题目0221-AI处理器组合

    AI处理器组合 题目描述 某公司研发了一款高性能AI处理器 每台物理设备具备8颗AI处理器 编号分别为0 1 2 3 4 5 6 7 编号0 3的处理器处于同一个链路中 编号4 7的处理器处于另外一个链路中 不通链路中的处理器不能通信 如下
  • Flink 使用技巧

    基本使用直接参照官方文档 https ci apache org projects flink flink docs release 1 9 dev connectors kafka html 以下分享以下我的个性化使用方式 1 Event
  • (工作中)Apache常见配置

    Apache配置 1 设置静态文件过期时间为1天
  • 汉诺塔递归算法(Python编程)

    一 问题描述 汉诺塔是学习计算机递归算法的经典入门案例 是一个数学难题 其问题为如何将所有圆盘从A移动到C 要求一次只能移动一个盘子 盘子只能在3个标杆 A B C 之间移动 更大的盘子不能放在更小的盘子上面 请用Python编写一个汉诺塔

随机推荐

  • latex-列表 itemize enumerate description 自定义

    介绍 latex 主要有三种列表环境 进行罗列的实现 无序列表 itemize 有序列表 enumerate 描述列表 description 本文进行了一一介绍和演示 同时添加了嵌套列表环境和自定义列表环境的说明 latex 列表环境 l
  • 刚开始接触YOLO,记录一下Windows系统下载yolov5与初步进行训练的过程

    一 下载pycharm anaconda 与yolov5 第一步 下载pycharm anaconda pycharm Download PyCharm Python IDE for Professional Developers by J
  • 蓝桥杯2015年第六届真题-牌型种类

    题目 小明被劫持到X赌城 被迫与其他3人玩牌 一副扑克牌 去掉大小王牌 共52张 均匀发给4个人 每个人13张 这时 小明脑子里突然冒出一个问题 如果不考虑花色 只考虑点数 也不考虑自己得到的牌的先后顺序 自己手里能拿到的初始牌型组合一共有
  • 【uni-app】uniapp 实现一键登录 超详细记录~

    uniapp 实现一键登录 一 前置条件 开通uniCloud 开通一键登录功能 二 一键登录代码 云函数代码 三 其他条件 四 遇到过什么问题 如何处理 本地函数同个局域网 错误码 五 官网给出的错误码 参考的文档 官网 一键登录unia
  • Vmware 安装CentOS7时连不上网问题的解决

    在VmWare 上安装Centos7时 装好vmware后还是连不上网 通过查找资料原来是因为有线网卡没有激活 默认centos和redhat7都是不启用有线网卡的 要么手动开启 要么安装时直接启用 所以第一步应该是激活网卡 在桌面点击右键
  • Railway HDU - 3394(tarjan应用)

    题目 有一个公园有n个景点 公园的管理员准备修建m条道路 并且安排一些形成回路的参观路线 如果一条道路被多条道路公用 那么这条路是冲突的 如果一条道路没在任何一个回路内 那么这条路是不冲突的 问分别有多少条有冲突的路和没有冲突的路 题解 1
  • HTML5 本地裁剪图片并上传至服务器(转)

    很多情况下用户上传的图片都需要经过裁剪 比如头像啊什么的 但以前实现这类需求都很复杂 往往需要先把图片上传到服务器 然后返回给用户 让用户确定裁剪坐标 发送给服务器 服务器裁剪完再返回给用户 来回需要 5 步 步骤繁琐不说 当很多用户上传图
  • wpa_supplicant工具移植

    一 移植准备 就移植来说 wpa supplicant的移植和ssh十分类似 wpa supplicant需要openssl和libnl库 所以我们需要先准备好openssl和libnl库 openssl的移植在前面的文章嵌入式Linux开
  • 【AI安全与隐私论坛】第12期学习笔记——Trustworthy Al: to be Robust or to be Fair

    开设了会议学习系列 主要注重理解专家的科研和讲述逻辑 以及锻炼画概念图流程图的能力 绘图软件 PPT 第12期论坛视频链接 AI安全与隐私论坛第12期 密歇根州立大学汤继良教授 可信人工智能中的鲁棒性和公平性可以兼得吗 文章目录 1 Int
  • 深度学习-第T9周——猫狗识别

    深度学习 第T9周 猫狗识别 深度学习 第T9周 猫狗识别 一 前言 二 我的环境 三 前期工作 1 导入数据集 2 查看图片数目 四 数据预处理 1 加载数据 1 1 设置图片格式 1 2 划分训练集 1 3 划分验证集 1 4 查看标签
  • mysql8.0新特性--隐藏索引

    我们有时候想删除掉冗余索引 但是又怕删除之后影响到查询性能 这时候再回退就需要一定的时间 MySQL8 0开始支持隐藏索引 invisible indexes 隐藏索引不会被优化器使用 如果你想验证某个索引删除之后的查询性能影响 就可以暂时
  • MIPI协议解析——DPI

    在MIPI协议族中 除了DSI 用于显示 CSI 用于摄像头 还有几个概念会经常涉及到 这里把他们提出来说一说 免得有误区 MIPI DPI的全称为Display Pixel interface 是用于主机到显示设备的一种数据传输标准 一般
  • pycharm彻底卸载

    mac中pycharm下载后无法打开 可能是因为使用破解后vm路径改变 完全卸载后再次安装即可 cd Library Preferences rm rf PyCharm2019 x cd Library Logs rm rf PyCharm
  • _T() 和_L() _TEXT __T,L区别与联系详解

    T 和 L TEXT T L区别与联系详解 T 是一个宏 他的作用是让你的程序支持Unicode编码 因为Windows使用两种字符集ANSI和UNICODE 前者就是通常使用的单字节方式 但这种方式处理象中文这样的双字节字符不方便 容易出
  • c++11

    列表 1 boost bind 2 boost function 3 列表初始化 4 nullptr 空指针 6 constexpr函数 6 using类型别名 7 auto类型指示符 8 decltype类型指示符 9 范围for语句 1
  • k8s部署prometheus + grafana

    k8s以Deployment方式部署prometheus grafana 主机说明 系统 ip 角色 cpu 内存 hostname CentOS 7 8 192 168 30 128 master gt 2 gt 2G master1 C
  • 线性回归(Linear Regression)

    引言 说到底 回归任务都是寻找特征与目标之间的关系 我们认为每一个特征或多或少 或积极或消极地对目标产生着影响 我们期望寻找数学表达式来表达出这种影响 一 回归模型 想象一下描述特征与目标之间最简单明了的关系是什么 当然是线性关系了 每个特
  • 解决RuntimeError: CUDA error: device-side assert triggeredCUDA kernel errors...CUDA_LAUNCH_BLOCKING=1

    完整报错 RuntimeError CUDA error device side assert triggeredCUDA kernel errors might be asynchronously reported at some oth
  • opencv 中Canny边缘检测算法原理加每一个(分)步骤的代码演示

    1 原理 1 噪声抑制 输入图像经过高斯平滑滤波 减少噪声的影响 2 计算梯度 在平滑后的图像上应用Sobel算子计算梯度幅值和方向 3 非极大值抑制 在梯度方向上 比较每个像素的梯度幅值与其相邻两个像素沿着梯度方向的梯度幅值 如果当前像素
  • 本科毕设研究记录(一)————小样本综述

    本科毕设记录 一 小样本综述 综述 问题定义 相关的领域 核心问题 经验风险最小化 Empirical Risk Minimization 不可靠的经验风险最小化 Unreliable Empirical Risk Minimizer 解决