当前位置:   article > 正文

PaddleDetection常用配置参数_paddledetection需要的数据集大小一般是多少

paddledetection需要的数据集大小一般是多少

YOLOv3为例

snapshot_iter: 2000 #建议设置为最大训练batch数除以50,即总共保存50个模型

use_fine_grained_loss: false	# 细粒度损失,在目标类别非常相近(例如任务为分辨狗的种类)的时候设为True

Max_Iters x Batch_Size = 训练集
Max_Epoch ÷ Batch_Size  = Max_Iters

使用单卡训练,将LearningRate.base_lr减小4倍至0.00025
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

修改训练轮数与学习率等参数:

  • 根据训练集数量与总batch_size大小计算epoch数,然后将epoch数换算得到训练总轮数max_itersmilestones(学习率变化界限)也是同理。原配置文件中总batch_size=2*8=16(8卡训练),训练集数量约为12万张,max_iters=90000,所以epoch数=16x90000/120000=12。在AI识虫数据集中,训练集数量约为1700,在单卡GPU上训练,max_iters=12x1700/2=10200。同理计算milestones为: [6800, 9000]。
16(batch_size) x 90000(max_iters) / 120000(训练集) = 12(epoch)

12(epoch) x 1700(训练集) / 2(batch_size) = 10200(max_iters)
  • 1
  • 2
  • 3

milestones中的参数一般是max_iters分别除以1.5和1.125得到

在使用ImageNet的预训练模型时,训练时使用1张卡,单卡batch_size=1, base_lr=0.00125,base_lr随着(batch_size * GPU卡数) 等比例变化。

1x表示训练12个epoch,1个epoch是将所有训练数据训练一轮。由于YOLO系列算法收敛比较慢,在COCO数据集上YOLO系列算法换算后约为270 epoch,PP-YOLO约380 epoch。


默认学习率是适配多GPU训练(8x GPU),若使用单GPU训练,须对应调整学习率(例如,除以8)。 计算规则表如下所示,它们是等价的,表中变化节点即为piecewise decay里的boundaries:

GPU数学习率最大轮数变化节点
20.0025720000[480000, 640000]
40.005360000[240000, 320000]
80.01180000[120000, 160000]
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/我家自动化/article/detail/510342
推荐阅读
相关标签
  

闽ICP备14008679号