常见的参数就不做介绍,重点介绍没见过的参数
batch=64
subdivisions=16 # batch/subdivisions 作为一次性送入训练器的样本数量
# 将batch分割为subdivisions个子batch
momentum=0.9 #梯度下降的动量参数
decay=0.0005 #权重衰减正则项 防止过拟合
angle=0 #通过旋转角度 数据增广
saturation = 1.5 #通过调整饱和度 数据增广
exposure = 1.5 #通过调整曝光量 数据增广
hue=.1 #通过调整色调 数据增广
learning_rate=0.001
burn_in=1000 #迭代次数小于burn_in时,其学习率的更新有一种方式
#大于burn_in时,采用policy的更新方式
max_batches = 500200
policy=steps #可选方式:constant, steps, exp, poly, step,
#sig, RANDOM,constant
activation=leaky #激活函数 linear leaky relu
[shortcut] #resnet的残差结构
from=-3 #往前数第三个层相加
#把两个c h w都相同的两个层相加成一个相同c h w的层
[convolutional]
size=1
stride=1
pad=1
filters=255 #yolo层之前的filters的计算公式
activation=linear # 255 = 3 *(5+80)每个格子预测三个框,每个框五个值以及类别
[yolo]
mask = 6,7,8 #当前层使用的anchor编号(决定用哪些anchor)
#anchor:列出所有会用到的anchor的w,h
anchors = 10,13, 16,30, 33,23, 30,61, 62,45, 59,119, 116,90, 156,198, 373,326
classes=80
num=9 #anchors总数
jitter=.3 #通过抖动增加噪声来抑制过拟合
ignore_thresh = .7 #决定是否需要计算IOU误差的参数
truth_thresh = 1
random=1 #设置为0,表示关闭多尺度训练
[route]
layers = -4[route]
layers = -1 61
route层它的参数 layers 有一个或两个值。当只有一个值时,它输出这一层通过该值索引的特征图。在我们的实验中设置为了-4,所以层级将输出路由层之前第四个层的特征图。
当参数有两个值时,它将返回由这两个值索引的拼接特征图。在我们的实验中为-1 和 61,因此该层级将输出从前一层级(-1)到第 61 层的特征图,并将它们按深度拼接。
例如 输入层1: 26*26*256 输入层2:26*26*128 则route layer 输出为:26*26*(256+128)

本文详细解析了Yolo-v3神经网络的训练参数,包括数据增强技巧、学习率策略、残差结构等关键配置,揭示了如何通过调整参数优化目标检测模型。
4万+

被折叠的 条评论
为什么被折叠?



