深度学习1

几天无聊,看darknet的源码
1. 学习率
训练的时候看到输出信息没有learning rate, 进代码看看,发现 network.c 里面的get_current_rate(net) 就是获取学习率的,打印出来的rate就是lr啦

另外,训练densenet的时候,先burning_in=1000batch, 学习率由0 逐渐升为 初始的学习率

另外,net.seen 是多张张图,训练每个batch 多少找图,net.seen 就是当前batch 加载了多少张图

  1. route layer
    看densenet 里面多次用到 route layer, 就进代码看看,主要看parser.c 和route_layer.c
    我不明白作者为什么这么命名啦,不过我知道这一层是干嘛的
如果   out_h,out_w,out_c
1 conv  64,  64,   96
2. ...
3. conv  64,  64,  32
4. route -1,-3
其实就是 route 31
这一层其实就是concate层, 输出为 64,64,(96+32=128)

下面是parse_route的部分
    convolutional_layer first = net.layers[layers[0]];
    layer.out_w = first.out_w;
    layer.out_h = first.out_h;
    layer.out_c = first.out_c;
    for(i = 1; i < n; ++i){
        int index = layers[i];
        convolutional_layer next = net.layers[index];
        if(next.out_w == first.out_w && next.out_h == first.out_h){
            layer.out_c += next.out_c;
        }else{
            layer.out_h = layer.out_w = layer.out_c = 0;
        }
    }
  1. densenet
    看了最近darknet 更新了imagenet的 网络,densenet201,

这里写图片描述

  1. 网络设计
    我看了我改的resi-block, 和densenet,以及ICIP看到的ROR, 设计区别如下
    这里写图片描述

感觉这些东西,网络框架自己改改,肯定能弄出更小更好的,就是GPU不给力啊,训练一次imagenet 估计要12天

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Linux创始人LinusTorvalds有一句名言:Talk is cheap, Show me the code.(冗谈不够,放码过来!)。 代码阅读是从入门到提高的必由之路。尤其对深度学习,许多框架隐藏了神经网络底层的实现,只能在上层调包使用,对其内部原理很难认识清晰,不利于进一步优化和创新。  YOLOv3是一种基于深度学习的端到端实时目标检测方法,以速度快见长。YOLOv3的实现Darknet是使用C语言开发的轻型开源深度学习框架,依赖少,可移植性好,可以作为很好的代码阅读案例,让我们深入探究其实现原理。  本课程将解析YOLOv3的实现原理和源码,具体内容包括: YOLO目标检测原理  神经网络及Darknet的C语言实现,尤其是反向传播的梯度求解和误差计算 代码阅读工具及方法 深度学习计算的利器:BLAS和GEMM GPU的CUDA编程方法及在Darknet的应用 YOLOv3的程序流程及各层的源码解析本课程将提供注释后的Darknet的源码程序文件。  除本课程《YOLOv3目标检测:原理与源码解析》外,本人推出了有关YOLOv3目标检测的系列课程,包括:   《YOLOv3目标检测实战:训练自己的数据集》  《YOLOv3目标检测实战:交通标志识别》  《YOLOv3目标检测:原理与源码解析》  《YOLOv3目标检测:网络模型改进方法》 建议先学习课程《YOLOv3目标检测实战:训练自己的数据集》或课程《YOLOv3目标检测实战:交通标志识别》,对YOLOv3的使用方法了解以后再学习本课程。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值