darknet win10 vs编译 与训练

环境:windows10+ cuda10.0+ vs2015community编译 opencv4.5

1,安装opencv

解压官网压缩包即可,配置环境变量

2,安装visual studio

只选c++编译功能即可

给vs配置opencv, opencv4以上的版本只有opencv2,可只配这个不配opencv,debug选d.lib,release选.lib

配置opencv参考如下:

https://www.cnblogs.com/profession/p/10112315.html

https://blog.csdn.net/zhaojinzhi1992/article/details/108259296

最后需要修改一个lib可以一劳永逸,具体是什么忘了

3,安装cuda(最好先安装vs之后再安装cuda)

cudnn不要复制文件夹,直接复制相应文件到对应cuda文件夹下

4,vs打开darknet进行编译,x64,release

darknet网址https://github.com/AlexeyAB/darknet

生成darknet.exe文件

5,制作数据集

6, cmd或者powershell运行

cmd cd到dakenet build后的路径下,执行训练或者检测或者其他命令

cfg 参数说明

参考https://www.cnblogs.com/zhangmingcheng/p/10874589.html

batch=64             一批训练样本的样本数量,每batch个样本更新一次参数

subdivisions=8           batch/subdivisions作为一次性送入训练器的样本数量,如果内存不够大,将batch分割为subdivisions个子batch

                                     Subdivisions越大,可以减轻显卡压力(分组数目越多,每组样本数量则会更少,显卡压力也会相应减少)

                                   batch=64,sub=16表示训练的过 程中将一次性加载64张图片进内存,然后分8次完成前向传播,意思是每次4张,前向传播的循环过程中累加loss求平均,待64张图片都完成前向传播后,再一次性后传更新参数

decay=0.0005                权重衰减正则项,防止过拟合,正则项往往有重要意义

angle=0                         通过旋转角度来生成更多训练样本

saturation = 1.5        通过调整饱和度来生成更多训练样本

exposure = 1.5            通过调整曝光量来生成更多训练样本

hue=.1                           通过调整色调来生成更多训练样本

min_crop=128
max_crop=448
               max_crop/min_crop: 输入图的最小边需要在[min_crop,max_crop]区间内,如果输入和这个不符合,则通过缩放使之符合。另外有一对参数max_ratio/min_ratio和一对参数作用是一样的

burn_in=1000                在迭代次数小于burn_in时,其学习率的更新有一种方式,大于burn_in时,才采用policy的更新方式

max_batches = 500200      训练达到max_batches后停止学习,多个batches

policy=steps     这个是学习率调整的策略,有policy:constant, steps, exp, poly, step, sig, RANDOM,constant等方式

Steps和scales相互一一对应

steps=40000,45000       下面这两个参数steps和scale是设置学习率的变化,比如迭代到40000次时,学习率衰减十倍。45000次迭代时,学习率又会在前一个学习率的基础上衰减十倍。根据batch_num调整学习率               

scales=,.1,.1            学习率变化的比例,累计相乘

 

损失函数由网络最后[cost]定义,一共有六种损失函数类型

SSE, MASKED, L1, SEG, SMOOTH,WGAN 小写   默认采用 SSE

 

命令行

 

darknet.exe classifier(detector) train(test)(valid) 绝对路径\xx.data 绝对路径\xx.cfg

后缀

多块GPU       -gpus 0,1,2,3

输出图片,一般用在vali和test         -show_imgs

-clear 重新开始训练

-map detect使用。计算map

-topk 计算准确率

 

 

训练次数一般选择    (训练次数*batchsize)/训练样本数 == 30

burn_in一般选择训练2-5轮

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值