图像分类任务 要点参考

  1. 模型选择

服务器部署:ResNet_vd、Res2Net_vd、DenseNet、Xception
精度尽可能地高,对模型存储大小或者预测速度的要求不是很高; 移动端部署:MobileNetV3、GhostNet;

  1. 参数初始化

ImageNet-1k训练得到的预训练模型进行初始化(目标数据集不是很大) 自己手动设计的网络:
(1) Xavier初始化,针对Sigmoid函数提出的
(2) MSRA初始化, 使用较多RELU激活函数时

  1. 网络参数冗余

(1) 剪枝: 相对不重要的权值剔除,然后再重新对网络进行微调
(2) 模型量化: 浮点计算转成低比特定点计算的技术,如8比特、4比特等
(3) 知识蒸馏: 使用教师模型(teacher model)去指导学生模型(student model)学习特定任务

  1. 目标检测、图像分割、关键点检测等任务中选择分类模型作为骨干网络

(1) 在不考虑速度的情况下 ResNet50_vd_ssld, Res2Net200_vd_26w_4s_ssld
(2) 对图像分辨率的要求比较高,HRNet, HRNet_W18_C_ssld、HRNet_W48_C_ssld

  1. 模型收敛效果很差原因

(1) 检查数据标注是否正确
(2) 调整一下学习率过大(训练震荡)或者过小(收敛太慢)
(3) 数据量太大,选择的模型太小
(4) 数据预处理的过程中是否使用了归一化,如果没有使用归一化操作,收敛速度可能会比较慢

  1. 优化器选择(目的是为了让损失函数尽可能的小)

(1) 推荐 SGD,初始学习率设置得当并且迭代轮数充足情况下,可以获得更高的准确率
(2) 自适应学习率的优化器如Adam、RMSProp, 收敛速度往往比较快,但是最终的收敛精度会稍差一些.

  1. 学习率下降策略

(1) piecewise_decay(阶梯式下降学习率)
(2) polynomial_decay(多项式下降)
(3) exponential_decay(指数下降)
(4) cosine_decay(余弦下降),无需调整超参数,鲁棒性也比较高

  1. 选择合适的batch size

根据实际的模型大小和显存情况,可以将学习率设置为0.1k,batch_size设置为256k

  1. 数据增广方法

(1) 图像变换类 AutoAugment和RandAugment
(2) 图像裁剪类 CutOut、RandErasing、HideAndSeek和GridMask
(3) 图像混叠类 Mixup和Cutmix
(4) 遮挡情况, CutOut、RandErasing、HideAndSeek和GridMask等
(5) 色彩变换情况比较复杂的情况下,考虑使用AutoAugment或者RandAugment的数据增广策略
(6) Mixup和Cutmix

在这里插入图片描述

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值