感觉流量不好啊。今天水一章。。。。

在卷积神经网络里有两个术语:

一个是卷积层,一个是池化层。今天就简单介绍一下

卷积层:简单来说就是用来做局部特征提取的。

卷积层里的计算:将卷积核和对应图像区域先做点乘再做求和,输出到多特征的图的对应位置。

最终的特征图结果为:

小tips:

1.上图中Filter左边的图像也可能是特征图。因为左边的图像也可能是从上一个卷积核输出的。

2.卷积计算的原理:就是在卷积核和输入数据的局部区域间做点积。

点乘后相加--->加权求和

输入特征图像进行卷积层后输出的计算规则:

假设输入的尺寸为i,卷积核为f,则输出的尺寸为(i-f+1)

补充:padding填充

padding的设置原则:不超过卷积核的尺寸。

卷积计算进阶:

输出尺寸:(i-f)/s+1

如果padding为p,输出尺寸变为(i+2*p-f)/s+1

多通道与单个卷积核的运算

结论

1、卷积层输出特征图的形状

2、size: 卷积核/过滤器大小,一般会选择为奇数,比如有 11 、33、5*5

      Padding: 零填充的方式

      Stride: 步长

3、torch中卷积层的API:

  1. conv=nn. Conv2d (in channels,out_channels, kernel size,stride,padding)
     
  2. 参数说明:
    in_channels:输入通道数,
    out_channels:输出通道,也可以理解为卷积核kernel的数量kernelsize:卷积核的高和宽设置,一般为3,5,7...
    stride:卷积核移动的步长
    padding:在四周加入padding的数量,默认补0

池化层(Pooling) :降低维度, 缩减模型大小,提高计算速度.

再加上stride:

2.池化的分类

最大池化和平均池化

3.池化的API

最大池化

nn.MaxPool2d(kernel_size=2, stride=2, padding=1)

平均池化

nn.AvgPool2d(kernel_size=2, stride=1, padding=0)

Logo

Agent 垂直技术社区,欢迎活跃、内容共建。

更多推荐