ICLR2021 Oral |9行代码提高少样本学习泛化能力
文 | 杨朔@知乎
本文已获作者授权,禁止二次转载
介绍一篇我们刚刚发表在ICLR2021 Oral上的一篇少样本学习工作,简单有效。
题目:
Free Lunch for Few-shot Learning: Distribution Calibration
链接:
https://openreview.net/forum?id=JWOiYxMG92s
代码:
https://github.com/ShuoYang-1998/ICLR2021-Oral_Distribution_Calibration
简介
从极少量样本中学习到泛化性能良好的模型是很困难的,因为极少的样本形成的数据分布往往与真实数据分布相差较大,在偏斜的数据分布上训练模型会导致严重的过拟合现象并严重破坏模型的泛化能力(见图1)。在本文中我们尝试从数据分布估计的角度去缓解少样本学习中的过拟合现象。我们尝试利用一个样本去估计该类别的整体数据分布,如果该分布估计足够准确,也许可以弥合少样本学习和传统多样本学习的差距。
方法
直接从一个样本中估计整体数据分布是非常困难的,需要很强的先验去约束分布估计的过程。我们观察到如果假设每一个类别的特征都服从高斯分布,那么相似类别的分布统计量相似度非常高,如表1。
从直观的角度理解,一个类别的mean代表该类别的general appearance,variance代表该类别某属性的变化范围(颜色、形状、姿势等)。而相似的类别(如猫和老虎)具有相似的整体外观和相似的属性变化范围。受此启发,我们提出了通过迁移基类(base class)的分布统计量的方式对少样本类别的数据分布做‘矫正’(calibration)。具体来说,我们首先为每一个base class i计算一个mean和covariance:
计算好的 和 储存起来当作base class分布先验。然后在进行少样本分类时我们利用base class的分布先验去修正少样本类别的数据分布:
得到修正后的少样本类别的分布 和 后,我们便可以从修正后的分布中直接采样:
然后利用采样得到的数据和support set共同训练分类器:
至此,该算法结束。流程如图:
实验
我们的算法无需任何可训练参数,可以建立在任何已有的特征提取器和分类器之上,并极大的提高模型的泛化能力。代码已开源,核心代码只有9行(evaluate_DC.py中的第10-19行)。我们的方法搭配最简单的线性分类器便可以达到非常高的1-shot分类性能。实验结果如图:
我们分布估计的可视化如图:
总结
在本工作中我们思考了少样本学习和多样本学习的核心差距,并提出通过分布矫正(估计)的方式弥合这种差距。在该工作的后续期刊拓展版本中我们从generalization error bound的角度为‘基于数据分布估计的少样本学习’这一类方法建立了理论框架,并证明了当数据分布足够准确时,少样本学习和多样本学习的泛化误差等价。
后台回复关键词【入群】
加入卖萌屋NLP/IR/Rec与求职讨论群
后台回复关键词【顶会】
获取ACL、CIKM等各大顶会论文集!
ICLR2021 Oral |9行代码提高少样本学习泛化能力相关推荐
- 9行代码提高少样本学习泛化能力! ICLR2021 Oral,代码已开源
本文转载自知乎,已获作者授权转载. 链接:https://zhuanlan.zhihu.com/p/344531704 介绍一篇我们刚刚发表在ICLR2021 Oral上的一篇少样本学习工作,简单有效 ...
- 利用一个样本估计类别数据分布,9行代码提高少样本学习泛化能力
© 作者|杨朔 学校|悉尼科技大学博士生 研究方向|少样本学习,噪音标签学习 介绍一篇我们刚刚发表在 ICLR 2021 Oral 上的一篇少样本学习工作,简单有效. 论文标题: Free Lunch ...
- 9 行代码提高少样本学习泛化能力,代码已开源
点击上方"视学算法",选择加"星标"或"置顶" 重磅干货,第一时间送达 转自 | 新智元 来源 | 知乎 作者 | 杨朔 本文介绍一篇最新发 ...
- 姚班代有才人出:清华本科生用“最简单的形式”,大幅提高少样本学习性能...
鱼羊 十三 发自 凹非寺 量子位 报道 | 公众号 QbitA 仅仅根据元学习(Meta-Learning)的基线,就彻底打败了所有"花里胡哨"的改进方法. 就是这些看似简单,又容 ...
- 少样本学习原理快速入门,并翻译《Free Lunch for Few-Shot Learning: Distribution Calibration》
ICLR2021 Oral<Free Lunch for Few-Shot Learning: Distribution Calibration> 利用一个样本估计类别数据分布 9行代码提 ...
- 加了元学习之后,少样本学习竟然可以变得这么简单!
文 | Rukawa_Y 编 | Sheryc_王苏,小轶 去年年初 GPT-3 的论文在 arxiv 上出现,论文名为 "Language Models are Few-Shot Lear ...
- CV Code | 本周新出计算机视觉开源代码汇总(含目标跟踪、语义分割、姿态跟踪、少样本学习等)...
点击我爱计算机视觉标星,更快获取CVML新技术 刚刚过去的一周出现了很多很实用.有意思.很神奇的CV代码. 比如大家期待的SiamRPN++算法,官方终于要开源了. 阿里MNN成为移动端网络部署的新选 ...
- 少样本学习新突破!创新奇智入选ECCV 2020 Oral论文
点击上方"机器学习与生成对抗网络",关注"星标" 获取有趣.好玩的前沿干货! 转自 创新奇智 近日,创新奇智有关少样本学习(Few-shot Learning) ...
- 悟道·文汇详解:少样本学习等近十个数据集取得第一
智源导读:预训练模型如今已经成为深度学习研究中的一种主流范式,智源研究院认为「深度学习已经从『大炼模型』步入到『练大模型』的阶段」.基于此种考虑,由智源研究院牵头,汇聚清华.北大.中科院.人大等高校院 ...
最新文章
- Chrome浏览器禁止缓存
- SRS前需求双向追溯解决方法
- 1042 字符统计 (20 分)(c语言)
- ogre3D学习基础14 -- 雾化效果与天空面,天空盒,天空穹
- css3 制作平滑过度动画
- React Native 蓝牙4.0 BLE开发
- hadoop伪分布式配置修改配置文件的时候无法保存(没有权限保存)
- linux手机用什么购物支付,商城系统的微信支付应该如何配置?
- 四:Jquery-animate
- 概率图模型(PGM) —— 贝叶斯网络(Bayesian Network)
- 混沌数学之CircuitChaotic(二维离散电路混沌系统)
- Python小数整数输出
- 关系型数据库之MySQL8——由内而外的深化全面学习
- X线、CT、B超、核磁共振区别
- 【UE4从零开始 083】体积光照贴图
- CMMI:OPM--对模型做DMAIC
- Install TensorFlow 2 for Windows 10
- 从经典到深度学习的数据补全
- 使用SceneKit编写VR全景播放器
- 关于java中类的说法不正确的是_下面关于类的说法,不正确的是( ) 。_学小易找答案...
热门文章
- GHOSTXP_SP3电脑公司快速安装机版V2013
- Linux文件系统十问
- 手机调试python的软件_Appium+Python(ios真机移动端App H5混合自动化实战测试)
- python图像下采样_[Python图像处理]十二.图像向下取样和向上取样
- ValueError: check_hostname requires server_hostname的解决办法
- springmvcget中文乱码_解决SpringMVC Controller 接收页面传递的中文参数出现乱码的问题...
- pycharm profile对函数调用效率进行测试
- python web开发 Bootstrap框架基础
- LeetCode 1859. 将句子排序
- LeetCode 1697. 检查边长度限制的路径是否存在(排序+并查集)