机器学习——预备知识Yolov4

本章主要讲述卷积、Maxpooling、全连接、BN、激活函数等预备知识,为学习Yolov4做准备。

1.图像卷积和卷积神经网络

1.1卷积

        例如输入为一个(7,7,1)单通道图像,与(3,3,1)进行卷积,设定步长stride=1,padding=0时,将得到(5,5,1)的输出。单个点输出的卷积结果其实是点乘和相加的过程。

        若对于多层的单通道图像(7,7,3),与(3,3,3)进行卷积,设定步长stride=1,padding=0时,将各个通道对应进行卷积操作,得到3个(5,5,1)的输出,再各点相加,得到(5,5,1)的输出。

        若此时增加通道数则会得到什么样的结果呢?例如将多层的单通道图像(7,7,3),与(3,3,3,256)进行卷积,这里的256代表256个通道,即256个(3,3,3)。设定步长stride=1,padding=0时,得到输出为256个(5,5,1)的堆叠,即(5,5,256)。

1.2卷积核、步长与Padding的配合

          由上述公式,即可通过设定得到例如Yolov4中的下采样操作(f=3,p=1,s=2)。

1.3 1x1卷积的作用

         1x1卷积可以灵活的降维和升维,减少参数量和计算量;同时可以用1x1卷积替代全连接层,在Yolov4中的好处是可以除了分类信息外,又可以获得位置信息,这是相比于Yolov1和v2的改进之处。

2.Maxpooling层和全连接层

        max—pooling操作其实是在kernel_size的范围内求取最大值,若有多通道则需要cat拼接起来。

        全连接操作主要分为两步:(1)将图像特征信息reshape,例如将(3,3,5)变换为x=(3*3*5,1)=(45,1);(2)y=wx+b。这里y是神经元,举例为(4096,1),w是矩阵,根据维数可得w为(4096,45)。全连接层就是一种全局的卷积。

        VGG16卷积神经网络中就是将输入进行卷积层、全连接操作后最后得到输出。

3.Softmax

       softmax的公式为:

       也可以考虑从用sigmod函数来代替softmax,因为softmax更适用于类别互斥的情况。

4.Batch Normalization

        BN是由Google于2015年提出,这是一个深度神经网络训练的技巧,它不仅可以 加快了模型的收敛速度 ,而且更重要的是在一定程度缓解了深层网络中 梯度弥散(特征分布 较散) 的问题,从而使得训练深 层网络模型更加容易和稳定。
        BN是沿通道方向逐一计算的,假如目前有4个(608,608,3),经过变换变为4个(19,19,512),即(4,19,19,512),则从第0个至第511个通道开始循环计算均值、方差、标准差等等,并规范化后计算尺度变换和偏移量(这两个量是模型训练的参数)。均值计算的大概思路是将例如sum(4,19,19)/(4x19x19),其他各项思路同上,所以最终会得到512个均值、方差等。

5.激活函数

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值