• 深度学习——卷积层+填充和步幅(笔记)


    一 卷积层

    1.了解二维交叉相关:具体做法是 对应数字 相乘后相加

     Output具体的运算过程:

     

    2.二维卷积层 *

    ①输入X:    (输入高为h,宽为w的矩阵)  如3*3

    卷积核W:  

    ③偏差bR

    ④输出Y的大小:(-+1)-+1)

    Y=X*W+b

    (W和b是可学习的参数)

     3.【举例】二维图片经过不同的卷积核得到的图像:

     经过卷积:

    ①边缘检测效果:边缘高亮出来

     ②锐化

    ③ 高斯模糊

     [神经网络可以学到一些卷积核来得到我们想要的输出]

    4.一维和三维交叉相关

    ①一维:文本,语言,时序序列

    ②三维:视频,医学图像,气象地图

    【总结】

    卷积层将输入X和卷积核W进行交叉相关运算,加上偏移得到输出

    ②核矩阵W和偏移b是可学习的参数

    ③核矩阵的大小是超参数,控制局部性。

    二 卷积层的填充和步幅:控制输出大小的超参数

    一 填充

    ①输入图像(32*32)

    ②卷积核(5*5)

    每次减少的像素是【卷积核-1】:

    第1次卷积输出:32-5+1=28*28

    ③卷积核越大,输出越小

    ④形状从,卷积核  。输出的大小:(-+1)-+1)

    2.填充可以解决卷积核使输出变小

    填充是在输入的周围添加额外的行/列。可以使输出变得比以前输入的还大。

    3.填充后形状的输出:

    ①填充行和列,输出形状:

     

    ②通常取=-1,=-1,这样保证了输入和输出形状不变【填充卷积核-1】

    比如:卷积核是3,原本输出减小是2,所以填充2行。填充2行就是 上下左右各元素填充1行。

    为奇数:在上下两侧填充

    为偶数(很少用):只添加一个“角”(右侧,下侧)

    二 步幅

    1.输出的大小跟层数是线性相关的,卷积核小的情况下,想让大图变成小图

     

    ①输入大小224*224,使用卷积核5*5,需要55层卷积计算才能降到4*4

    ②这样需要大量的计算才能得到小的输出。为了得到小的输出,可以想到用大的卷积核,但在实际中通常不会太大,一般使用卷积核是5*5或者3*3.所以需要增加步幅

    2.步幅的是指 行/列 的滑动步长

    例:高度3,宽度2的步幅

    卷积计算移动示意图【先行后列:一行一行的按照宽度移动完后,在按照高度往下移动,然后在这个高度上继续一行一行的按照宽度移动】

    ①首先卷积核在“1”的位置,计算出结果0.然后在按照宽度2移动到“2”的位置计算出结果是8.

    ②按照高度3 往下移动到“3“的位置,计算结果是6。

    3.步幅的计算

    ①给定高度sh和宽度sw的步幅,输出的形状是

     ②如果=-1, =-1

     ③如果输入的高度和宽度可以被步幅整除

     

     

    【总结】

    ①填充和步幅是卷积层的超参数

    ②填充是在输入的周围额外的添加行/列,来控制输出形状的减少量

    ③步幅是每次滑动卷积核窗口时的行/列,可以成倍的减少输出形状。

     

     

  • 相关阅读:
    uni-app input设置为disable,不能点击
    跨平台音频播放库
    neo4j学习记录
    后端返回 date 时间日期格式为 UTC 格式字符串,形如 2022-08-11T10:50:31.050+00:00前端如何修改为yyyy-mm-dd
    51单片机-LED实验
    BFC以及清除浮动四种方式
    Hive小文件处理
    Linuxptp安装部署
    SQL生成自然数,日历序列 浅析
    什么样的测试/开发程序员才是牛逼的程序员?
  • 原文地址:https://blog.csdn.net/jbkjhji/article/details/128093138