一、参数解析

[net]
batch=64 # number of images pushed with a forward pass through the network
subdivisions=8 # 源码中的图片数量int imgs = net.batch * net.subdivisions * ngpus,按subdivisions大小分批进行训练
height=416 # height of input image
width=416 # width of input image
channels=3 # channel of input image
momentum=0.9 # CNN-梯度下降法中一种常用的加速技术
decay=0.0005 # CNN-防止过拟合 # 对于每次迭代训练,YOLOv2会基于角度(angle),饱和度(saturation),曝光(exposure),色调(hue)产生新的训练图片
angle=0 # 图片角度变化,单位为度,假如angle=5,就是生成新图片的时候随机旋转-5~5度
saturation = 1.5 # 饱和度变化大小,1到1.5倍
exposure = 1.5 # 曝光变化大小,1到1.5倍
hue=.1 # 色调变化范围,-0.1到0.1 learning_rate=0.0001 # 学习率
max_batches = 45000 # 最大迭代次数
policy=steps # 调整学习率的policy:CONSTANT, STEP, EXP, POLY,STEPS, SIG, RANDOM
steps=100,25000,35000 # 根据batch_num调整学习率,若steps=100,25000,35000,则在迭代100次,25000次,35000次时学习率发生变化,该参数与policy中的steps对应
scales=10,.1,.1 # 相对于当前学习率的变化比率,累计相乘,与steps中的参数个数保持一致 [convolutional]
batch_normalize=1 # 是否做BN-batch_normalize
filters=32
size=3
stride=1
pad=1
activation=leaky
# 激活函数-activation 包括logistic,loggy,relu,elu,relie,plse,hardtan,lhtan,linear,ramp,leaky,tanh,stair. [maxpool]
size=2
stride=2 [convolutional]
batch_normalize=1
filters=64
size=3
stride=1
pad=1
activation=leaky [maxpool]
size=2
stride=2 [convolutional]
batch_normalize=1
filters=128
size=3
stride=1
pad=1
activation=leaky [convolutional]
batch_normalize=1
filters=64
size=1
stride=1
pad=1
activation=leaky [convolutional]
batch_normalize=1
filters=128
size=3
stride=1
pad=1
activation=leaky [maxpool]
size=2
stride=2 [convolutional]
batch_normalize=1
filters=256
size=3
stride=1
pad=1
activation=leaky [convolutional]
batch_normalize=1
filters=128
size=1
stride=1
pad=1
activation=leaky [convolutional]
batch_normalize=1
filters=256
size=3
stride=1
pad=1
activation=leaky [maxpool]
size=2
stride=2 [convolutional]
batch_normalize=1
filters=512
size=3
stride=1
pad=1
activation=leaky [convolutional]
batch_normalize=1
filters=256
size=1
stride=1
pad=1
activation=leaky [convolutional]
batch_normalize=1
filters=512
size=3
stride=1
pad=1
activation=leaky [convolutional]
batch_normalize=1
filters=256
size=1
stride=1
pad=1
activation=leaky [convolutional]
batch_normalize=1
filters=512
size=3
stride=1
pad=1
activation=leaky [maxpool]
size=2
stride=2 [convolutional]
batch_normalize=1
filters=1024
size=3
stride=1
pad=1
activation=leaky [convolutional]
batch_normalize=1
filters=512
size=1
stride=1
pad=1
activation=leaky [convolutional]
batch_normalize=1
filters=1024
size=3
stride=1
pad=1
activation=leaky [convolutional]
batch_normalize=1
filters=512
size=1
stride=1
pad=1
activation=leaky [convolutional]
batch_normalize=1
filters=1024
size=3
stride=1
pad=1
activation=leaky ####### [convolutional]
batch_normalize=1
size=3
stride=1
pad=1
filters=1024
activation=leaky [convolutional]
batch_normalize=1
size=3
stride=1
pad=1
filters=1024
activation=leaky # the route layer is to bring finer grained features in from earlier in the network
[route]
layers=-9 # the reorg layer is to make these features match the feature map size at the later layer;
# The end feature map is 13x13, the feature map from earlier is 26x26x512.
# The reorg layer maps the 26x26x512 feature map onto a 13x13x2048 feature map so that it can be concate_nated with the feature maps at 13x13 resolution.
[reorg]
stride=2 [route]
layers=-1,-3 [convolutional]
batch_normalize=1
size=3
stride=1
pad=1
filters=1024
activation=leaky [convolutional]
size=1
stride=1
pad=1
filters=125
activation=linear [region]
# anchors: 预测框的初始宽高,第一个是w,第二个是h,总数量是num*2.
# YOLOv2作者说anchors是使用K-MEANS获得,其实就是计算出哪种类型的框比较多,可以增加收敛速度,如果不设置anchors,默认是0.5.
anchors = 1.08,1.19, 3.42,4.41, 6.63,11.38, 9.42,5.11, 16.62,10.52
bias_match=1 # 如果为1,计算best iou时,预测宽高强制与anchors一致
classes=20 # 类别数量
coords=4 # BoundingBox的tx,ty,tw,th,tx与ty是相对于左上角的grid,同时是当前grid的比例,tw与th是宽度与高度取对数
num=5 # 每个grid预测的BoundingBox个数
softmax=1 # 如果为1,使用softmax
jitter=.2 # 利用数据抖动产生更多数据抑制过拟合.YOLOv2中使用的是crop,filp,以及net层的angle,flip是随机的,crop就是jitter的参数,tiny-yolo-voc.cfg中jitter=.2,就是在0~0.2中进行crop.
rescore=1 # 决定使用哪种方式计算IOU的误差,为1时,使用当前best iou计算,为0时,使用1计算 # *_scale是YOLOv1论文中cost function的权重,哪一个更大,每一次更新权重的时候,对应方面的权重更新相对比重更大
object_scale=5
noobject_scale=1
class_scale=1
coord_scale=1 absolute=1
thresh = .6 # 决定是否需要计算IOU误差的参数,大于thresh,IOU误差不会夹在cost function中
random=0 # 如果为1每次迭代图片大小随机从320到608,步长为32,如果为0,每次训练大小与输入大小一致

