此工具来源于B站搬砖王 发布,一哥只是觉得挺好用就分享给玩YOLO的朋友们,
视频中所用软件工具和模块均为原创,非破解软件。此视频演示了易语言无需任何环境,任何电脑直接加载模块(26M),即可实现GPU调用的方式。演示电脑CPU为I5-12400F,GPU为GTX3060。yolo综合工具为作者原创,免费分享给大家,
———————–训练说明———————–
batch:显存越小调越小 2.4.8.16.32.64 显存不够可减小,但会出现Nan问题(解决办法:增大batch)。
subdivisions:显存越小调越大 2.4.8.16.32.64 训练迭代包含16组,每组4张图片。
filters:3*(类别数量+5)—-自动对齐设置软件训练无需填改。
classes:类别数量—-自动对齐设置软件训练无需填改。
random:如果显存很小,将random设置为0,关闭多尺度训练。
参数说明:
-----------------------yolov3cfg解释说明----------------------- [net] ★ [xxx]开始的行表示网络的一层,其后的内容为该层的参数配置,[net]为特殊的层,配置整个网络。 # Testing # batch=1 # subdivisions=1 # Training ★ #号开头的行为注释行,在解析cfg的文件时会忽略该行。 batch=64 ★ 这儿batch与机器学习中的batch有少许差别,仅表示网络积累多少个样本后进行一次BP。 subdivisions=16 ★ 这个参数表示将一个batch的图片分sub次完成网络的前向传播。 #batch和subdivision ★ 在训练输出中,训练迭代包括8组,这些batch样本又被平均分成subdivision=8次送入网络参与训练, 以减轻内存占用的压力;batch越大,训练效果越好,subdivision越大,占用内存压力越小。 width=416 ★ 网络输入的宽width,一定要为32的倍数,否则不能加载网络,该值越大,识别效果越好。 height=416 ★ 网络输入的高height,一定要为32的倍数,否则不能加载网络,该值越大,识别效果越好。 channels=3 ★ 网络输入的通道数channels。 momentum=0.9 ★ 动量 DeepLearning1中最优化方法中的动量参数,这个值影响着梯度下降到最优值得速度。 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 ★ 训练次数达到max_batches后停止学习,一次为跑完一个batch。 policy=steps ★ 学习率调整的策略:constant, steps, exp, poly, step, sig, RANDOM,constant等方式。 scales=.1,.1 ★ steps和scale是设置学习率的变化,比如迭代到400000次时,学习率衰减十倍,45000次迭代时,学习 率又会在前一个学习率的基础上衰减十倍。 [convolutional] ★ 一层卷积层的配置说明。 batch_normalize=1 ★ 是否进行BN处理,什么是BN此处不赘述,1为是,0为不是。 filters=32 ★ 卷积核个数,也是输出通道数。 size=3 ★ 卷积核尺寸。 stride=1 ★ 卷积步长。 pad=1 ★ 卷积时是否进行0 padding,padding的个数与卷积核尺寸有关,为size/2向下取整,如3/2=1。 activation=leaky ★ 网络层激活函数。 # Downsample [convolutional] ★ 下采样层的配置说明。 batch_normalize=1 filters=64 size=3 stride=2 pad=1 activation=leaky ★ 卷积核尺寸为3*3,配合padding且步长为2时,feature map变为原来的一半大小。 [shortcut] ★ shotcut层配置说明。 from=-3 ★ 与前面的多少次进行融合,-3表示前面第三层。 activation=linear ★ 层次激活函数。 [convolutional] ★ YOLO层前面一层卷积层配置说明。 size=1 pad=1 filters=255 ★ filters=num(预测框个数)*(classes+5),5的意义是4个坐标加一个置信率,论文中的tx,ty,tw,th,c,classes为 类别数,COCO为80,num表示YOLO中每个cell预测的框的个数。