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

  • 综述
    • 问题定义
    • 相关的领域
    • 核心问题
      • 经验风险最小化(Empirical Risk Minimization)
      • 不可靠的经验风险最小化(Unreliable Empirical Risk Minimizer)
  • 解决方法
    • 数据增强
    • 模型
    • 算法
  • 未来工作
    • 问题
    • 技术
    • 应用
    • 理论
  • 论文总结

论文链接[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)dp(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来代理经验风险值RI(h)R_I(h)RI(h)

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

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

  • h^=argminh(R(h))\hat{h} = arg {\ } min_h(R(h))h^=argminh(R(h))期望最小值函数
  • h∗=argminh∈HR(h)h^* = arg{\ }min_{h \in \mathcal{H}}R(h)h=argminhHR(h)H\mathcal{H}H中期望最小值函数
  • hI=argminh∈HRI(h)h_I=arg {\ }min_{h\in\mathcal{H}}R_I(h)hI=argminhHRI(h)H\mathcal{H}H中经验最小值函数

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

E[R(hI)−R(h^)]=E[R(h∗)−R(h^)]⏟ξapp(H)+E[R(hI)−R(h∗)]⏟ξest(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)]

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

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

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

解决方法

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

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

下表为文章中总结的方法

数据增强

  • 从训练集中转换样本

    • 早期的方法,通过迭代地将每个样本与其他样本对齐,从类似的类中学习一组几何变换。将学习到的转换应用于每个(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 HH上能获得最好的h∗h^{*}h,算法通过(i)提供良好的初始化参数θ0θ_0θ0,或(ii)直接学习优化器以输出搜索步骤,使用先验知识来影响θ的获取方式。根据先验知识对搜索策略的影响,分为以下三类

  • 细化现存参数

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

    • 早停

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

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

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

    • 聚合一组参数:有时,我们没有一个合适的θ0开始。相反,我们有许多从相关任务中学习的模型。例如,在人脸识别中,我们可能已经有了眼睛、鼻子和耳朵的识别模型。因此,可以将这些模型参数聚合到一个合适的模型中,然后直接使用该模型或通过训练集进行细化
    • 使用新参数微调现有参数:使用新参数微调现有参数。预先训练的θ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. 其他:曲线拟合,医疗,推理方面

理论

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

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

论文总结

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

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

  1. 结对项目之需求分析与原型设计(选择和分配本科毕设导师)

    成员 031402330 吴宇轩 031402327 肖承志 项目名称:选择和分配本科毕设导师 项目来源: 大四的学生需要进行本科毕业设计,每个学生都会被分配到一个导师进行毕设指导,而每个导师的时间精 ...

  2. iMeta | 俄亥俄州立大学郑庆飞组发表多组学方法研究肿瘤微生物组综述

    点击蓝字 关注我们 多组学方法在肿瘤微生物组研究中的应用 原文链接DOI: https://doi.org/10.1002/imt2.73 综  述 ● 2023年1月9日,俄亥俄州立大学郑庆飞团队在 ...

  3. 计算机专业毕设都需要哪些准备,计算机专业本科毕设指南.ppt

    计算机专业本科毕设指南 <跨平台程序设计>--.Net简介 计算机专业本科毕设指南 内容提要 如何选择适当的本科毕设题目 如何开展本科毕设的相关工作 如何编写合格的本科毕业论文 本科毕业论 ...

  4. 清华大一Python作业太难上热榜!只上3节课,手撸AI算法,网友:离本科毕设只差一篇万字论文...

    点击上方"视学算法",选择加"星标"或"置顶" 重磅干货,第一时间送达 金磊 发自 凹非寺 量子位 报道 | 公众号 QbitAI 太难了! ...

  5. 微服务可观测性研究之distributed tracing--1.综述

    微服务可观测性研究之distributed tracing–1.综述 最近,boss交给了我一个任务,研究下链路追踪,大半年前研究过这个问题,但是当时因为手头上有很多别的工作,加上对scala和pla ...

  6. python本科毕设_关于本科毕设选题请教问题

    本人正面临本科毕设选题,目前有以下待选四个题目,我想选一个比较能稳定出结果的,好做一点的题目.还请教懂这方面的 v 友帮选一下题. 数学基础还行,有 python,c++,pfga,java 基础.做 ...

  7. 05 - Protege OWL API 的使用 - 本科毕设整理

    我的本科毕设题目是<基于家居环境的智能推理引擎设计>,跟我的专业通信工程似乎--第一次接触语义网(Sementicweb)和网络本体语言(OWL).主要研究了智能家居关键技术,分析了多种场 ...

  8. matlab图形图像处理论文,基于matlab图形图像处理技术-本科毕设论文.doc

    基于matlab图形图像处理技术-本科毕设论文 基于MATLAB图形图像处理技术 摘 要 本文提出了一种基于MATLAB的数字图像处理技术的设计,系统中包括了图像处理技术的各个方面,涵盖了图像处理领域 ...

  9. 哈工大毕设体验记录-使用ZYNQ MPSoC开发板实现的Linux环境千兆以太网C语言UDP协议批量文件存取(上)

    写在前面:本文仅为一位哈工大本科学生的毕设过程记录(吐槽),可参考性有限,供后来的广大学弟学妹们参考一下吧,我趟过的坑别再跳了. 字体区别:黑色加粗为文章结构脉络表述,红色为必须明确的重点,绿色为次重 ...

  10. 【完结】毕设全记录——JavaBDD的应用(布尔表达式的运算、CTL公式解析、模型检验)

    这是一个鸽了很久的系列,本来是要记录完成本科毕设<状态机自动生成与图形化仿真系统研究与实现>的过程,因为使用的JavaBDD算是一个很老的包了,文档很少,而且这个领域的资料也很少,所以想着 ...

最新文章

  1. Angular2+ 结构型指令
  2. Java-Java5.0注解解读
  3. 求两条轨迹间的hausdorff距离_圆锥曲线三种定义间的关系
  4. 拼多多“京东化”:自建物流重农卖菜是赚谁的钱?
  5. Delphi 的各种错 误 信 息(中英文)
  6. 嵌入式Linux驱动笔记(十八)------浅析V4L2框架之ioctl【转】
  7. node python复用代码_python-代码复用(函数、lambda、递归、PyInstaller库)
  8. CV Code|计算机视觉开源周报20200501期
  9. 工业物联网再起云涌,大咖共叙破圈之道
  10. linux安装包文件格式,一般软件的安装包格式
  11. 好用的数据建模工具,探索中完善
  12. 傅立叶变换、拉普拉斯变换、Z 变换的联系是什么?为什么要进行这些变换?...
  13. linux 防火墙服务器,Linux服务器上适用的防火墙分析
  14. flutter (笔记) 动画学习
  15. 注册Office教育版账号流程实现oneDrive1TB储存
  16. 地图飞线图 echart+高德地图实现
  17. 微信支付中的p12证书提取公钥、私钥、证书、序列号等
  18. 如何把纸质合同转变为电子合同?
  19. C语言错误信息报告函数strerror、perror的使用
  20. 思岚科技—SLAMTEC将自家研发技术应用到更多行业中

热门文章

  1. HiJson——Json解析工具
  2. matlab查表svpwm,SVPWM的查表生成方式代码
  3. 使用迅捷pdf虚拟打印机可以将excel转换成pdf文件吗?
  4. 在谷歌云盘训练YOLOV5模型
  5. FileUtils工具类学习
  6. Apache自带的ab压力测试工具
  7. 数据库设计工具-----PD
  8. WEB前端大作业-程序员个人在线简历响应式网站模板(HTML+CSS+JavaScript)
  9. 如何安全的下载Devcon.exe文件
  10. C++开发坦克大战--补充(加入传送门)--附完整代码