二、训练log中各参数的意义

Region Avg IOU:平均的IOU,代表预测的bounding box和ground truth的交集与并集之比,期望该值趋近于1。
Class:是标注物体的概率,期望该值趋近于1.
Obj:期望该值趋近于1.
No Obj:期望该值越来越小但不为零.
Avg Recall:期望该值趋近1
avg:平均损失,期望该值趋近于0

mAP定义及相关概念

mAP: mean Average Precision, 即各类别AP的平均值
    AP: PR曲线下面积,后文会详细讲解
    PR曲线: Precision-Recall曲线
    Precision: TP / (TP + FP)
    Recall: TP / (TP + FN)
    TP: IoU>0.5的检测框数量(同一Ground Truth只计算一次)
    FP: IoU<=0.5的检测框,或者是检测到同一个GT的多余检测框的数量
    FN: 没有检测到的GT的数量

转自:
---------------------  
作者:_John_Tian_  yolo-voc.2.0.cfg 参数解析
来源:CSDN  
原文:https://blog.csdn.net/tianzhaixing2013/article/details/79269275 
版权声明:本文为博主原创文章,转载请附上博文链接!

yolov2-tiny-voc.cfg 参数解析的更多相关文章

  1. Zookeeper + Hadoop2.6 集群HA + spark1.6完整搭建与所有参数解析

    废话就不多说了,直接开始啦~ 安装环境变量: 使用linx下的解压软件,解压找到里面的install 或者 ls 运行这个进行安装 yum install gcc yum install gcc-c+ ...

  2. Hi3559AV100 NNIE开发(4)mobilefacenet.cfg参数配置挖坑解决与SVP_NNIE_Cnn实现分析

    前面随笔给出了NNIE开发的基本知识,下面几篇随笔将着重于Mobilefacenet NNIE开发,实现mobilefacenet.wk的chip版本,并在Hi3559AV100上实现mobilefa ...

  3. 从零搭建Pytorch模型教程(四)编写训练过程--参数解析

    ​  前言 训练过程主要是指编写train.py文件,其中包括参数的解析.训练日志的配置.设置随机数种子.classdataset的初始化.网络的初始化.学习率的设置.损失函数的设置.优化方式的设置. ...

  4. 写个C#命令行参数解析的小工具

    最近测试工作做的比较多因此时常要创建一些控制台类型的应用程序.因为程序有不同的参数开关,需要在程序启动的时候通过命令行来给程序传递各种开关和参数.直接操作args有些不方便,所以就写了个解析参数的小工 ...

  5. Python--命令行参数解析Demo

    写没有操作界面的程序时,最讨厌的就是参数解析问题,尤其是很多参数那种,下面是一个小Demo,拿出来与各位分享: # -*- coding:utf8 -*- import os import datet ...

  6. Node基础:url查询参数解析之querystring

    模块概述 在nodejs中,提供了querystring这个模块,用来做url查询参数的解析,使用非常简单. 模块总共有四个方法,绝大部分时,我们只会用到 .parse(). .stringify() ...

  7. argparse - 命令行选项与参数解析(转)

    argparse - 命令行选项与参数解析(译)Mar 30, 2013 原文:argparse – Command line option and argument parsing 译者:young ...

  8. 一步一步自定义SpringMVC参数解析器

    随心所欲,自定义参数解析器绑定数据. 题图:from Zoommy 干货 SpringMVC解析器用于解析request请求参数并绑定数据到Controller的入参上. 自定义一个参数解析器需要实现 ...

  9. /proc/sys/ 下内核参数解析

    http://blog.itpub.net/15480802/viewspace-753819/ http://blog.itpub.net/15480802/viewspace-753757/ ht ...

