纠正训练和测试分辨率差异
NIPS2019《Fixing the train-test resolution discrepancy》
https://github.com/facebookresearch/FixRes.
该论文主要是研究在图像分类任务中图像分辨率对训练和测试的影响,基于以上问题作者结论:低分辨率网络输入尺寸训练在高输入尺寸测试中是有贡献的,在这里我认为出现这种现象的主要问题是初始方法和训练方法的流程化研究问题。
对于以上的问题以往研究提出一些基于更改分辨率的决思路:
将不同分辨率(不同缩放尺寸)图像输入网络学习到尺度的不变性。
FPN通过不同层维度特征网络学习图像缩放成不同分辨率进行学习。
实验流程:
1、训练阶段采用horizontal flip、random resized crop、color jittering数据增强224*224
2、微调阶段采用数据三部分:(1)测试图片先resizing后center crop(2)测试图片先resizing后random horizontal shift of the center crop,horizontal flip and color jittoring (3)训练增强的直接使用。
3、为了提高准确率作者使用了集中分类模型先集成然后平均分类预测
作者方法:
小分辨率训练、稍大微调只训练全链接层。
通过缩小训练集输入分辨率和增大测试集分辨率联合优化实现数据尺度分布相互匹配然后采用微调(fine-tuning)实现更好的准确率。
分析region of classification中randomresizedcrop随机裁剪和centercrop中心裁剪及color jittering色彩抖动实现图像分布概率优化调整。
** 测试阶段对测试和训练不均衡问题在pooling层后使用equalization操作通过标量变量(scala transformation抵消对relu激活影响)将数据分布恢复到原来逼近数据分布上时如果网络简单出现难以pooling后区分不同数据分布。
** fine-tuning在pooling层前加BN能起到数据分布纠正功能但不一定对精度有作用。
主要观察随着测试尺寸从224到288开始acc降低发现问题
实验结论:fix比advprop、noisy student效果好。
纠正训练和测试分辨率差异相关推荐
- 大样品随机双盲测试_训练和测试样品生成
大样品随机双盲测试 This post aims to explore a step-by-step approach to create a K-Nearest Neighbors Algorith ...
- BN和Dropout在训练和测试时有哪些差别?
作者丨海晨威@知乎 来源丨https://zhuanlan.zhihu.com/p/61725100 编辑丨极市平台 Batch Normalization BN,Batch Normalizatio ...
- 2.4 使用来自不同分布的数据,进行训练和测试-深度学习第三课《结构化机器学习项目》-Stanford吴恩达教授
←上一篇 ↓↑ 下一篇→ 2.3 快速搭建你的第一个系统,并进行迭代 回到目录 2.5 不匹配数据划分的偏差和误差 使用来自不同分布的数据,进行训练和测试 (Training and Testing ...
- 1.5 训练/开发/测试集划分-深度学习第三课《结构化机器学习项目》-Stanford吴恩达教授
←上一篇 ↓↑ 下一篇→ 1.4 满足和优化指标 回到目录 1.6 开发集合测试集的大小 训练/开发/测试集划分 (Train/Dev/Test Distribution) 设立训练集,开发集和测试集 ...
- 1.1 训练/开发/测试集-深度学习第二课《改善深层神经网络》-Stanford吴恩达教授
←上一篇 ↓↑ 下一篇→ 4.9 总结习题 (第一课) 回到目录 1.2 偏差/方差 训练/开发/测试集 (Train/Dev/Test Sets) 大家可能已经了解了,那么本周,我们将继续学习如何有 ...
- label y 训练集测试集x_Adversarial validation-对抗验证| 一种解决训练集与测试集分布不一致的方法...
导语: 马上就要五一了,祝全世界人民五一快乐!在这之前,想过好几个准备这些天可以完成的专题,比如Boosting系列在搞点最近几年的新玩意,或者开一个新专题,如心心念念的GNN/GCN(主要是又可以去 ...
- 深度学习的实用层面 —— 1.1 训练/开发/测试集
在配置训练.验证和测试数据集的过程中做出正确决策会在很大程度上帮助大家创建高效的神经网络. 在训练神经网络时,我们需要做出很多决策,例如神经网络分多少层,每层含有多少个隐藏单元,学习速率是多少,各层采 ...
- 吴恩达神经网络和深度学习-学习笔记-24-在不同的划分上进行训练和测试+不匹配数据划分的偏差和方差
在不同的划分上进行训练和测试 深度学习算法对训练数据的胃口很大,当你收集到足够多的带标签数据构成训练集时,算法效果最好. 这导致很多团队用尽一切方法收集数据,然后把它们堆到训练集里,让训练的数据量更大 ...
- BN和Dropout在训练和测试时的差别
Batch Normalization BN,Batch Normalization,就是在深度神经网络训练过程中使得每一层神经网络的输入保持相近的分布. BN训练和测试时的参数是一样的嘛? 对于BN ...
最新文章
- 百度开源联邦学习框架 PaddleFL:简化大规模分布式集群部署
- [转] web无插件播放RTSP摄像机方案,拒绝插件,拥抱H5!
- ML重要概念:梯度(Gradient)与梯度下降法(Gradient Descent)
- 《数据结构与算法 C语言版》—— 2.7习题
- shell脚本小技巧
- python保存为xlsb_Read XLSB File in Pandas Python
- C++工作笔记-对容器模板的初步认识
- 自动化中的PageObject思想
- Hello!SCDN
- 第115页的gtk+编程例子——最简单的进度条2附带使用Anjuta写gtk程序的步骤
- 区块链搭建联盟链及控制台安装
- [史]世界史上的6大古帝国
- 操作rabbitMQ时,误删guest账户,无法登录
- 【三十八】Python全栈之路--HTML
- 详细解读Latent Diffusion Models:原理和代码
- nslookup查询域名系统服务器,域名解析系统DNS诊断命令nslookup详解
- 前端面试JS必备基础之深浅拷贝和this指向问题@莫成尘
- Lake Shore低温探针台的晶圆安装方法
- 上证指数预测之python建模与动态时间扭曲
- 在号码池取连续号码的算法