卷积核组
<img src="images/kernel_group.png">
我们把这样 7 卷积核放在一起就是卷积核组,我们现在第一个卷积核看起,这个卷积核应该是高斯偏导核,用于检测水平的边,前 6 卷积核是用于检测不同方向的边,而最后一个用于检测图片上是否有圆形图案。
<img src="images/kernel_detect_circle.png">
<img src="images/kernel_detect_hline.png">
基于卷积核组的图像表示
- 设计卷积核组
- 利用卷积核组对图像进行卷积操作获取对应的特征响应图组
- 利用特征响应图的某种统计信息来表示图像中的纹理
<img src="images/kernel_grp_presentation.png">
那么我们是如何用卷积核提取图案信息来表示图像呢,首先我们用卷积核组每一个卷积核去扫描图片得到对应响应图,卷积核下方对应的图,然后将这个响应图用一个向量来表示,也就是将图片矩阵展平,如大小的响应图展平就是 10000 维的向量
,然后在将这些向量组合就得到基于卷积核组的图像表示。
-
表示第一个特征图展开的向量
-
表示第 1 个特征图上第 n 个位置的响应值
纹理分类任务
接下来介绍一种更简单表示方式,因为基元位置与分类关系不大,也就是对分类没有什么影响。所以我们在用纹理表示图片没有必要记录位置信息。
- 基元位置无关
- 关注出现了哪种基元对应的纹理以及基元出现的频率
好基于上面内容,我们可以用每一个响应图所有值平均值的组合来表示图像
<img src="images/kernel_grp_presentation_2.png">
第
个特征响应图的均值
卷积核组设计
每一个卷积核描述一种结构。
- 卷积核类型(边缘、条形以及点状)
- 卷积核尺度(3-6个尺度)
- 卷积核方向(6个角度)
<img src="./images/cn_001.jpeg">
卷积层
- 特征响应图组深度等于卷积核的个数
- 不同响应特征图反映了输入图像对不同卷积核响应的结果
- 同一个特征响应图上不同位置的值表示输入图像上不同位置对同一卷积核的响应结果
卷积核步长
- F 卷积核尺寸
- S 卷积核步长
- P 填充数量
池化层
-
对每一个通道单独操作,对每一个特征响应图独立进行,降低特征响应图组中每一个特征响应的宽度和高度,减少后续卷积层的参数的数量。
-
n 表示图像像素数量
-
m 表示卷积像素
-
K 表示卷积的数量
因为在进行反向传播时需要保证前向计算结果要保存在显存内。通常图像尺寸好处还有同时增加卷积核视野范围。 -
减少运算量
-
增加卷积核大小
池化层(下采样)

不改变特征图的数量,
- 最大池化: 有点类似非极大值抑制
- 平均池化
池化层属性
- 池化窗口
- 池化步长
有时候图中局部内容与其他部分图像关系并不大,图中人与环境关系并不大,还有在人脸的图像中,眼睛局部的图像和远处的头发关系并不大,所以我们可以根据特征将图像划分。正式因为图像的区域性,做一个筛检,将全连接转换为局部连接。当我们才有局部连接后,参数会大大减少。还拿 的图像,一下层神经元还是
神经元,但是局部连接范围为
这样就是
从数据可以看减少 100 倍。
每次循环会不会增加 filter map 深度
25 特性会得到 25 feature map
下一个 25 feature map 还是的到 25 feature map 而不是 25 ^ 2 feature map
Fattern
这是展平层,
网友评论