随机推荐

  1. SMBv1 is not installed by default in Windows 10 Fall Creators Update 2017 and Windows Server, Semi-annual Channel

    windows 10 rs3 release enable SMBv1 windows 10 rs3 release file sharing https://support.microsoft.co ...

  2. phpstorm 注释模板

    /** * Created by ${PRODUCT_NAME}. * User: ${USER} * Date: ${DATE} * Time: ${TIME} */

  3. bat脚本的写法

    当你每次都要输入相同的命令时,可以把这么多命令存为一个批处理,从此以后,只要运行这个批处理,就相当于打了几行.几十行命令.下面以Nginx服务的停止脚本为例写一个bat批处理文件: 1.新建nginx ...

  4. webpack4.x相关笔记整理

    概念 Webpack是一个模块打包机,它可以将我们项目中的所有js.图片.css等资源,根据其入口文件的依赖关系,打包成一个能被浏览器识别的js文件.能够帮助前端开发将打包的过程更智能化和自动化. W ...

  5. Java关于struts2框架

    今天研究了一下struts2框架,我不太喜欢理论的东西,我研究框架更喜欢打断点一步步跟着去看实现的过程.

  6. BZOJ2671 Calc(莫比乌斯反演)

    两个多月之前写的题,今天因为看到一道非常相似的题就翻出来了,发现完全不会,没救. 感觉这个题其实第一步是最难想到的,也是最重要的. 设d=gcd(a,b).那么a=yd,b=xd,且gcd(x,y)= ...

  7. Leetcode 268.缺失数字 By Python

    给定一个包含 0, 1, 2, ..., n 中 n 个数的序列,找出 0 .. n 中没有出现在序列中的那个数. 示例 1: 输入: [3,0,1] 输出: 2 示例 2: 输入: [9,6,4,2 ...

  8. 自学Zabbix3.12.4-动作Action-Operation配置

    点击返回:自学Zabbix之路 点击返回:自学Zabbix4.0之路 点击返回:自学zabbix集锦 3.12.4 自学Zabbix3.12.4-动作Action-Operation配置 1. 概述 ...

  9. android 开发中 sdk 无法更新

    现在用到android 的多个版本适配 , 换了个新环境 , 重新配置了android 的开发环境,哪想到遇到了很多小问题.  今天又遇到了 android sdk manager 无法更新的问题.  ...

  10. luogu4182 [USACO18JAN] Lifeguards P (单调队列优化dp)

    显然可以先把被覆盖掉的区间去掉,然后排个序,左.右端点就都是单调的 设f[i][j]表示前i个区间中删掉j个,而且钦定i不能删的最大覆盖长度 (如果不钦定,就要有一个删掉的状态,那我无法确定前面的到底 ...